Scroll to navigation

DEBUGFS(8) System Manager's Manual DEBUGFS(8)

NAZWA

debugfs - debugger systemu plików ext2/ext3/ext4

SKŁADNIA

debugfs [ -DVwcin ] [ -b rozmiar-bloku ] [ -s superblok ] [ -f plik-komend ] [ -R komenda] [ -d urządzenie-źródła-danych ] [ -z plik-zapasowy ] [ urządzenie ]

OPIS

Program debugfs jest debuggerem systemów plików. Można go używać do sprawdzenia i zmiany stanu systemu plików typu ext2, ext3 lub ext4.

Urządzenie jest urządzeniem blokowym (np. /dev/sdXX) lub plikiem zawierającym system plików.

OPCJE

Określa, że system plików powinien być otwarty w trybie odczyt-zapis (read-write). Bez tej opcji system plików otwierany jest w trybie tylko-do-odczytu (read-only).
Wyłącza weryfikację sumy kontrolnej metadanych. Powinno się jej używać tylko wówczas, gdy jest się przekonanym o poprawności metadanych, pomimo odmiennych komunikatów e2fsprogs.
Powoduje, że system plików powinien być otwarty w trybie katastrofalnym (catastrophic mode), gdzie i-węzeł oraz mapy bitowe grup nie są początkowo odczytywane. Ta opcja może być przydatna dla znacznie uszkodzonych systemów plików, lecz powoduje ona ich otwarcie w trybie tylko do odczytu.
Powoduje, że urządzenie reprezentuje obraz ext2 utworzony przez program e2image. Ponieważ obraz ext2 zawiera jedynie superblok, deskryptor grupy bloków, blok i mapy bitowe alokacji i-węzłów oraz tablicę i-węzłów, wiele komend debugfs nie będzie działało poprawnie. Ostrzeżenie: nie ma żadnych bezpiecznych sprawdzeń, dlatego debugfs może zawieść podczas prób wykonania takich komend jak ls, dump, itd. debugfs jest debuggerem. Posiada szorstkie krawędzie!
W użyciu z opcją -i, określa urządzenie-źródła-danych, które powinno być użyte do odczytu bloków nieodnalezionych w pliku obrazu ext2. Obejmuje to dane, katalogi i bloki niebezpośrednie.
Powoduje użycie podanego rozmiaru bloku dla systemu plików (w bajtach) zamiast, tak jak normalnie, wykrywać odpowiedni rozmiar. Opcja ta powinna być rzadko używana, głównie w przypadku systemów plików o ekstremalnie wysokim stopniu uszkodzenia.
Powoduje odczytanie superbloku z podanego numeru bloku zamiast z domyślnego (położonego w odstępie 1024 bajtów od początku systemu plików). Jeżeli poda się opcję -s, konieczne jest również podanie rozmiaru bloku systemu plików, przy użyciu opcji -b. Opcja ta powinna być rzadko używana, głównie w przypadku systemów plików o ekstremalnie wysokim stopniu uszkodzenia.
Powoduje, że debugfs odczytuje komendy z pliku komend i wykonuje je. Po zakończeniu wykonywania tych komend debugfs kończy pracę.
Powoduje, że debugfs otwiera urządzenie używając bezpośredniego wejścia/wyjścia, pomijając bufory. Proszę zauważyć, że niektóre linuksowe urządzenia, przede wszystkim szkielet mapujący urządzenia (device mapper) nie obsługują bezpośredniego wejścia/wyjścia (w chwili pisania tego tekstu).
Powoduje wykonanie pojedynczej komendy (żądania - request), i zakończenie pracy.
Wyświetla wersję programu debugfs i kończy pracę.
Before overwriting a file system block, write the old contents of the block to an undo file. This undo file can be used with e2undo(8) to restore the old contents of the file system should something go wrong. If the empty string is passed as the undo_file argument, the undo file will be written to a file named debugfs-device.e2undo in the directory specified via the E2FSPROGS_UNDO_DIR environment variable.

OSTRZEŻENIE: Plik zapasowy nie pomoże w przypadku utraty zasilania lub zawieszenia systemu.

OKREŚLANIE PLIKÓW

