Diskless Arch rehberini takip ederken bu soruna rastlamıştım ve bu beni gerçekten yavaşlattı. Bulgularımı burada paylaşacağım, çünkü bunun başkaları için işe yarayıp yaramayacağını merak ediyorum.
Disksiz kılavuza göre, üzerine monte edilmiş bir geridönüşüm görüntüsünde disksiz istemcinin kök dosya sistemine (dışa aktarmam gereken gerçek veriye) sahibim /srv/des1:
/srv/des1.img on /srv/des1 type btrfs (rw,relatime,compress=lzo,discard,space_cache)
Sonra bir mountpoint oluşturdum, /nfs/des1sonra mount'u çalıştırdım ve her şeyi görebildiğimi doğruladım:
# mkdir -p /nfs/des1
# mount --bind /srv/des1 /nfs/des1
# ls -l /nfs/des1
bin boot dev usr #[SNIP]
Değinen Arch NFS rehber, o zaman aşağıdaki koymak /etc/exportssunucuda:
/nfs/ *(rw,no_root_squash,no_subtree_check,fsid=root)
/nfs/des1/ *{rw,no_root_squash,no_subtree_check,nohide)
Daha sonra exportfs -ravbu değişiklikleri uygulamak için sunucuda bir koştum .
Ancak daha sonra sınama istemcisine paylaşımını yaptım: mount server:/des1 /mnt/tmpdisksiz kök dosya sisteminin olmasını beklediğimde yalnızca boş bir dizin bulmak için.
Bu aşamada, beni exportsman sayfasındaki bir seçeneğe yönlendirene kadar her şeyi denedim :
crossmnt
This option is similar to nohide but it makes it possible for clients
to move from the filesystem marked with crossmnt to exported filesystems
mounted on it. Thus when a child filesystem "B" is mounted on a parent "A",
setting crossmnt on "A" has the same effect as setting "nohide" on B.
Benim bu yüzden başka çalıştı herşey sahip Yani Bunu tersine takas /etc/exportsşuna benziyordu:
/nfs/ *(rw,no_root_squash,no_subtree_check,fsid=root,crossmnt)
/nfs/des1/ *{rw,no_root_squash,no_subtree_check)
Man page girişini okuduğunuzda, bunun önceki kodla aynı etkiye sahip olacağını düşünebilirsiniz, ancak exportfs -ravdeğişiklikleri kaydetmek için tekrar koştuğumda , istemciden yeniden toplanmaya çalıştım ve çalıştı!
/srv/foo --> /bar/foomi?