Veri kaybını veya bozulmasını en aza indirmek için ext3 dosya sistemi için hangi bağlama seçeneği kullanılır?


15

Kök dosya sistemi için bir initramfs kullanarak ancak kompakt flash IDE sürücüsüne monte edilmiş özel bir ext3 bölümü kullanarak katıştırılmış bir kurulum var. Güç kaybı karşısında veri bütünlüğü tüm kurulumunda en önemli faktör olduğundan, aşağıda benim dan giriştir (montaj için aşağıdaki seçenekleri kullandık /etc/fstabdosyası

<file system> <mount pt> <type> <options>                         <dump><pass>
/dev/sda2     /data      ext3   auto,exec,relatime,sync,barrier=1 0     2

Bu seçeneklerle internette okumaktan geldim. Endişelendiğim şey, içeriğin /proc/mountsaşağıdakileri vermesidir:

/dev/sda2 /data ext3 rw,sync,relatime,errors=continue,user_xattr,acl,
barrier=1,data=writeback 0 0

Etrafımda okumaktan anladığım kadarıyla, data=journalveri bozulmasına karşı en iyi korumayı sunduğu için bağlantım için seçenek kullanmak istiyorum . Ancak, belirli ext3 seçenekleri için kılavuz sayfasından mountgeri yazma seçeneği hakkında aşağıdakileri söyler:

Veri sıralaması korunmaz - veriler, meta verileri dergiye kaydedildikten sonra ana dosya sistemine yazılabilir.
Bunun en yüksek verim seçeneği olduğu söyleniyor. Dahili dosya sistemi bütünlüğünü garanti eder , ancak eski verilerin bir çökme ve günlük kurtarma işleminden sonra dosyalarda görünmesine izin verebilir.

Ben bu konuda çok kafam karıştı - adam sayfası dosya sistemi bütünlüğü için ben data=writebackseçeneği belirtmek istiyorum öneririz gibi görünüyor mountama bulduğum diğer referansların çoğu (gömülü linux bazı yayınlanmış kitaplar dahil) kullanmanız gerektiğini öneririz data=journal. Benim için en iyi yaklaşım ne olurdu? Yazma hızı hiç sorun değil - veri bütünlüğü.


1
Veri = dergi hakkında bazı bilgiler verir . RH sadece bu tür siparişleri desteklediğinden bunu başka bir şey üzerinde kullanmaya meyilliyim.
slm

2
@sim aslında diyor ki data=ordered: p
sourcejedi

Yanıtlar:


7

Sadece writebackbahsettiği gerçeğinden yanılmayın internal filesystem integrity.
İle ext3kullanmak ister journal, orderedya da writeback, dosya sistemi meta daima edilir saplanmış ve araçlar dahili dosya sistemi bütünlüğü söyledi.

Veri modları nasıl bir kontrol yol sunar sıradan dosya sistemine yazılır verileri.
In writebackmodunda meta veri değişikliklerinin ilk dergide kaydedilir ve bir blok yazılır taahhüt edilmektedir. Dergi güncellendikten sonra, meta veriler ve veri yazma işlemleri devam edebilir. data=writeback ciddi bir güvenlik riski olabilir: sistem bir dosyaya eklenirken, meta veriler işlendikten sonra (ve ek veri blokları ayrıldıktan sonra), ancak veriler yazılmadan önce (yeni verilerle üzerine yazılan veri blokları), herhangi kullanıcıdan - dosya daha önce silinen dosyaları veri ile dolu blokları içerebileceğini kurtarma 1 .

Dolayısıyla, eğer veri bütünlüğü ana kaygınızsa ve hız önemli değilse data=journal, gitmenin yolu budur.


4

Daha önce fark ettiğiniz gibi, ana nokta, dosya sisteminizi her türlü çökmeden önleyememenizdir.

Ne yapabilirsin:

  1. Yazılım tarafında, kullanabilirsiniz fdatawrites her önemli operasyon (Bkz sonra bu 2003 yazı Theodore T'so, bir ana Linux FS Çekirdek geliştiriciden. Hala doğru. Orada da bu bir ext4 eski sürümlerinde gizli önemli veri kaybı hakkında)
  2. Kesinti aralığını 1 saniyeye düşürün ( commit = 1 ) ( LWN'deki bu makaleye bakın , bu ext4 ile ilgilidir, ancak ext3 hakkında gerçekten yararlı bilgiler içerir). Not: Senkronizasyon ile gerekli olmamalıdır .
  3. Sim'in işaret ettiği RHEL belgesinin dediği gibi * data_err = iptal * ve veri = sipariş
  4. noatime dosya sistemindeki gereksiz işlemleri azaltacaktır
  5. Daha önce fark ettiğiniz gibi, bariyer = 1 veri kaybını en aza indirmenin iyi bir yoludur ( bu gönderiye bakın )
  6. Ve senkronizasyon , tabii ki, aynı zamanda "Ben verileri kaybetmek istemiyoruz" seçeneği biridir.

Sonunda, paranoyak montaj seçenekleri şöyle görünebilir:

auto,exec,relatime,sync,barrier=1,commit=1,data=ordered,data_err=abort,noatime,

Ayrıca, her önyüklemede otomatik bir fsck ile veri bütünlüğünü de sağlayabilirsiniz.


2

Man sayfasının hangi bölümünü vurguladığınızı değiştirmeyi deneyin:

cevap yazmak

Veri sıralaması korunmaz - veriler, meta verileri dergiye kaydedildikten sonra ana dosya sistemine yazılabilir. Bunun en yüksek verim seçeneği olduğu söyleniyor. Dahili dosya sistemi bütünlüğünü garanti eder, ancak eski verilerin bir çökme ve günlük kurtarma işleminden sonra dosyalarda görünmesine izin verebilir.

Don_crissti'nin işaret ettiği gibi, diğer modlarda "ancak" yoktur.

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.