/ Etc / fstab içindeki _netdev mount seçeneği nasıl çalışır?


24

Ben ağ arayüzü kadar sonraya kadar montaj erteleme kullanılan kesin mekanizma (uygulama) nedir bilmek istiyorum ne zaman bir kullanım _netdevseçeneği /etc/fstab?
Does systemdBu davranışı değiştirmek?
Ayrıca, delay_connectsshfs için seçenek ne sağlar _netdev?

Gönderen mount adam sayfası :

_netdev
Dosya sistemi, ağ erişimi gerektiren bir aygıtta bulunur (sistemin ağda etkinleştirilene kadar sistemin bu dosya sistemlerini bağlamaya çalışmasını engellemek için kullanılır).

Gönderen sshfs adam sayfası :

-o delay_connect
sunucuya gecikme bağlantısı

Yanıtlar:


25

SysV Init

/etc/init.d/mountall.shİnit betiği yerel dosya sistemlerini sadece bağlar:

mount -a -t nonfs,nfs4,smbfs,cifs,ncp,ncpfs,coda,ocfs2,gfs,gfs2,ceph -O no_netdev

Diğer dosya sistemleri, /etc/init.d/mountnfs.shbağımlılıklarını açıklayan (LSB başlıkları aracılığıyla) açıklandığı gibi ayrı init betikleri ile monte edilir $network. Böylece bunlar daha sonra ağ daha açıldıktan sonra ağın açılmasından sonra planlanıyor mountall.sh.

systemd

Yerel montaj birimleri local-fs.targetuzaktan kumandalar tarafından içeri çekilir remote-fs.target. systemd-fstab-generatortarar /etc/fstab, montaj birimleri oluşturur ve bunları yukarıdakilere benzer koşullara dayanarak yukarıdaki hedeflere atar.

delay_connect

Bu seçenek, sshfs'nin uzak sunucuya SSH bağlantısını bağlama zamanında başlatmayacağı, ancak yalnızca bunu gerektiren ilk dosya sistemi işleminde yapacağı anlamına gelir. Bu, hata raporlamayı geciktirir, ancak bazı durumlarda, örneğin init sisteminizin takma işlemini doğru şekilde sipariş etmek için yeterli bilgiye sahip olmaması durumunda yararlı bir geçici çözüm olabilir. "Ağ" "yukarı" olmak oldukça gevşek bir terimdir ve bir tetikleyici olayın başlatma işleminin bir parçası olmasa bile yardımcı olmayan birimleri monte etmek için isteğe bağlı ekstra bağımlılıklar ekleyebilse de (sistemd parlance).


Yani, _netdevbunun montajı yapan (ve benzeri bir montaj türüne özgü olan) prosese geçirilen bir argüman olmadığını, bunun ext4/btrfs/cifs/fusene zaman karar verdiğini belirten diğer bayrak / kodlar tarafından okunması gerektiğini söylüyorsunuz. önyükleme işlemi sırasında bu bağlar yürütülmelidir. Evet? Eğer öyleyse, o zaman bu argümanın alt çizgi ile başlamasının nedeni olduğunu düşünüyorum, böylece diğer resmi argümanlardan ayırt etmek için .
Piotr Dobrogost

Evet. Eğer geçerseniz _netdevseçeneği mountkomutu, bu görünür olacak /proc/mountsama başka bir etkisi vardır.
Ferenc Wágner

Bonus soru; bu bir yerde belgeleniyor mu?
Piotr Dobrogost

1
Montaj kılavuzu içerir: "FILESYSTEM-BAĞIMSIZ SEÇENEKLER - onlar göründüğünde Bu seçeneklerden bazıları sadece yararlıdır /etc/fstab. Dosyasındaki" Eh, _netdev(biraz sonra belgelenmiştir) bunun için iyi bir örnek.
Ferenc Wágner

2
_Netdev seçeneği varsayılan olarak mount (8) 'da dikkate alınmaz. Seçenekler sadece initscripts tarafından kullanılır. - bugzilla.redhat.com/show_bug.cgi?id=607309#c4
Piotr Dobrogost

18

Gönderen man systemd.mountsystemd sürümü 231 için:

Yerel ve ağ dosya sistemlerine atıfta bulunan bağlanma birimleri, dosya sistemi türü belirtimiyle ayırt edilir. Bazı durumlarda, bu yeterli değildir (örneğin, iSCSI gibi ağ blok cihazı tabanlı montajlar), bu durumda , montaj birimini bir ağ montajı olarak düşünmeye zorlayan ünitenin montaj opsiyon dizisine _netdev eklenebilir.


Awsome! Bu cevabın neden henüz oy kullanmadığına dair hiçbir fikrim yok.
Valentin Bajrami

1

Upstart/Udev

İçin upstartve / veya udevtabanlı sistemler bu biraz farklıdır.

Görünen o ki udev, NFS dosya sistemlerini takmaya çalışacağız ve netfsbu başarısız olduğunda güvenlik ağını oluşturuyor.

Yanılıyorsam lütfen beni düzeltin. Her iki durumda da, bu cevap sadece bazı eski sistemler için geçerlidir (Ubuntu 14.04 LTS, RHEL6).

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.