Ext4'ü güvenilirlik için nasıl optimize edebilirim?


11

Ext4, blok günlükleriyle ext3'ten daha güvenilir olarak sunulduğundan,% 100 güvenilir olduğunu varsayalım? Varsayılan olarak devre dışı bırakılan blok günlük kaydını etkinleştirirseniz ne olur?

Davamı daha ayrıntılı olarak açıklamak için arkadaşımın kılavuzu olarak: Kurulum klavyesi ve monitörü ayrıldıktan sonra gömülü bir linux cihazım var ve bağımsız çalışıyor.

Benim görevim, güvenilir dosya sistemine sahip olduğundan emin olmaktır, bu nedenle hatalarla cihazda manuel doğru hataların yolu yoktur. Elektrik kesintisi nedeniyle herhangi bir hata olmamasını sağlamak için müşterimi her bir cihazla ups kullanmaya zorlayamam.

Ext4 bana blok günlüklemenin yanı sıra daha neler sunabilir?

Şimdiden teşekkürler.


Ben blok günlük kaydı gibi özellikleri etkinleştirme bazı ticaret var biliyorum, ama ben güvenilirlik için
sopa

Ayrıca bkz: serverfault.com/questions/244095/how-to-make-ext4-more- güvenilebilir , çok belirsiz olduğu için kapatıldı.
Olli

Evet orada sorumu sordum ve sadece kapalı hiçbir yardım vardı! benim linux sistemim monitör veya klavye takılı olmayan gömülü bir sistemdir. bu yüzden elektrik kesintisi, vb daha güvenilir olmasını istiyorum ... blok günlük kaydı bir yol olduğunu biliyorum ama daha fazla seçenek olup olmadığını bilmek istiyorum. her cihaz için bir ups var benim müşteri sunamıyorum.
amin

1
@amin Usecase'inizle ilgili bilgiler sorunuzda daha yararlı olacaktır, muhtemelen bu yüzden belirsiz olmak için kapatılmıştır; sorunuza daha fazla bilgi ekleyin!
Jorge Castro

2
Soru çok belirsiz. "% 100 güvenilir" ne anlama geliyor? "Blok jounrnaling" ile data = dergi demek istediğinizi varsayarsak, bu sadece dev bir zaman kaybıdır. FS doğal olarak güvenilirdir; bir günlük sadece bir çökme sonrasında uzun bir fsck beklemek zorunda kalmaz.
psusi

Yanıtlar:


11

Hayır. Bir şeyin asla% 100 güvenilir olduğunu düşünemezsiniz.

Günlük dosya sistemleri, beklenmedik bir kesinti durumunda veri kaybını en aza indirir. Uzantılar ve engeller daha da yardımcı olur, ancak ilişkili tüm sorunları ortadan kaldıramaz. Kişisel olarak, günlük kaydı dosya sistemlerini kullanırken dosya sistemi bozulması nedeniyle veri kaybı yaşamadım.

Ayrıca, günlük kaydı varsayılan olarak devre dışı değildir .

İşte ext4 ve geliştirmelerine iyi bir genel bakış: http://kernelnewbies.org/Ext4


1
"Hiçbir zaman% 100 güvenilir olduğunu
düşünemezsiniz

olarak Comparison_of_file_systems blok günlük kaydı kapalı meta günlük kaydı en güvenilirlik ve hız arasındaki kapalı ticaret olduğunu, açıkken
Amin

Ben sadece dosyaları geçersiz veri içeren ext4 büyük veri bozulması bulmak için bir sunucu yeniden başlattım. Verilerin sağlama toplamları olduğu için bu zfs veya btrfs'de gerçekleşemezdi.
user239558

5

Ext4'e eklenen ve çekirdek 3.5 ile sunulan yeni bir özellik, dosya sisteminin yapısının güvenilirliğini ve bütünlüğünü geliştirmesi gereken ext4'ün başka bir özelliği olan 'meta veri sağlama toplamları' olarak bilinen şeydir.

Genel uygulama, Çekirdek yeni başlayanlarda iyi açıklanmıştır :

ZFS ve Btrfs gibi modern dosya sistemleri, sağlama toplamlarını kullanarak dosya sisteminin bütünlüğünü sağlamanın değerli bir özellik olduğunu kanıtlamıştır. Ext4, çeşitli meta veri alanlarının sağlama toplamlarını saklama yeteneğini ekledi. Bir meta veri alanı her okunduğunda, okunan verilerin sağlama toplamı depolanan sağlama toplamlarıyla karşılaştırılır, eğer farklıysa, bu veriler bozuk demektir (bu özelliğin verileri kapsamadığını, yalnızca dahili meta veri yapılarını ve "kendi kendini iyileştirme" özelliğine sahip değildir).

Herhangi bir ext4 dosya sistemi, oluşturma sırasında "tune2fs -O metadata_csum" komutu veya "mkfs -O metadata_csum" kullanılarak sağlama toplamlarını kullanacak şekilde yükseltilebilir. Bu özellik bir dosya sisteminde etkinleştirildiğinde, sağlama toplamı desteği olmayan eski çekirdekler yalnızca salt okunur kipte bağlayabilecektir.

Bunun gibi kernel.org'daki makaleler , meta veri sağlama toplamlarının kullanılmasının bozuk meta verilerin dosya sistemi yapısına zarar vermesini nasıl önleyebileceğini ayrıntılı olarak ayrıntılı olarak tartışmaktadır.

Ancak makale ayrıca şunları uyarıyor:

Meta veri sağlama toplamı kodu Linux 3.5'te ana hatta gitmeye başladı ve 3.7-rc1'den itibaren bazı kullanıcı testlerinden geçiyor. Bu kod henüz sağlam değildir.

Ubuntu 12.10'da varsayılan olarak etkin değildir ve muhtemelen burada belirtildiği gibi ext4 dosya sistemiyle ilgili son sorunlardan sonra bir an için etkinleştirmemek en iyisidir .


1

Ext4 (nodelalloc) altında gecikmeli ayırmayı devre dışı bırakabilirsiniz, bu da bir yazma sırasında güç kesintisi yaşadıysanız / olduğunda daha fazla veri kurtarmanızın daha olası olmasını sağlar, ancak dosyanın daha fazla parçalanması pahasına olur zaman içinde sistem.

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.