exportfs
Wenn Sie einen /etc/exports
erstellen Datei auf einem Server müssen Sie sicherstellen, dass Sie sie exportieren. Normalerweise sollten Sie diesen Befehl ausführen:
$ exportfs -a
Dadurch werden alle Einträge in der Exportdatei exportiert.
Showmount
Die andere Sache, die ich oft tue, ist, von anderen Computern aus jeden Computer zu überprüfen, der NFS-Freigaben in das Netzwerk exportiert, indem ich den showmount
verwende Befehl.
$ showmount -e <NFS server name>
Beispiel
Angenommen, ich bin bei scully angemeldet.
$ showmount -e mulder
Export list for mulder:
/export/raid1/isos 192.168.1.0/24
/export/raid1/proj 192.168.1.0/24
/export/raid1/data 192.168.1.0/24
/export/raid1/home 192.168.1.0/24
/export/raid1/packages 192.168.1.0/24
fstab
Um diese beim Booten zu mounten, fügen Sie diese Zeile zu Ihren Client-Rechnern hinzu, die die NFS-Mounts verbrauchen möchten.
server:/shared/dir /opt/mounted/dir nfs rsize=8192,wsize=8192,timeo=14,intr
automatisches Mounten
Wenn Sie diese Server neu starten, empfehle ich Ihnen dringend, sich mit der Einrichtung des automatischen Mountens zu befassen (autofs
), anstatt diese Einträge zu /etc/fstab
hinzuzufügen . Es ist ein bisschen mehr Arbeit, aber die Mühe lohnt sich.
Dadurch können Sie die Server unabhängiger voneinander neu starten und den NFS-Mount nur dann erstellen, wenn er tatsächlich benötigt und/oder verwendet wird. Wenn es in den Leerlauf geht, wird es ausgehängt.
Referenzen
- 18.2. NFS-Client-Konfiguration – CentOS 5-Bereitstellungsleitfaden
Ich habe denselben Fehler gesehen (mount.nfs: access denied by server while mounting...
) und das Problem wurde von -o v3
behoben Option wie folgt:
$ sudo mount -o v3 a-nfs-server:/path/to/export /path/to/mount
- Server ist Ubuntu 14.04 64bit LTS.
- Client ist CentOS 6.5 64bit.
In meinem Fall funktioniert es mit nfs4:
$ sudo mount -t nfs4 server-name:/ /path/to/mount
Im /etc/export
Datei auf dem Server
/Path/to/export 192.168.1.0/24(rw,sync,fsid=0,no_root_squash,crossmnt,no_subtree_check,no_acl)
fsid=0
macht die /Path/to/export
das Root-Verzeichnis, wenn Sie die Freigabe mounten.
crossmnt
, weil ich einige andere Laufwerke im exportierten Dateisystem habe, auf die ich auch zugreifen möchte.
no_root_squash
, weil ich von der Client-Seite als Root-Benutzer (su) zugreifen möchte. Ich bin mir ziemlich sicher, dass ich der einzige bin, der das in meinem lokalen Netzwerk tun kann.
Server und Clients sind Ubuntu 14.04 64bit.
Wenn Sie nfs3 verwenden möchten, funktioniert die Antwort von @fumisky-wells auch für mich.