Fsck.ext4'ü yeniden başlatmaya zorlayın, ancak gerçekten “zor”


21

Ubuntu 10.04 sunucularımdan biri beni rahatsız ediyor. Çalıştırdığımda fsck.ext4 -n /dev/sda5, serbest inode sayımında, serbest blok sayımında ve daha birçok hata olduğunu söylüyor.

Denedim:

touch /forcefsck

Ayrıca denedim:

shutdown -rF now

ve yine de, yeniden başlattıktan sonra hataları görüyorum.

Ayrıca eeePC netbook'um Ubuntu 10.10'u da kontrol ettim ve aynı sorunu gördüm!

Yeniden başlatırken "/" dosya sisteminin gerçekten "zorlanmış" "zorla" "dosya sistemimi ciddi şekilde düzeltmesini" fsck'ünü nasıl zorlayabilirim?

Açıklama:fsck.ext4 -n Hata olup olmadığını kontrol etmek için takılı bir dosya sistemi olduğu için çalıştırıyorum . Bu bana olduğunu söylüyor. Açılış işlemi sırasında her 30 mount'taki otomatik fsck’in kök dosya sistemindeki hataları tam olarak halledeceğini düşündüm . Ama benim durumumda bunu yapmaz. Bir LiveCD ile yeniden başlatıp hataları düzeltebilirim ve sonra tekrar yeniden açabilirim, ancak bu, canlı bir sunucu için ciddi bir kesinti olabilir. Bir yeniden başlatma, otomatik fsck, sonra önyüklemeye devam etmek canlı bir sunucuda çok daha sürdürülebilir ve doğru davranış olması gerektiğine inanıyorum.

Ek bilgi: İşte çıktı. Autofsck'in çözeceği bir şeye benziyor, değil mi?

root@server:~# fsck.ext4 -n /dev/sda5
e2fsck 1.41.11 (14-Mar-2010)
Warning!  /dev/sda5 is mounted.
Warning: skipping journal recovery because doing a read-only filesystem check.
/dev/sda5 contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
Free blocks count wrong (1849368, counted=1948909).
Fix? no

Free inodes count wrong (545504, counted=552134).
Fix? no


/dev/sda5: ********** WARNING: Filesystem still has errors **********

/dev/sda5: 116752/662256 files (0.2% non-contiguous), 795324/2644692 blocks

Kullanmakta olduğunuz Ubuntu sunucu sürümü nedir?
crncosta

10,04. Sorumu düzenleyeceğim.
UrkoM

Bunu gerçekten yapabileceğini sanmıyorum, aslında kontrolü el ile yapmaktan daha iyi olabilirsin.
RolandiXor

1
Üzgünüm ama hala daha fazla bilgiye ihtiyacım var. Bağlı dosya sistemlerinde fsck yapıyor musunuz? LiveCD'den önyükleme yapabilir ve yeniden kontrol edebilir misiniz (/ dev / sda5'iniz kaldırılmış olarak)?
crncosta

Dosya sistemi değil, sabit disk sürücüsü bozuk olabilir mi? Bu durumda ext4'ün birkaç kötü sektör olduğu gibi hataları da düzeltmemesi beklenir.
Stefano Palazzo

Yanıtlar:


10

E2fsck man sayfasından:

Msgstr "" "e2fsck'i bağlı dosya sistemlerinde çalıştırmanın güvenli olmadığını unutmayın. Tek istisna, -n seçeneğinin belirtilmesi ve -c, -l veya -L seçeneklerinin belirtilmemesidir. Ancak güvenli olsa bile bunu yapmak için, eğer dosya sistemi monte edilmişse, e2fsck tarafından basılan sonuçlar geçerli değildir.E2fsck, monte edilmiş bir dosya sistemini kontrol edip etmemeniz gerektiğini sorarsa, doğru olan tek cevap '' hayır '' dır. Yapıyorlar, bu soruyu başka bir şekilde cevaplamayı düşünmeliler. "