Wiele komend debugfs pobiera określ-pliku jako argument określający i-węzeł (w przeciwieństwie do nazwy ścieżkowej) systemu plików, aktualnie otwartego przez debugfs. Argument określ-pliku może być podany w dwu postaciach. Pierwszą jest numer i-węzła ujęty w nawiasy trójkątne, np. <2>. Drugą postać stanowi nazwa ścieżkowa; jeśli jest ona poprzedzona ukośnikiem ('/'), to będzie interpretowana względem katalogu głównego (root) systemu plików aktualnie otwartego przez debugfs. Jeśli nie, to interpretowana będzie względem bieżącego katalogu roboczego, jaki jest w ustawiony w danym momencie w debugfs. Można go zmienić posługując się komendą debugfs o nazwie cd.

POLECENIA

debugfs jest debuggerem interaktywnym. Rozumie sporo komend.

Wypisuje bloki używane przez i-węzeł określ-pliku na standardowe wyjście.
Print or set the physical block number corresponding to the logical block number logical_block in the inode filespec. If the -a flag is specified, try to allocate a block if necessary.
Dump the file system block given by block_num in hex and ASCII format to the console. If the -f option is specified, the block number is relative to the start of the given filespec. If the -x option is specified, the block is interpreted as an extended attribute block and printed to show the structure of extended attribute data structures.
Zrzuca zawartość i-węzła określ-pliku na standardowe wyjście.
Zmienia bieżący katalog roboczy na określ-pliku.
Zmień katalog główny (root) na katalog określ-pliku.
Zamyka aktualnie otwarty system plików. Jeżeli poda się opcję -a, to wypisywane są wszystkie zmiany i deskryptory grup bloków w odniesieniu do wszystkich zapasowych superbloków, a nie tylko w stosunku do głównego.
Czyści zawartość i-węzła określ-pliku.
Copy the contents of the inode structure in source_inode and use it to overwrite the inode structure at destination_inode.
Przeszukuje katalog określ-pliku szukając nazwy-pliku.
Mark the file system as dirty, so that the superblocks will be written on exit. Additionally, clear the superblock's valid flag, or set it if -clean is specified.
Zrzuca zawartość i-węzła określ-pliku do pliku wyjściowego plik-wyjściowy. Jeśli podano opcję -p, to ustawia informację o właścicielu, grupie i prawach plik-wyjściowy, tak jak dla określ-pliku.
Display the multiple-mount protection (mmp) field values. If mmp_block is specified then verify and dump the MMP values from the given block number, otherwise use the s_mmp_block field in the superblock to locate and use the existing MMP block.
Oblicza hasz katalogu nazwa-pliku. Algorytmem haszowania podanym z -h może być: legacy, half_md4 lub tea. Ziarno haszowania podane z -s musi być w formacie UUID.
Zrzuca drzewo ekstentów i-węzła określ-pliku. Flaga -n spowoduje, że dump_extents wyświetli jedynie wewnętrzne węzły w drzewie ekstentów. Flaga -l spowoduje, że opcja wyświetli jedynie liście drzewa ekstentów.
Proszę zauważyć, że długość i zakres bloków do ostatniego ekstenta w węźle wewnętrznym są przybliżone przez funkcje biblioteki ekstentów i nie są przechowywane w strukturze danych systemu plików. Wyświetlane wartości nie muszą być więc dokładne i nie oznaczają wystąpienia problemu lub uszkodzenia w systemie plików.
Dump unused blocks which contain non-null bytes.
Retrieve the value of the extended attribute attr_name in the file filespec and write it either to stdout or to outfile.
List the extended attributes associated with the file filespec to standard output.
Set the value of the extended attribute attr_name in the file filespec to the string value attr_value or read it from infile.
Remove the extended attribute attr_name from the file filespec.
Rozwija katalog określ-pliku.
Allocate and map uninitialized blocks into filespec between logical block start_block and end_block, inclusive. If end_block is not supplied, this function maps until it runs out of free disk blocks or the maximum file size is reached. Existing mappings are left alone.
Ustawia (lub czyści - z minusem) różne cechy systemu plików w superbloku, a następnie wyświetla aktualny stan cech systemu plików.
Wypisuje liczbę ciągłych ekstentów w określ-pliku. Jeśli określ-pliku jest katalogiem, a nie podano opcji -d, to filefrag wypisze liczbę ciągłych ekstentów każdego pliku w katalogu. Opcja -v spowoduje, że filefrag wypisze tabelaryczną listę ciągłych ekstentów pliku. Opcja -r oznacza rekurencyjne wypisanie katalogu.
Znajduje pierwsze liczba wolnych bloków, poczynając od cel i alokuje je. Dostępne również jako ffb.
Znajduje wolny i-węzeł i alokuje go. Jeśli go podano, to argument katalog określa numer i-węzła katalogu, w którym ma zostać umieszczony i-węzeł. Drugi opcjonalny argument tryb określa prawa nowego i-węzła (jeżeli w trybie mode ustawiony jest bit katalogu, to procedura alokacji będzie działać odmiennie). Dostępne również jako ffi.
Zaznacza blok o numerze blok jako niezaalokowany. Jeżeli podany zostanie opcjonalny argument liczba, to liczba bloków zaczynając od bloku o numerze blok zostanie zaznaczona jako niezaalokowana.
Wypisuje fragmentację wolnej przestrzeni w aktualnie otwartym systemie plików. Jeśli poda się opcję -c, to polecenie freefrag wypisze liczbę wolnych części o rozmiarze część_kb. Rozmiar części musi być potęgą dwójki i musi być większy od rozmiaru bloku systemu plików.
Zwalnia i-węzeł podany przez określ-pliku. Jeśli poda się numer, to czyści również numer-1 i-węzłów po podanym i-węźle.
Display quota information for given quota type (user, group, or project) and ID.
Pokazuje listę poleceń rozumianych przez debugfs.
Zrzuca indeksowany za pomocą haszy katalog określ-pliku, pokazując jego strukturę drzewa.
Pokazuje zestawienie i-węzłów używających jednego lub więcej bloków określonych w wierszu poleceń.
Print the contents of the inode data structure in hex and ASCII format. The -b option causes the command to only dump the contents of the i_blocks array. The -e option causes the command to only dump the contents of the extra inode space, which is used to store in-line extended attributes. The -x option causes the command to dump the extra inode space interpreted and extended attributes. This is useful to debug corrupted inodes containing extended attributes.
Wypisuje położenie struktury danych i-węzła (w tabeli i-węzłów) określ-pliku.
Tworzy system plików ext2 na urządzeniu urządzenie z rozmiarem urządzenia rozmiar-bloku. Proszę zauważyć, że nie inicjuje to w pełni wszystkich struktur danych; aby to zrobić, proszę wykorzystać program mke2fs(8). Ta komenda jest tylko wywołaniem funkcji z biblioteki niskopoziomowej, która ustawia superblok i deskryptory bloków.
Close the open journal.
Opens the journal for reading and writing. Journal checksumming can be enabled by supplying -c; checksum formats 2 and 3 can be selected with the -v option. An external journal can be loaded from ext_jnl.
Replay all transactions in the open journal.
Write a transaction to the open journal. The list of blocks to write should be supplied as a comma-separated list in blocks; the blocks themselves should be readable from file. A list of blocks to revoke can be supplied as a comma-separated list in revoke. By default, a commit record is written at the end; the -c switch writes an uncommitted transaction.
Zwalnia (dealokuje) i-węzeł określ-pliku i jego bloki. Proszę zauważyć, że nie usuwa to żadnych wpisów katalogu (jeśli istnieją) dotyczących tego i-węzła. Aby usunąć (ang. unlink) plik, proszę zapoznać się z poleceniem rm(1).
Zmienia bieżący katalog roboczy debugfs na katalog na pierwotnym (native) systemie plików.
Display quota information for given quota type (user, group, or project).
Tworzy dowiązanie zwykłe (twarde) o nazwie plik-docelowy, do pliku określ-pliku. Proszę zauważyć, że nie dostosowuje to odpowiednio licznika odwołań w i-węźle.
Zrzuca zawartość dziennika ext3. Domyślnie zrzuca, i-węzeł dziennika brany z superbloku. Można przesłonić ten wybór za pomocą opcji -i, która zrzuca dziennik z wewnętrznego i-węzła podanego jako określ-pliku. Zwykły plik zawierający dane dziennika można podać za pomocą opcji -f. Opcja -s wykorzystuje informacje zapasowe z superbloku, do zlokalizowania dziennika.
The -S option causes logdump to print the contents of the journal superblock.
Opcja -a powoduje, że logdump wypisuje zawartość wszystkich bloków deskryptora. Z opcją -b logdump wypisuje wszystkie rekordy dziennika, które odnoszą się do podanego bloku. Opcja -c wypisuje zawartość wszystkich bloków z danymi, wybranymi przez opcje -a i -b.
The -O option causes logdump to display old (checkpointed) journal entries. This can be used to try to track down journal problems even after the journal has been replayed.
Print a listing of the files in the directory filespec. The -c flag causes directory block checksums (if present) to be displayed. The -d flag will list deleted entries in the directory. The -l flag will list files using a more verbose format. The -p flag will list the files in a format which is more easily parsable by scripts, as well as making it more clear when there are spaces or other non-printing characters at the end of filenames. The -r flag will force the printing of the filename, even if it is encrypted.
Wypisuje usunięte i-węzły, opcjonalnie ograniczone do usuniętych limit sekund temu. Dostępne również jako lsdel.
Polecenie było przydatne do usuwania przypadkowo skasowanych plików z systemu plików ext2. Niestety nie jest przydatne do tego celu w systemach plików ext3 ani ext4, ponieważ bloki danych i-węzłów nie są już dostępne po zwolnieniu i-węzła.
Zmienia zawartość struktury i-węzła o nazwie określ-pliku. Dostępne również jako mi.
Tworzy katalog.
Tworzy plik specjalny urządzenia (potoku nazwanego, urządzenia znakowego lub blokowego). Jeżeli tworzone ma być urządzenie znakowe lub blokowe, to musi zostać podany główny (major) i poboczny (minor) numer urządzenia.
Za pomocą żądanej listy numerów i-węzłów wypisuje listę nazw ścieżek do tych i-węzłów. Flaga -c włącza sprawdzania informacji o typie pliku we wpisie katalogu, upewniając się, że pasuje on do typu i-węzła.
Otwiera system plików do edycji. Flaga -f wymusza otwarcie systemu plików nawet wtedy gdy posiada on nieznane lub niekompatybilne cechy, które normalnie zapobiegły by otwarciu. Opcja -e powoduje, że system plików jest otwarty w trybie wyłączności. Opcje -b -c, -d, -i, -s, -w i -D zachowują się tak samo jak te z debugfs.
Usuwa bloki w i-węźle, poczynając od bloku-początkowego do bloku-końcowego. Jeśli nie poda się bloku-końcowego, to ta komenda zadziała jak polecenie obcięcia (ang. truncate), tzn. dealokowane będą wszystkie bloki od bloku-początkowego, aż do końca pliku.
Tworzy dowiązanie symboliczne.
Pokazuje bieżący katalog roboczy.
Kończy pracę debugfs.
Zrzuca rekurencyjnie katalog lub wiele katalogów wraz z zawartością (włączając plik, dowiązania symboliczne i inne katalogi) w miejsce_docelowe, które powinno być istniejącym katalogiem na pierwotnym systemie plików.
Usuwa (ang. unlink) ścieżkę. Jeśli spowoduje to, że i-węzeł wskazywany przez ścieżka nie będzie posiadał innych odwołań, to dealokuje plik. Komenda ta działa jak funkcja systemowa unlink().
Usuwa katalog określ-pliku.
Zaznacza blok o numerze blok jako zaalokowany. Jeżeli podany zostanie opcjonalny argument liczba, to wtedy liczba bloków zaczynając od bloku o numerze blok zostanie zaznaczona jako zaalokowana.
Modyfikuje deskryptor grupy bloków określony przez num-dgb tak, że pole deskryptora pole będzie miało wartość wartość. Dostępne również jako set_bg.
Set current time in seconds since Unix epoch to use when setting file system fields.
Oznacza i-węzeł określ-pliku, jako użyty w mapie bitów i-węzła. Jeśli poda się liczbę, to oznaczanych jest również liczba-1 i-węzłów po podanym i-węźle.
Modyfikuje i-węzeł określony przez określ-pliku tak, że pole pole na wartość wartość. Lista prawidłowych pól i-węzła, które mogą być ustawione tą komendą, może zostać wyświetlona za pomocą: set_inode_field -l. Dostępne również jako sif.
Modyfikuje dane ochrony przed wielokrotnym montowaniem (ang. multiple-mount protection - MMP) tak, że pole mmp pole, ma wartość wartość. Lista poprawnych pól MMP, które mogą być ustawione tą komendą, może zostać wyświetlona za pomocą: set_mmp_value -l. Dostępne również jako smmp.
Ustawia pole superbloku pole na wartość wartość. Wszystkie prawidłowe pola superbloku, które mogą być ustawione tą komendą, mogą zostać wyświetlone za pomocą: set_super_value -l. Dostępne również jako ssv.
Display debugfs parameters such as information about currently opened file system.
Wyświetla zawartość superbloku i deskryptorów grup bloków. Jeżeli podana jest flaga -h, wypisywana jest tylko zawartość superbloku. Dostępne również jako stats.
Wyświetla zawartość struktury i-węzła o nazwie określ-pliku.
Display file system features supported by this version of debugfs.
Sprawdza, czy blok o numerze blok jest zaznaczony jako zaalokowany w mapie bitowej bloku. Jeżeli podany jest opcjonalny argument liczba, wtedy zostanie sprawdzona liczba bloków zaczynając od bloku o numerze blok.
Sprawdza, czy i-węzeł określ-pliku jest zaznaczony jako zaalokowany w mapie bitowej bloku.
Odwołuje usunięcie podanego numeru i-węzła (który musi być ujęty w nawiasy trójkątne), dzięki czemu jego bloki są oznaczane jako w użyciu i opcjonalnie dowiązuje odzyskany i-węzeł do podanej ścieżki. Po użyciu komendy undel powinno się zawsze uruchomić e2fsck, w celu odzyskania usuniętych plików.
Proszę zauważyć, że jeśli odzyskuje się dużą liczbę usuniętych plików, to dowiązywanie i-węzła do katalogu może wymagać rozwinięcia katalogu, co może spowodować alokację bloku, który był wcześniej użyty przez jeden z plików do odzyskania. Jest więc bezpieczniej odzyskać wszystkie i-węzły bez podawania ścieżki docelowej, a następnie, w kolejnym przebiegu, użyć komendy link, która dowiązuje i-węzeł do ścieżki docelowej, lub użyć e2fsck do sprawdzenia systemu plików i dowiązania wszystkich odzyskanych i-węzłów do katalogu lost+found.
Usuwa dowiązanie do i-węzła, określone przez ścieżkę. Proszę zauważyć, że nie dostosowuje to odpowiednio licznika odwołań w i-węźle.
Kopiuje zawartość pliku-źródłowego do nowo tworzonego pliku w systemie plików, o nazwie plik-wyjściowy.
Overwrite the block specified by block_num with zero (NUL) bytes, or if -p is given use the byte specified by pattern. If -f is given then block_num is relative to the start of the file given by filespec. The -o and -l options limit the range of bytes to zap to the specified offset and length relative to the start of the block.
Zamienia porcje bitów fizycznego numeru-bloku. Jeśli podano -f, numer bloku jest blokiem logicznym liczonym od początku określ-pliku.

