4 Kayan aiki don Sarrafa EXT2, EXT3 da Lafiyar EXT4 a cikin Linux


Tsarin fayil tsarin bayanai ne wanda ke taimakawa wajen sarrafa yadda ake adanawa da kuma dawo da bayanai akan tsarin kwamfuta. Hakanan ana iya ɗaukar tsarin fayil azaman yanki na zahiri (ko tsawaita) akan faifai. Idan ba a kiyaye shi da kyau ba kuma a kula da shi akai-akai, zai iya lalacewa ko lalacewa a cikin dogon lokaci, ta hanyoyi daban-daban.

Akwai dalilai da yawa waɗanda zasu iya sa tsarin fayil ya zama mara lafiya: rushewar tsarin, matsala na hardware ko software, manyan direbobi da shirye-shirye, kunna shi ba daidai ba, cika shi da wuce kima da bayanai da sauran ƙananan glitches.

Duk waɗannan batutuwa na iya haifar da Linux kar ya hau (ko cirewa) tsarin fayil cikin alheri, don haka yana kawo gazawar tsarin.

Bugu da ƙari, gudanar da tsarin ku tare da tsarin fayil maras kyau na iya haifar da wasu kurakurai na lokacin aiki a cikin abubuwan tsarin aiki ko a aikace-aikacen mai amfani, wanda zai iya haɓaka zuwa asarar bayanai mai tsanani. Don guje wa wahala lalacewa ko lalacewa, kuna buƙatar sanya ido kan lafiyar sa.

A cikin wannan labarin, za mu rufe kayan aikin don saka idanu da kiyaye lafiyar tsarin fayil na ext2, ext3 da ext4. Duk kayan aikin da aka bayyana anan suna buƙatar gata na tushen mai amfani, don haka yi amfani da umarnin sudo don gudanar da su.

Yadda ake Duba Bayanan Fayil na EXT2/EXT3/EXT4

dumpe2fs kayan aiki ne na layin umarni da ake amfani dashi don zubar da bayanan ext2/ext3/ext4, yana nufin yana nuna babban toshewa kuma yana toshe bayanan rukuni don tsarin fayil akan na'urar.

Kafin gudanar da dumpe2fs, tabbatar da gudanar da umarnin df -hT don sanin sunayen na'urorin tsarin fayil.

$ sudo dumpe2fs /dev/sda10
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

Kuna iya wuce alamar -b don nuna kowane tubalan da aka tanada a matsayin mara kyau a cikin tsarin fayil (babu fitarwa da ke nuna badblocks):

$ dumpe2fs -b

Duba Tsarin Fayil na EXT2/EXT3/EXT4 Don Kurakurai

Ana amfani da e2fsck don bincika tsarin fayilolin ext2/ext3/ext4 don kurakurai da fsck cak kuma zai iya gyara tsarin fayil ɗin Linux na zaɓi; ainihin ƙarshen gaba ne don kewayon masu bincika tsarin fayil (fsck.fstype misali fsck.ext3, fsck.sfx da sauransu) waɗanda aka bayar ƙarƙashin Linux.

Ka tuna cewa Linux yana gudanar da e2fack/fsck ta atomatik a boot ɗin tsarin akan ɓangarorin da aka lakafta don bincika fayil ɗin sanyi/sauransu/fstab. Ana yin wannan yawanci bayan tsarin fayil ba a cire shi da tsabta ba.

Hankali: Kar a kunna e2fsck ko fsck akan tsarin fayil ɗin da aka ɗora, koyaushe zazzage bangare kafin fara aiwatar da waɗannan kayan aikin akansa, kamar yadda aka nuna a ƙasa.

$ sudo unmount /dev/sda10
$ sudo fsck /dev/sda10

A madadin, kunna fitowar magana tare da sauya -V kuma yi amfani da -t don tantance nau'in tsarin fayil kamar haka:

$ sudo fsck -Vt ext4 /dev/sda10

Kunna tsarin Fayil na EXT2/EXT3/EXT4

Mun ambata daga farkon cewa ɗayan abubuwan da ke haifar da lalacewar tsarin fayil shine kunnawa ba daidai ba. Kuna iya amfani da mai amfani tune2fs don canza sigogi masu daidaitawa na ext2/ext3/ext4 filesystems kamar yadda aka bayyana a ƙasa.

