Eu tive uma imagem de partição ext4 despejada: mmcblk0p5 Eu posso montar a imagem, mas é sempre somente leitura. Então chequei o dmesg, tem algo assim:
EXT4-fs error (device loop0): ext4_init_inode_table:1340: comm ext4lazyinit: Something is wrong with group 0: used itable blocks: 467; itable unused count: 0
Então, eu corro um e2fsck -ccy mmcblk0p5
e2fsck 1.42.9 (4-Feb-2014)
mmcblk0p5: recovering journal
Checking for bad blocks (non-destructive read-write test)
Testing with random pattern: done
mmcblk0p5: Updating bad block inode.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
mmcblk0p5: ***** FILE SYSTEM WAS MODIFIED *****
mmcblk0p5: 1623/44802 files (0.0% non-contiguous), 138293/179194 blocks
Parece não encontrar nenhum erro, mas apenas limpar o log de erros. Se eu montá-lo novamente, o mesmo erro aparecerá. Como posso consertar este sistema de arquivos? Aqui está o resultado de tune2fs após montar / desmontar o arquivo de imagem.
tune2fs 1.42.9 (4-Feb-2014)
Filesystem volume name: <none>
Last mounted on: /system
Filesystem UUID: 57f8f4bc-abf4-0000-675f-946fc0f9f25b
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal resize_inode filetype needs_recovery extent sparse_super large_file
Filesystem flags: unsigned_directory_hash
Default mount options: (none)
Filesystem state: clean with errors
Errors behavior: Remount read-only
Filesystem OS type: Linux
Inode count: 44802
Block count: 179194
Reserved block count: 0
Free blocks: 40901
Free inodes: 43179
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 47
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 7467
Inode blocks per group: 467
Last mount time: Tue Oct 25 18:13:08 2016
Last write time: Tue Oct 25 18:13:10 2016
Mount count: 1
Maximum mount count: -1
Last checked: Tue Oct 25 18:09:34 2016
Check interval: 0 (<none>)
Lifetime writes: 94 MB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
Default directory hash: tea
Journal backup: inode blocks
FS Error count: 2
First error time: Tue Oct 25 18:13:10 2016
First error function: ext4_init_inode_table
First error line #: 1340
First error inode #: 0
First error block #: 0
Last error time: Tue Oct 25 18:13:10 2016
Last error function: ext4_init_inode_table
Last error line #: 1383
Last error inode #: 0
Last error block #: 0
Se eu fizer tune2fs -e continue mmcblk0p5
. Em seguida, monte e crie algumas pastas nele. o e2fsck vai dar algum erro:
e2fsck -ccky mmcblk0p5
e2fsck 1.42.9 (4-Feb-2014)
Checking for bad blocks (non-destructive read-write test)
Testing with random pattern: done
mmcblk0p5: Updating bad block inode.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Inode bitmap differences: -29845 +29869
Fix? yes
mmcblk0p5: ***** FILE SYSTEM WAS MODIFIED *****
mmcblk0p5: 1624/44802 files (0.0% non-contiguous), 138294/179194 blocks
Mas esse erro não pode ser corrigido, está sempre lá. Alguma idéia de como consertar isso?
Tags ext4