Skip to content

Latest commit

 

History

History
executable file
·
136 lines (115 loc) · 9.7 KB

README.md

File metadata and controls

executable file
·
136 lines (115 loc) · 9.7 KB

EXT2

This project is able to mount an EXT2 disk image file and perform some common filesystem operations.

Compiling on Debian

apt install build-essential libext2fs-dev
make && make run

Overview of a few commands

Help

Lists all commands. All commands are fully functional.

gid=0 uid=0> help
shell: ls mkdir rmdir create link unlink mkfs cat cp help cd disk inode blockbitmap inodebitmap rawblock pwd

Cat

Draws a file to screen. This works correctly with single, double, and triple indirect blocks.

INode

Shows infomation about an INode.

gid=0 uid=0> inode 1
      Size:       1024
    Blocks:          2
     Links:          7
Block[  0]:         33
Block[  1]:          0
Block[  2]:          0
Block[  3]:          0
Block[  4]:          0
Block[  5]:          0
Block[  6]:          0
Block[  7]:          0
Block[  8]:          0
Block[  9]:          0
Block[ 10]:          0
Block[ 11]:          0
Block[ 12]:          0
Block[ 13]:          0
Block[ 14]:          0
      Mode: drwxr-xr-x

INode Bitmap

Shows which INodes are used.

gid=0 uid=0> inodebitmap
      0        8        16       24       32       40       48       56
    0 ▆▇▆▇▆▇▆▇ ▆▇▆▇▆▇▆▇ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
   64 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  128 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂

Block Bitmap

Shows which blocks are used at a glance.

gid=0 uid=0> blockbitmap
      0        8        16       24       32       40       48       56
    0 ▆▇▆▇▆▇▆▇ ▆▇▆▇▆▇▆▇ ▆▇▆▇▆▇▆▇ ▆▇▆▇▆▇▆▇ ▆▇▆▇▁▂▁▂ ▁▂▁▂▆
   64 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  128 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  192 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  256 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  320 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  384 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  448 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  512 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  576 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  640 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  704 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  768 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  832 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  896 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
  960 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
 1024 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
 1088 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
 1152 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
 1216 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
 1280 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
 1344 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂
 1408 ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▂ ▁▂▁▂▁▂▁▇ ▆▇▆▇▆▇▆▇

Raw Block

Loads a block, then draws out its raw values in base 10.

gid=0 uid=0> rawblock 1

   0:        184        1440          72        1402         170           1           0           0
   8:       8192        8192         184  1587135586  1587135586      -65535      126803           1
  16: 1587135586           0           0           1           0          11         128          56
  24:          2           3   917695292  1011666672   587505342  1266331585           0           0
  32:          0           0  1953393967           0           0           0           0           0
  40:          0           0           0           0           0           0           0           0
  48:          0           0           0      327680           0           0           0           0
  56:          0           0           0  -838617390  1498404596  -719719248   566481809           1
  64:         12           0  1587135586           0           0           0           0           0
  72:          0           0           0           0           0           0           0           0
  80:          0           0           0           0           0           0           0           0
  88:          1           0           0           0           0           0          11           0
  96:          0           0           0           0           0           0           0           0
 104:          0           0           0           0           0           0           0           0
 112:          0           0           0           0           0           0           0           0
 120:          0           0           0           0           0           0           0           0
 128:          0           0           0           0           0           0           0           0
 136:          0           0           0           0           0           0           0           0
 144:          0           0           0           0           0           0           0           0
 152:          0           0           0           0           0           0           0           0
 160:          0           0           0           0           0           0           0           0
 168:          0           0           0           0           0           0           0           0
 176:          0           0           0           0           0           0           0           0
 184:          0           0           0           0           0           0           0           0
 192:          0           0           0           0           0           0           0           0
 200:          0           0           0           0           0           0           0           0
 208:          0           0           0           0           0           0           0           0
 216:          0           0           0           0           0           0           0           0
 224:          0           0           0           0           0           0           0           0
 232:          0           0           0           0           0           0           0           0
 240:          0           0           0           0           0           0           0           0
 248:          0           0           0           0           0           0           0           0