Ext4magic-Directory





Ext4magic: Inode - Directory - Journal - Installation - Zeit-Optionen - Tricks&Tipps - Manpage - Expert-Mode



Die Anzeige der Verzeichnisse

Die Verzeichnisdaten werden angezeigt zusammen mit der Inode, wenn die Inode ein Verzeichnis ist, und sie nicht als gelöscht markiert ist. als Beispiel hier ein aktuelles Rootverzeichnis eines Filesystemimages,(die Inodeausgaben sind wurden entfernt)

ROBI@LINUX:/tmp/test1 # ext4magic /home/rob/test/test.iso -I 2
.....
        2  d  755 (2)      0      0    4096 24-Apr-2010 11:16 .
        2  d  755 (2)      0      0    4096 24-Apr-2010 11:16 ..
       11  d  700 (2)      0      0   16384 10-Dec-2009 19:36 lost+found
       15  l  777 (7)      0      0      11 12-Apr-2010 19:20 link1
       16  l  777 (7)      0      0      11 12-Apr-2010 19:20 link2
       17  l  777 (7)      0      0      11 12-Apr-2010 19:20 link3
       18  l  777 (7)      0      0      14 12-Apr-2010 19:20 link4
       19  _  644 (1)      0      0   524288000 24-Apr-2010 11:17 file3.sparse
<      20> _  644 (1)      0      0       0 23-Apr-2010 20:50 file1.sparse
<   57350> d  755 (2)      0      0       0 10-Dec-2009 20:36 test8
       12  _  644 (1)      0      0    1601 10-Dec-2009 20:30 find
       13  _  644 (1)      0      0    7410 10-Dec-2009 20:35 find_ls
       14  _  644 (1)      0      0   29361 10-Dec-2009 20:35 find_stat

die Bedeutung der Spalten

Es ist also oben ein Wurzelverzeichnis zu sehen, das in dem sich einige Dateien und Links befinden, sowie ein gelöschtes Verzeichnis und eine gelöschte Datei. Diese Verzeichnis ist ein aktuelles Verzeichnis. (im Befehlsaufruf sind keine Optionen enthalten die das Journal öffnen) Es sollte hier erkannt werden, es sind nicht nur die reinen Verzeichnisdaten die hier angezeigt werde, es müssen um diese Anzeige zu erhalten schon die Inodes gesucht und gefunden worden sein. Nur dort können zB. die Zeit die Größe und die Zugriffsrechte gefunden werden.


Die gleiche Inode mit einer Journaloption bringt folgende Ausgabe. (Inodedaten entfernt)

ROBI@LINUX:/tmp/test1 # ext4magic /home/rob/test/test.iso -I 2 -T | sed -ne '/^ *2/,/^$/p'
        2  d  755 (2)      0      0    4096 10-Dec-2009 20:30 .                           
        2  d  755 (2)      0      0    4096 10-Dec-2009 20:30 ..                          
       11  d  700 (2)      0      0   16384 10-Dec-2009 19:36 lost+found                  
     8193  d  755 (2)      0      0    4096 10-Dec-2009 19:40 test1                       
    16385  d  755 (2)      0      0       0 10-Dec-2009 20:36 test2                       
    24577  d  755 (2)      0      0       0 10-Dec-2009 20:36 test3                       
    40961  d  755 (2)      0      0       0 10-Dec-2009 20:36 test4                       
    57345  d  755 (2)      0      0       0 10-Dec-2009 20:36 test5                       
    49153  d  755 (2)      0      0    4096 10-Dec-2009 20:18 test6                       
    16386  d  755 (2)      0      0       0 10-Dec-2009 20:36 test7                       
    57350  d  755 (2)      0      0       0 10-Dec-2009 20:36 test8                       
       12  _  644 (1)      0      0    1601 10-Dec-2009 20:30 find                        

        2  d  755 (2)      0      0    4096 10-Dec-2009 20:31 .
        2  d  755 (2)      0      0    4096 10-Dec-2009 20:31 ..
       11  d  700 (2)      0      0   16384 10-Dec-2009 19:36 lost+found
     8193  d  755 (2)      0      0    4096 10-Dec-2009 19:40 test1     
    16385  d  755 (2)      0      0       0 10-Dec-2009 20:36 test2     
    24577  d  755 (2)      0      0       0 10-Dec-2009 20:36 test3     
    40961  d  755 (2)      0      0       0 10-Dec-2009 20:36 test4     
    57345  d  755 (2)      0      0       0 10-Dec-2009 20:36 test5     
    49153  d  755 (2)      0      0       0 10-Dec-2009 20:36 test6     
    16386  d  755 (2)      0      0       0 10-Dec-2009 20:36 test7
    57350  d  755 (2)      0      0       0 10-Dec-2009 20:36 test8
       12  _  644 (1)      0      0    1601 10-Dec-2009 20:30 find
       13  _  644 (1)      0      0    7331 10-Dec-2009 20:31 find_ls

        2  d  755 (2)      0      0    4096 10-Dec-2009 20:31 .
        2  d  755 (2)      0      0    4096 10-Dec-2009 20:31 ..
       11  d  700 (2)      0      0   16384 10-Dec-2009 19:36 lost+found
     8193  d  755 (2)      0      0    4096 10-Dec-2009 19:40 test1
    16385  d  755 (2)      0      0       0 10-Dec-2009 20:36 test2
    24577  d  755 (2)      0      0       0 10-Dec-2009 20:36 test3
    40961  d  755 (2)      0      0       0 10-Dec-2009 20:36 test4
    57345  d  755 (2)      0      0       0 10-Dec-2009 20:36 test5
    49153  d  755 (2)      0      0       0 10-Dec-2009 20:36 test6
    16386  d  755 (2)      0      0       0 10-Dec-2009 20:36 test7
    57350  d  755 (2)      0      0       0 10-Dec-2009 20:36 test8
       12  _  644 (1)      0      0    1601 10-Dec-2009 20:30 find
       13  _  644 (1)      0      0    7410 10-Dec-2009 20:35 find_ls
       14  _  644 (1)      0      0   29361 10-Dec-2009 20:31 find_stat

        2  d  755 (2)      0      0    4096 10-Dec-2009 20:36 .
        2  d  755 (2)      0      0    4096 10-Dec-2009 20:36 ..
       11  d  700 (2)      0      0   16384 10-Dec-2009 19:36 lost+found