ZMIENNE ŚRODOWISKOWE

Program debugfs zawsze przesyła w potoku wyjście niektórych komend przez program stronicujący. Są to następujące komendy: show_super_stats (stats), list_directory (ls), show_inode_info (stat), list_deleted_inodes (lsdel) i htree_dump. Można podać określony program stronicujący za pomocą zmiennej środowiskowej DEBUGFS_PAGER lub, jeśli nie jest ustawiona, PAGER.
Proszę zauważyć, że ponieważ program stronicujący jest używany zawsze, to less(1) nie jest szczególnie dobry, ponieważ czyści ekran przed wyświetleniem wyjścia komendy i czyści ekran, po wyjściu programu stronicującego. Wielu użytkowników preferuje używanie less(1) do większości zastosowań i jest to powód, dla którego dostępna jest zmienna środowiskowa DEBUGFS_PAGER, która przesłania ogólniejszą zmienną środowiskową PAGER.

AUTOR

debugfs zostało napisane przez Theodore Ts'o <tytso@mit.edu>.

ZOBACZ TAKŻE

dumpe2fs(8), tune2fs(8), e2fsck(8), mke2fs(8), ext4(5)

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Wojtek Kotwica <wkotwica@post.pl> i Michał Kułach <michal.kulach@gmail.com>

Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.

Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej manpages-pl-list@lists.sourceforge.net.

grudzień 2021 E2fsprogs wersja 1.46.5