Çözemediğim bir NFS paylaşımını monte etmede sorun yaşıyorum, bu beni deli ediyor. Durum bu:
İlgili üç makine:
Ana Bilgisayar A: mandrake, IP 192.168.1.4, NFS sunucusu
Ana Bilgisayar B: athlon64, IP 192.168.1.64, NFS istemcisi
Ana Bilgisayar C: lap-fzs-2, IP 192.168.1.27, NFS istemcisi
Ana makine A, ana makine B tarafından bağlanan bir dizini dışa aktaran bir NFS sunucusuna sahiptir. Bu, kusursuz çalışır ve çağlardan beri çalışmaktadır. Problem yok. Şimdi sunucu C resme giriyor. Ubuntu 12.04 LTS, modern sistem. Ana bilgisayardan aynı paylaşımı bağlamaya çalıştım ama izin verilmedi hatası aldım:
root@lap-fzs-2:~# mount -t nfs mandrake:/data /data -onfsvers=2
mount.nfs: access denied by server while mounting mandrake:/data
A ve B ana bilgisayarları arasında çalıştığı gerçeği, NFS ihracatının kendi başına çalıştığını kanıtlamalıdır. İşte verebileceğim, bana çalışması gerektiğini düşündüren bilgiler. Belki biri benim yapmadığımı görür ve bunun neden yeni ev sahibi C'de başarısız olduğunu bilir.
Sunucu dışa aktarmaları:
[root@mandrake /root]# cat /etc/exports
/suse 192.168.1.0/16(ro,no_root_squash)
/data 192.168.1.0/24(rw)
#/data3 192.168.2.0/24(rw)
#/data 192.168.2.0/16(rw,all_squash,anonuid=500,anongid=500)
#/data3 192.168.2.0/16(rw,all_squash,anonuid=500,anongid=500)
[root@mandrake /root]# exportfs
/suse 192.168.1.0/16
/data 192.168.1.0/24
Portmapper çalışıyor, ihracat biliniyor ve ev sahibi B "athlon64" tarafından monte ediliyor.
[root@mandrake /root]# showmount -e
Export list for mandrake:
/data 192.168.1.0/24
/suse 192.168.1.0/16
[root@mandrake /root]# showmount -a
All mount points on mandrake:
atlhon64.acme.local:/data
Athlon64 ana bilgisayarı NFS paylaşımını bağladığında, sunucu günlüğü başarılı olur:
Feb 11 20:06:46 mandrake mountd[460]: authenticated mount request from atlhon64.acme.local:770 for /data (/data)
Ancak ana makine C aynı paylaşımı bağlamaya çalıştığında, sunucu günlüğü şunları gösterir:
Feb 11 20:12:42 mandrake mountd[460]: refused mount request from lap-fzs-2 for /data (/): no export entry
Ana makine C sunucuyu görür, portmapper ve nfsd'ye ulaşır, ancak izinlerde başarısız olur.
root@lap-fzs-2:~# showmount -e 192.168.1.4
Export list for 192.168.1.4:
/data 192.168.1.0/24
/suse 192.168.1.0/16
root@lap-fzs-2:~# mount -t nfs -v mandrake:/data /data -onfsvers=2,proto=udp
mount.nfs: timeout set for Mon Feb 11 21:49:23 2013
mount.nfs: trying text-based options 'nfsvers=2,proto=udp,addr=192.168.1.4'
mount.nfs: prog 100003, trying vers=2, prot=17
mount.nfs: trying 192.168.1.4 prog 100003 vers 2 prot UDP port 2049
mount.nfs: prog 100005, trying vers=1, prot=17
mount.nfs: trying 192.168.1.4 prog 100005 vers 1 prot UDP port 636
mount.nfs: mount(2): Permission denied
mount.nfs: access denied by server while mounting mandrake:/data
İstemcide NFSv2 kullanmak zorundayım. Sunucu desteklemediğinden NFSv4 kullanımı başarısız olur. TCP üzerinden doğrudan 2049'a bağlanmaya çalıştığından başarısız olur, ancak bağlantı noktası açık değildir. Hiçbir geri dönüş olmaz. NFSv3 kullanımı RPC programı / sürüm uyumsuzluğuna neden olur.
Neyi kaçırıyorum?
Güncelleme:
Her üç makine de tek bir LAN'da, aynı anahtarda. C ana bilgisayarında etkin bir güvenlik duvarı yok:
root@lap-fzs-2:~# iptables -vnL
Chain INPUT (policy ACCEPT 17 packets, 1853 bytes)
pkts bytes target prot opt in out source destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
pkts bytes target prot opt in out source destination
Chain OUTPUT (policy ACCEPT 20 packets, 5611 bytes)
pkts bytes target prot opt in out source destination
A ev sahibi için de:
[root@mandrake /root]# ipchains -L
Chain input (policy ACCEPT):
Chain forward (policy ACCEPT):
Chain output (policy ACCEPT):
exportfs -a
ardından denemek Host A komutu mount
açıkça bir konak ismi veya tam IP adresini deneyin Bilgisayarından C üzerindeki komutu /etc/exports
.
exportfs -a
açılışta bir zaman yapar ve bu yeni bir girdi olmadığından, zaten dışa aktarılır. Dışa aktarma dosyası değişmedi, sadece yeni bir ana bilgisayar onu bağlamalı ve yapamaz.
/etc/exports
aslında onu çalıştırıyor. Şimdi / 24 net artı listelenen tam IP var ve ana C monte edebilirsiniz. Henüz ev sahibi B denemedim. Neden bu olduğu hakkında bir düşünceniz var mı? Ana bilgisayar B sürüm 1 MNT çağrısına başvururken, ana bilgisayar B (çalışan bir) sürüm 2 MNT çağrısı kullandığını fark ettim.