CodeGym /Kurslar /Docker SELF /Fayl sistemini yoxlama və düzəltmə: fsck komandaları

Fayl sistemini yoxlama və düzəltmə: fsck komandaları

Docker SELF
Səviyyə , Dərs
Mövcuddur

Fayl sistemini yoxlama və düzəltmə: fsck komandaları

1. Fayl sistemini yoxlamaq niyə vacibdir?

Linux-da fayl sistemi, əslində, ƏS-in ən "çox işləyən" işçilərindən biridir. Faylları saxlayarkən, proqramları açarkən və ya sadəcə məlumat oxuyarkən o daim çalışır. Ancaq təsəvvür edin: tam vacib anda bu işçi yoruldu və huşunu itirdi (oxu: elektrik kəsilməsi səbəbindən sistem söndü). Bu, fayl cədvəlinin zədələnməsinə, məlumat itkisinə və bir çox digər xoşagəlməz problemlərə səbəb ola bilər.

Bəs nə pis ola bilər?

  1. Enerjinin qəfil kəsilməsi — cihazınız qəfildən söndü və məlumat yazmağı bitirə bilmədi.
  2. Saxlama xətası — sərt disk və ya SSD aparat nasazlıqlarına malik ola bilər ki, bu da fayl sistemini zədələyər.
  3. Proqram təminatı xətaları — drayverlərdə və ya sistem utilitlərində bug-lar istisna edilmir.

Belə hadisələrdən sonra fayl sistemi tez-tez işləməz hala düşür və sistem sizdən onun vəziyyətini yoxlamaq üçün tələb edə bilər. Məhz bu zaman fsck köməyinizə gəlir, bu isə File System Check kimi açılır.


2. fsck nədir və necə işləyir?

Alətin ideyası

fsck — bu, fayl sisteminin bütövlüyünü yoxlayan və aşkar olunan səhvləri düzəldən universal utilitadır. O, həkim kimi işləyir: testlər aparır, problemi tapır və, əgər mümkündürsə, onu "müalicə edir". Problem çox ciddi olduqda, fsck heç olmasa, nəyin səhv getdiyini diaqnoz edə bilər.

fsck nə vaxt istifadə olunur?

  1. Faylların işində aydın nasazlıqlar olduqda (məsələn, onlar birdən-birə "yoxa çıxır").
  2. Sistem başlatılmadıqda və fayl sistemi səhvi barədə məlumat verdikdə.
  3. Müntəzəm profilaktika üçün, hər şeyin qaydasında olduğundan əmin olmaq üçün.

3. Əsas fsck sintaksisi

fsck istifadə etmək üçün adətən aşağıdakı komanda tətbiq olunur:

fsck [açarlar] <cihaz>

Əsas açarlar:

  • -y — Düzəlişləri avtomatik təsdiq et. Bu, hər bir suala yes basmaq istəmirsinizsə, rahatdır.
  • -n — Yalnız yoxlama, düzəliş etmədən (quru keçid). Əgər nəyisə korlamaqdan qorxursunuzsa, vəziyyəti analiz etmək üçün faydalıdır.
  • -t — Fayl sistemi növünü qeyd edin (məsələn, ext4, xfs).
  • -r — İnteraktiv rejimi aktivləşdirin (hər bir düzəlişi təsdiq edəcəksiniz).

4. Praktika: fayl sisteminin yoxlanması

Gəlin sadə bir yoxlama ilə başlayaq. Tutaq ki, bizdə /dev/sdb1 adlı bir cihaz var və biz onu yoxlamaq istəyirik.

Addım 1: Düzəlişlərsiz yoxlama

Əvvəlcə fayl sisteminin vəziyyətini dəyişiklik etmədən qiymətləndirək:

fsck -n /dev/sdb1

Komandanı yerinə yetirdikdən sonra tapılan problemlərin siyahısını görəcəksiniz, əgər beləsi varsa. Nümunə çıxışı:

Korlanmış yetim bağlı siyahının hissəsi olan inodlar aşkarlandı.
Fayl sistemində səhvlər aşkar edildi. Düzəltmək üçün fsck işlədin.

Addım 2: Avtomatik düzəliş