<    8193> d  755 (2)      0      0       0 10-Dec-2009 20:36 test1
<   16385> d  755 (2)      0      0       0 10-Dec-2009 20:36 test2
<   24577> d  755 (2)      0      0       0 10-Dec-2009 20:36 test3
<   40961> d  755 (2)      0      0       0 10-Dec-2009 20:36 test4
<   57345> d  755 (2)      0      0       0 10-Dec-2009 20:36 test5
<   49153> d  755 (2)      0      0       0 10-Dec-2009 20:36 test6
<   16386> d  755 (2)      0      0       0 10-Dec-2009 20:36 test7
<   57350> d  755 (2)      0      0       0 10-Dec-2009 20:36 test8
       12  _  644 (1)      0      0    1601 10-Dec-2009 20:30 find
       13  _  644 (1)      0      0    7410 10-Dec-2009 20:35 find_ls
       14  _  644 (1)      0      0   29361 10-Dec-2009 20:35 find_stat

        2  d  755 (2)      0      0    4096 24-Apr-2010 11:16 .
        2  d  755 (2)      0      0    4096 24-Apr-2010 11:16 ..
       11  d  700 (2)      0      0   16384 10-Dec-2009 19:36 lost+found
       15  l  777 (7)      0      0      11 12-Apr-2010 19:20 link1
       16  l  777 (7)      0      0      11 12-Apr-2010 19:20 link2
       17  l  777 (7)      0      0      11 12-Apr-2010 19:20 link3
       18  l  777 (7)      0      0      14 12-Apr-2010 19:20 link4
       19  _  644 (1)      0      0   524288000 24-Apr-2010 11:17 file3.sparse
<      20> _  644 (1)      0      0       0 23-Apr-2010 20:50 file1.sparse
<   57350> d  755 (2)      0      0       0 10-Dec-2009 20:36 test8
       12  _  644 (1)      0      0    1601 10-Dec-2009 20:30 find
       13  _  644 (1)      0      0    7410 10-Dec-2009 20:35 find_ls
       14  _  644 (1)      0      0   29361 10-Dec-2009 20:35 find_stat

Zu sehen hier ein Stück der Versionsgeschichte dieses Verzeichnisses. Hier hat es zB einmal Verzeichnisse "test1/" bis "test7/" gegeben, von denen wir im aktuellen Verzeichnis keine Spur mehr finden. Und selbst von diesen dort schon lange gelöschten Verzeichnissen sind noch die Daten erhalten

ROBI@LINUX:/tmp/test1 # ext4magic /home/rob/test/test.iso -I 8193 -T | sed -ne '/^ *8193/,/^$/p'
     8193  d  755 (2)      0      0    4096 10-Dec-2009 19:40 .
        2  d  755 (2)      0      0    4096 10-Dec-2009 20:36 ..
     8194  _  777 (1)   1000    100       6 10-Dec-2009 19:40 file1
<    8195> _  777 (1)   1000    100       6 10-Dec-2009 19:40 file2
     8196  _  777 (1)   1000    100       6 10-Dec-2009 19:40 file3
     8197  _  777 (1)   1000    100       6 10-Dec-2009 19:40 file4

     8193  d  755 (2)      0      0    4096 10-Dec-2009 20:36 .
        2  d  755 (2)      0      0    4096 10-Dec-2009 20:36 ..
     8194  _  777 (1)   1000    100       0 10-Dec-2009 20:36 file1
<    8195> _  777 (1)   1000    100       6 10-Dec-2009 19:40 file2
     8196  _  777 (1)   1000    100       0 10-Dec-2009 20:36 file3
     8197  _  777 (1)   1000    100       0 10-Dec-2009 20:36 file4


Ab der Version 0.2.2 wurde die Auswertung der Verzeichnisdatenblöcke geändert. Dadurch ist es in möglich, das sich die Ausgabe von größeren Verzeichnissen je nach verwendeter Option stark unterscheidet. Mit eine Journaloption werden die internen Funktionen zur Auswertung der Verzeichnisdatenblöcke von ext4magic genutzt, während ohne Journaloption die Funktionen von libext2fs verwendet werden. Der Unterschied entsteht dadurch, da die internen Funktionen Blöcke überspringt in denen sich HTREE Daten befinden. In diesen Blöcken stehen nur gelöschte redundante Einträge, welche nicht selten total veraltet sind bei der Namensauflösung zu Problemen führen und beim recovern oftmals falsche Dateinamen ergeben. Im Zweifelsfall ist die Ausgabe der Verzeichnisdaten mit einer Journaloption "die Richtigere"





Ext4magic: Inode - Directory - Journal - Installation - Zeit-Optionen - Tricks&Tipps - Manpage - Expert-Mode