Öyleyse, -n seçeneğini kullanırken bile fsck ile monte edilmiş bir FS'yi kontrol ederseniz, sonuç hiç geçerli olmayabilir. Monte edilmiş dosya sistemlerini kontrol etmeyin. Canlı CD / Canlı USB kullanın.

Dosya sistemini takılıyken kontrol etmezseniz, neden kullanmanız gerektiğini anlamıyorum, onu touch /forcefscksöküp düzeltebilirsiniz. Ancak, durum buysa ve bir düzeltmeden sonra FS'nizde hala hatalar varsa kullanmayı düşünebilirsiniz:

e2fsck -cy /dev/sda5

Bu, sahip olabileceğiniz bozuk bloklar olarak adlandırılan sabit sürücü ile ilgili bir sorunu çözecektir (bu uzun zaman alacaktır).

Monte edilmiş bir dosya sistemini kontrol etmek istiyorsanız, nasıl devam edeceğimi bilmiyorum ama başka bir soru oluşturmanız gerektiğini düşünüyorum.


Haklısın, dosya sistemi takılı. Ve tabii ki söküldüğünde fsck yapmam gerekiyor. Ancak fsck -n komutunu, monte edildiğinde, değişiklik yapmadan kontrol etmek için çalıştırıyorum ve bana hatalar olduğunu söylüyor. Ve yeniden başlatmadan fsck onları düzeltmemeli mi ???
UrkoM

İlk cümlede söylediklerinizi farkettim: neden fsck -n takılı bir dosya sisteminde geçerli değil? Monte edilmiş bir dosya sisteminde güvenilir bir hata olup olmadığını nasıl kontrol edebilirim?
UrkoM

E2fsck man sayfasını kontrol edebilirsiniz: "Genel olarak e2fsck'i bağlı dosya sistemlerinde çalıştırmanın güvenli olmadığını unutmayın. Tek istisna, -n seçeneği belirtilmişse ve -c, -l veya -L seçenekleri ise Ancak, güvenli olsa bile, dosya sistemi monte edilmişse e2fsck tarafından basılan sonuçlar geçerli değildir. e2fsck, monte edilmiş bir dosya sistemini kontrol edip etmemeniz gerektiğini sorarsa, doğru olan tek şey '' hayır '' Sadece ne yaptıklarını gerçekten bilen uzmanlar bu soruyu başka bir şekilde yanıtlamayı düşünmelidir. ”
Nyamiou Galeanthro

Bağlı bir dosya sistemini nasıl kontrol edeceğimi bilmiyorum, belki başka bir soru oluşturmalısın.
Nyamiou Galeanthro

Bu son iki yorumu cevabınıza ekleyebilir misiniz? O zaman kabul edeceğim. Bilmiyordum, bu yüzden bu yüzden ... çünkü fsck -n'nin günlüğü işlememesi nedeniyle, dosya sistemi durumu orada tutulan en son değişikliklere bakmadan tutarsız.
UrkoM

24

Bunun gerçekten eski bir konu olduğunu biliyorum, ancak son zamanlarda bu sorunu çözmek zorunda kaldım, bu yüzden işletim sistemini fsck ile bulunan sorunları önyükleme sırasında (12.04 için) nasıl düzeltmeye zorlayacağımı göndermek istedim.

Komutu çalıştırmanız gerekir sudo touch /forcefsck. Bu, bir sonraki açılışta bir fsck gerçekleştirmesine neden olacaktır. Fsck sonuçlarını /var/log/boot.log adresinde görebilirsiniz.

Ancak, fsck’in bulduğu her şeyi çözeceği garanti edilmez. Bunu yapmak için, / etc / default / rcS dosyasını düzenlemeniz gerekir. Bu dosyanın sonunda bir satır var:

FSCKFIX=no

Bunun şu şekilde değiştirilmesi gerekiyor:

FSCKFIX=yes

Bu, fsck'i -y seçeneğiyle çalıştırmakla aynı etkiye sahip olacak ve uygulanabilecek tüm düzeltmeleri zorlayacak ve kullanıcı etkileşimi için sormayacak.

Bu, OP'nin istediği gibi fsck'i çalıştırmanıza izin verecek, özellikle uzak bir sistemdeyseniz her zaman mümkün olmayan bir canlı diskten önyüklemeye başvurmak zorunda kalmayacak.