Don ganin abubuwan da ke cikin tsarin fayil superblock, gami da ƙimar sigogin yanzu, yi amfani da zaɓin -l kamar yadda aka nuna.

$ sudo tune2fs -l /dev/sda10
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

Bayan haka, ta amfani da tutar -c, zaku iya saita adadin abubuwan hawa bayan e2fsck za a duba tsarin fayil ɗin. Wannan umarnin yana umurtar tsarin don gudanar da e2fsck akan /dev/sda10bayan kowane hawa 4.

$ sudo tune2fs -c 4 /dev/sda10

tune2fs 1.42.13 (17-May-2015)
Setting maximal mount count to 4

Hakanan zaka iya ayyana lokacin tsakanin bincika tsarin fayil guda biyu tare da zaɓin -i. Umurni mai zuwa yana saita tazara na kwanaki 2 tsakanin bincika tsarin fayil.

$ sudo tune2fs  -i  2d  /dev/sda10

tune2fs 1.42.13 (17-May-2015)
Setting interval between checks to 172800 seconds

Yanzu idan kuna gudanar da wannan umarni a ƙasa, an saita tazarar duba tsarin fayil don /dev/sda10 yanzu.

$ sudo tune2fs -l /dev/sda10
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

Don canza tsoffin sigogin aikin jarida, yi amfani da zaɓin -J. Wannan zaɓin kuma yana da ƙananan zaɓuɓɓuka: girman = girman-jarida (yana saita girman jarida), na'ura = jarida- waje (yana ƙayyade na'urar da aka adana a kanta) da wuri = wurin jarida (yana bayyana wurin da mujallar take).

Lura cewa ɗayan girman ko zaɓuɓɓukan na'ura za'a iya saita don tsarin fayil:

$ sudo tune2fs -J size=4MB /dev/sda10

A ƙarshe amma ba kalla ba, ana iya saita alamar ƙarar tsarin fayil ta amfani da zaɓin -L kamar ƙasa.

$ sudo tune2fs -L "ROOT" /dev/sda10

Gyara Fayil na EXT2/EXT3/EXT4

debugfs mai sauƙi ne, layin umarni mai ma'amala dangane da ext2/ext3/ext4 filesystems debugger. Yana ba ku damar canza sigogin tsarin fayil tare da mu'amala. Don duba ƙananan umarni ko buƙatun, rubuta \?\ .

$ sudo debugfs /dev/sda10

Ta hanyar tsoho, ya kamata a buɗe tsarin fayil ɗin a yanayin karantawa, yi amfani da tutar -w don buɗe shi a yanayin karantawa. Don buɗe ta cikin yanayin bala'i, yi amfani da zaɓin -c.

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
....

Don nuna rarrabuwar sararin samaniya kyauta, yi amfani da buƙatar freefrag, kamar haka.

debugfs: freefrag
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:  

Kuna iya bincika wasu buƙatu da yawa kamar ƙirƙira ko cire fayiloli ko kundayen adireshi, canza kundin adireshi na yanzu da ƙari, ta hanyar karanta taƙaitaccen bayanin da aka bayar kawai. Don barin debugfs, yi amfani da buƙatar q.

Wannan ke nan a yanzu! Muna da tarin labaran da ke da alaƙa a ƙarƙashin nau'i daban-daban a ƙasa, waɗanda za ku sami amfani.

  1. 12 Amfanin \df Umarni don Duba sarari Disk a Linux
  2. Pydf wani Alternative \df Umurnin Duba Amfani da Disk a Launuka Daban-daban
  3. 10 Amfani Du (Amfani da Disk) Umurni don Nemo Amfani da Fayilolin Fayiloli da kundayen adireshi

  1. 3 GUI mai Amfani da Kayayyakin Binciken Disk na tushen Linux na Tasha
  2. Yadda ake bincika ɓangarori masu ɓarna ko ɓangarorin ɓarna akan Hard Disk a Linux
  3. Yadda ake Gyarawa da Rage Rarraba Tsarin Tsarin Linux da Littattafai

Tsayawa tsarin fayil ɗin lafiya koyaushe yana haɓaka aikin tsarin Linux ɗinku gaba ɗaya. Idan kuna da wasu tambayoyi ko ƙarin tunani don raba amfani da fom ɗin sharhi a ƙasa.