4 alata za upravljanje EXT2, EXT3 i EXT4 zdravljem u Linuxu
Sistem datoteka je struktura podataka koja pomaže u kontroli načina na koji se podaci pohranjuju i preuzimaju na računarskom sistemu. Sistem datoteka se također može smatrati fizičkom (ili proširenom) particijom na disku. Ako se ne održava dobro i redovno prati, može se dugoročno oštetiti ili oštetiti, na mnogo različitih načina.
Postoji nekoliko faktora koji mogu uzrokovati da sistem datoteka postane nezdrav: rušenje sistema, kvarovi na hardveru ili softveru, pogrešni drajveri i programi, pogrešno podešavanje, preopterećenje prekomjernim podacima i druge manje greške.
Bilo koji od ovih problema može uzrokovati da Linux ne montira (ili demontažu) sistem datoteka graciozno, što dovodi do kvara sistema.
Pročitajte također: 7 načina za određivanje tipa sistema datoteka u Linuxu (Ext2, Ext3 ili Ext4)
Osim toga, pokretanje vašeg sistema sa oštećenim sistemom datoteka može dovesti do drugih grešaka u izvršavanju u komponentama operativnog sistema ili u korisničkim aplikacijama, što bi moglo eskalirati do ozbiljnog gubitka podataka. Da biste izbjegli oštećenje ili oštećenje sistema datoteka, morate paziti na njegovo zdravlje.
U ovom članku ćemo pokriti alate za praćenje i održavanje zdravlja ext2, ext3 i ext4 sistema datoteka. Svi ovdje opisani alati zahtijevaju privilegije root korisnika, stoga koristite naredbu sudo da ih pokrenete.
Kako pogledati EXT2/EXT3/EXT4 informacije o sistemu datoteka
dumpe2fs je alat komandne linije koji se koristi za dump ext2/ext3/ext4 informacija o sistemu datoteka, što znači da prikazuje super blok i blokira informacije grupe za sistem datoteka na uređaju.
Prije pokretanja dumpe2fs, obavezno pokrenite df -hT naredbu da biste znali imena uređaja sistema datoteka.
sudo dumpe2fs /dev/sda10
Sample Output
dumpe2fs 1.42.13 (17-May-2015)
Filesystem volume name:
Last mounted on: /
Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 21544960
Block count: 86154752
Reserved block count: 4307737
Free blocks: 22387732
Free inodes: 21026406
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 1003
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Sun Jul 31 16:19:36 2016
Last mount time: Mon Nov 6 10:25:28 2017
Last write time: Mon Nov 6 10:25:19 2017
Mount count: 432
Maximum mount count: -1
Last checked: Sun Jul 31 16:19:36 2016
Check interval: 0 ()
Lifetime writes: 2834 GB
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
First orphan inode: 6947324
Default directory hash: half_md4
Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup: inode blocks
Journal features: journal_incompat_revoke
Journal size: 128M
Journal length: 32768
Journal sequence: 0x00580f0c
Journal start: 12055
Možete proslijediti oznaku -b
da prikažete sve blokove koji su rezervirani kao loši u sistemu datoteka (bez izlaza ne podrazumijeva loše blokove):
dumpe2fs -b
Provjera EXT2/EXT3/EXT4 sistema datoteka na greške
e2fsck se koristi za ispitivanje ext2/ext3/ext4 sistema datoteka za greške i fsck provjere i može opciono popraviti Linux sistem datoteka; to je u osnovi front-end za niz programa za provjeru sistema datoteka (fsck.fstype na primjer fsck.ext3, fsck.sfx itd.) koji se nude pod Linuxom.
Zapamtite da Linux pokreće e2fack/fsck automatski pri pokretanju sistema na particijama koje su označene za provjeru u /etc/fstab konfiguracijskoj datoteci. Ovo se obično radi nakon što sistem datoteka nije čisto demontiran.
Pažnja: Nemojte pokretati e2fsck ili fsck na montiranim sistemima datoteka, uvijek prvo demontirajte particiju prije nego što možete pokrenuti ove alate na njemu, kao što je prikazano u nastavku.
sudo unmount /dev/sda10
sudo fsck /dev/sda10
Alternativno, omogućite opširni izlaz pomoću prekidača -V
i koristite -t
da odredite tip sistema datoteka poput ovog:
sudo fsck -Vt ext4 /dev/sda10
Podešavanje EXT2/EXT3/EXT4 sistema datoteka
Od početka smo spomenuli da je jedan od uzroka oštećenja sistema datoteka pogrešno podešavanje. Možete koristiti tune2fs uslužni program za promjenu podesivih parametara ext2/ext3/ext4 sistema datoteka kao što je objašnjeno u nastavku.
Da vidite sadržaj superbloka sistema datoteka, uključujući trenutne vrijednosti parametara, koristite opciju -l
kao što je prikazano.
sudo tune2fs -l /dev/sda10
Sample Output
tune2fs 1.42.13 (17-May-2015)
Filesystem volume name:
Last mounted on: /
Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 21544960
Block count: 86154752
Reserved block count: 4307737
Free blocks: 22387732
Free inodes: 21026406
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 1003
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Sun Jul 31 16:19:36 2016
Last mount time: Mon Nov 6 10:25:28 2017
Last write time: Mon Nov 6 10:25:19 2017
Mount count: 432
Maximum mount count: -1
Last checked: Sun Jul 31 16:19:36 2016
Check interval: 0 ()
Lifetime writes: 2834 GB
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
First orphan inode: 6947324
Default directory hash: half_md4
Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup: inode blocks
Zatim, koristeći -c
zastavicu, možete postaviti broj montiranja nakon kojih će sistem datoteka biti provjeren od strane e2fsck. Ova komanda daje instrukcije sistemu da pokrene e2fsck protiv /dev/sda10
nakon svaka 4 montiranja.
sudo tune2fs -c 4 /dev/sda10
tune2fs 1.42.13 (17-May-2015)
Setting maximal mount count to 4
Također možete definirati vrijeme između dvije provjere sistema datoteka pomoću opcije -i
. Sljedeća komanda postavlja interval od 2 dana između provjera sistema datoteka.
sudo tune2fs -i 2d /dev/sda10
tune2fs 1.42.13 (17-May-2015)
Setting interval between checks to 172800 seconds
Sada ako pokrenete ovu naredbu ispod, interval provjere sistema datoteka za /dev/sda10
je sada postavljen.
sudo tune2fs -l /dev/sda10
Sample Output
Filesystem created: Sun Jul 31 16:19:36 2016
Last mount time: Mon Nov 6 10:25:28 2017
Last write time: Mon Nov 6 13:49:50 2017
Mount count: 432
Maximum mount count: 4
Last checked: Sun Jul 31 16:19:36 2016
Check interval: 172800 (2 days)
Next check after: Tue Aug 2 16:19:36 2016
Lifetime writes: 2834 GB
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
First orphan inode: 6947324
Default directory hash: half_md4
Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805
Journal backup: inode blocks
Za promjenu zadanih parametara dnevnika koristite opciju -J
. Ova opcija također ima podopcije: size=journal-size (postavlja veličinu dnevnika), device=external-journal (određuje uređaj na kojem je pohranjen) i location=journal-location (definira lokaciju dnevnika).
Imajte na umu da se samo jedna od opcija veličine ili uređaja može postaviti za sistem datoteka:
sudo tune2fs -J size=4MB /dev/sda10
Na kraju, ali ne i najmanje važno, oznaka volumena sistema datoteka može se postaviti pomoću opcije -L
kao u nastavku.
sudo tune2fs -L "ROOT" /dev/sda10
Otklanjanje grešaka u EXT2/EXT3/EXT4 sistemima datoteka
debugfs je jednostavan, interaktivni debager baziran na komandnoj liniji ext2/ext3/ext4. Omogućava vam da interaktivno mijenjate parametre datotečnog sistema. Za pregled podnaredbi ili zahtjeva upišite "?"
.
sudo debugfs /dev/sda10
Podrazumevano, sistem datoteka treba da se otvori u režimu čitanja i pisanja, koristite oznaku -w
da biste ga otvorili u režimu čitanja i pisanja. Da biste ga otvorili u katastrofalnom načinu rada, koristite opciju -c
.
Sample Output
debugfs 1.42.13 (17-May-2015)
debugfs: ?
Available debugfs requests:
show_debugfs_params, params
Show debugfs parameters
open_filesys, open Open a filesystem
close_filesys, close Close the filesystem
freefrag, e2freefrag Report free space fragmentation
feature, features Set/print superblock features
dirty_filesys, dirty Mark the filesystem as dirty
init_filesys Initialize a filesystem (DESTROYS DATA)
show_super_stats, stats Show superblock statistics
ncheck Do inode->name translation
icheck Do block->inode translation
change_root_directory, chroot
....
Za prikaz fragmentacije slobodnog prostora, koristite zahtjev freefrag, na sličan način.
debugfs: freefrag
Sample Output
Device: /dev/sda10
Blocksize: 4096 bytes
Total blocks: 86154752
Free blocks: 22387732 (26.0%)
Min. free extent: 4 KB
Max. free extent: 2064256 KB
Avg. free extent: 2664 KB
Num. free extent: 33625
HISTOGRAM OF FREE EXTENT SIZES:
Extent Size Range : Free extents Free Blocks Percent
4K... 8K- : 4883 4883 0.02%
8K... 16K- : 4029 9357 0.04%
16K... 32K- : 3172 15824 0.07%
32K... 64K- : 2523 27916 0.12%
64K... 128K- : 2041 45142 0.20%
128K... 256K- : 2088 95442 0.43%
256K... 512K- : 2462 218526 0.98%
512K... 1024K- : 3175 571055 2.55%
1M... 2M- : 4551 1609188 7.19%
2M... 4M- : 2870 1942177 8.68%
4M... 8M- : 1065 1448374 6.47%
8M... 16M- : 364 891633 3.98%
16M... 32M- : 194 984448 4.40%
32M... 64M- : 86 873181 3.90%
64M... 128M- : 77 1733629 7.74%
128M... 256M- : 11 490445 2.19%
256M... 512M- : 10 889448 3.97%
512M... 1024M- : 2 343904 1.54%
1G... 2G- : 22 10217801 45.64%
debugfs:
Možete istražiti mnoge druge zahtjeve kao što su kreiranje ili uklanjanje datoteka ili direktorija, promjena trenutnog radnog direktorija i još mnogo toga, jednostavnim čitanjem kratkog opisa. Da biste napustili debugfs, koristite zahtjev q
.
To je sve za sada! Imamo kolekciju srodnih članaka u različitim kategorijama ispod, koji će vam biti korisni.
Informacije o korištenju sistema datoteka:
- 12 korisnih “df” naredbi za provjeru prostora na disku u Linuxu
- Pydf alternativna “df” naredba za provjeru korištenja diska u različitim bojama
- 10 korisnih naredbi du (Upotreba diska) za pronalaženje korištenja diska za datoteke i direktorije
Provjerite zdravlje diska ili particije:
- 3 Korisni GUI i terminalski bazirani Linux alati za skeniranje diskova
- Kako provjeriti loše sektore ili loše blokove na tvrdom disku u Linuxu
- Kako popraviti i defragmentirati Linux sistemske particije i direktorije
Održavanje zdravog sistema datoteka uvijek poboljšava ukupne performanse vašeg Linux sistema. Ako imate bilo kakvih pitanja ili dodatnih misli koje možete podijeliti, koristite obrazac za komentare ispod.