1
Bu girişi Ubuntu EC2 örneğimde sudo touch /forcefsckve sudo shutdown -rkomutları ile birlikte düzenlemek , dosya sistemi sorunlarını ve oturum açma sırasında kontrol uyarısını başarıyla çözdü. Kolay ve yıkıcı olmayan - şerefe.
c.gutierrez

Aynı soru Sunucu Arızası'nda da sorulmuştu ve bu cevap da benim için çalışan bir Ubuntu 14.04 sisteminde oldu. Sadece yapıyor sudo touch /forcefsckve sonra yeniden başlatma yapmadım; düzenleme rcSgerekliydi.
Teemu Leisti

12
sudo touch /forcefsck
sudo reboot

Bir yazım hatası var - dokunuyorsun / forcefcsk. "C" ve "s" değiştirilir. fsck, FileSystemChecK için kısa.


Bu benim için işe yaramaz çünkü kök dosya sistemi düzeltmem gereken hatalardan dolayı salt okunur olarak monte edilmiştir fsck! Sadece liveCD yoluyla veya sürücüyü başka bir makineye çekerek çözülebilecek tavuk ve yumurta problemi.
HDave

3

Bölüm kullanımda olduğu için fsck'i onaracak / tamir edemezsiniz. Kontrolü farklı bir bölümden veya canlı bir cd'den çalıştırmayı deneyin.


2
Çok doğru, ancak önyüklemedeki otomatik fsck, bölüm "/" deki hataları düzeltebilmek için kullanılmadan önce gerçekleşmelidir. Aksi takdirde amaç ne?
UrkoM

3
Kullanmadan önce kontrolün gerçekleştiğine inanıyorum, ancak daha çok danışma kontrolü. Hataları nasıl düzelteceğinize karar vermek size kalmıştır. / Etc / fstab dosyasına bakarken kolay bir kontrol. Diğer bölümlerden sonra "/" farklı bir çek alır.
charlie-tca 26:10

Kök döndürülmeden önce olur mu? yani. İLK Ram Disk.
mckenzm

1

Düzeltmeleri aşağıdaki şekilde otomatik olarak yapabilirsiniz:

Tune2fs -c 5 -i 10 / dev / sda1

-cçalıştırmadan önce dayanaklardan sayısıdır fsckile -içalıştırmadan önce maksimum gün sayısını ise fsck.

Bu durumda, hangisi önce gelirse, her 5 montajda veya her 10 günde bir yapılacaktır.

İki tane bilgisayarım var, biri Linux SuSE 13.2 ve diğeri Linux Mint 18.0 ve her ikisinde de mükemmel çalışıyor.


Otomatik formdaki formlar ve yorumlar aşağıdaki gibidir: Tune2fs -c 5 -i 10 / dev / sda1 Nerede: -c, fsck çalıştırmadan önce maksimum bağ sayısıdır. Nerede: -i, fsck çalıştırmadan önceki azami gün sayısıdır. Bu durumda, hangisi önce gelirse, her 5 montajda veya her 10 günde bir yapılacaktır. Biri Linux SuSE 13.2 ve diğeri Linux MInt 18.0 ile iki bilgisayarım var ve her ikisi de mükemmel çalışıyor.
hk3jld

Otomatik formdaki formlar ve yorumlar aşağıdaki gibidir: Tune2fs -c 5 -i 10 / dev / sda1 Nerede: -c, fsck çalıştırmadan önce maksimum bağ sayısıdır. Nerede: -i, fsck çalıştırmadan önceki azami gün sayısıdır. Bu durumda, hangisi önce gelirse, her 5 montajda veya her 10 günde bir yapılacaktır. Biri Linux SuSE 13.2 ve diğeri Linux MInt 18.0 ile iki bilgisayarım var ve her ikisi de mükemmel çalışıyor. İngilizce bilmiyorum ama tercüman kullanıyorum, umarım eğitim iyidir
hk3jld

1
Ubuntu'da da çalışıyor mu?
George Udosen

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.