İndi biz səhvlərin düzəldilməsini aktiv edəcəyik:

fsck -y /dev/sdb1

fsck aşkar edilən hər bir səhvi düzəltməyə çalışacaq və avtomatik olaraq əməliyyatı təsdiq edəcək. Bu, cihaz böyükdürsə, bir az vaxt apara bilər.


5. Fayl sistemi istifadə olunursa nə etməli?

fsck başladılarkən səhv

Əgər siz fsck-ni artıq montaj olunmuş bölmədə başladmağa cəhd etsəniz, xəbərdarlıq alacaqsınız:

fsck: cannot check a mounted filesystem.

Bu, montaj olunmuş fayl sisteminin yoxlanılması nəticəsində məlumatların zədələnməsi ilə əlaqədardır. Bu problemi həll etmək üçün bir neçə yol var.

  1. Cihazı yalnız oxuma rejimində montaj edin.
mount -o remount,ro /dev/sdb1
  1. LiveCD və ya LiveUSB istifadə edin.

Montaj olunmamış cihazı yoxlamaq üçün yüklənmə diski və ya flaş-diskdən yüklənin.

  1. Bərpa rejimindən istifadə edin.

Sistemi adətən təhlükəsiz mühit təmin edərək yoxlanma aparmağa imkan verən bərpa rejimində yenidən başladın.

Əsas fayl sisteminin / yoxlanılmasının xüsusiyyətləri

Əsas fayl sistemi — sistem tərəfindən fəal şəkildə istifadə edildiyi üçün xüsusi bir haldır. Bu bölmədə fsck-ni başlatmaq üçün lazımdır:

  1. Komandadan istifadə edərək tək istifadəçi rejiminə keçmək:
systemctl isolate rescue.target
  1. Manual olaraq fsck-ni başlatmaq:
fsck -y /

6. Tipik səhvlər və onların həlli

Zədələnmiş inode'lar

Əgər fsck zədələnmiş inode'lar (fayllar haqqında məlumat saxlayan strukturlar) barədə xəbərdarlıq edirsə, onların silinməsini təklif edəcək. Bu təhlükəsizdir, çünki zədələnmiş inode artıq mövcud fayllarla əlaqəli deyil.

İtmiş fayllar

Bəzən fsck işə salındıqdan sonra itmiş fayllar fayl sisteminin kökündə olan lost+found kataloquna düşür. Bu yeri əl ilə yoxlayıb vacib məlumatları bərpa edə bilərsiniz.

Vacib tövsiyələr

  1. Yoxlamadan əvvəl həmişə rezerv nüsxə yaradın. fsck adətən təhlükəsiz işləsə də, düzəlişlər məlumat itkisinə səbəb ola bilər.

  2. Montaj edilmiş bölmələr üzərində fsck işə salmayın. Bu məlumatların zədələnməsinə səbəb ola bilər.

  3. İlkin analiz üçün -n flag-dən istifadə edin. Əgər səhvləri avtomatik düzəltməyin məqsədəuyğun olduğuna əmin deyilsinizsə, quru bir sınaqla başlayın.


7. Nümunə: Səhv simulyasiyası və düzəlişi

  1. Virtual disk yaradın və üzərində fayl sistemi yaradın:
dd if=/dev/zero of=./disk.img bs=1M count=100
mkfs.ext4 ./disk.img
  1. Diski mount edin:
sudo mount ./disk.img /mnt/test/
  1. Zədələnməni simulyasiya edin:
sudo dd if=/dev/zero of=/mnt/test/randomfile bs=512 count=10
  1. Diski unmount edin və yoxlayın:
sudo umount /mnt/test/
fsck ./disk.img

Əmr nəticələrini izləyərək səhvləri düzəldin.

Bu mərhələdə siz fayl sisteminin yoxlanmasında əminliklə işləyə bilərsiniz, səhvləri düzgün şəkildə aradan qaldırmağı və nasazlıqları qarşısını almağı bacarırsınız. Qarşımızda fayl sistemləri ilə işləmək üçün yeni alətlər var, amma fsck artıq sizin diaqnostika və düzəliş üçün etibarlı alətinizdir.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION