Primární konfigurace serveru NFS je soubor /etc/exports. Toto je soubor, který používáte k určení, které adresáře chcete sdílet s klienty NFS. Syntaxe tohoto souboru je:
Directory hostname(options)
Hodnota Adresář by měl být nahrazen názvem adresáře, který chcete sdílet (například /usr/share/doc). Hodnota hostname by měl být název hostitele klienta, který lze přeložit na adresu IP. Možnosti hodnota se používá k určení, jak má být prostředek sdílen.
Například následující záznam v souboru /etc/exports by sdílel adresář /usr/share/doc s klientem NFS client01 (s možnostmi čtení-zápis) a klientem NFS client02 (s možností pouze pro čtení ):
# vi /etc/exports /usr/share/doc client01(rw) client02(ro)
Všimněte si, že mezi názvem/volbami client01 a client02 je mezera, ale žádná mezera mezi názvem hostitele a jeho odpovídající volbou. Obvyklou chybou začínajících administrátorů je poskytnout záznam, jako je tento:
/usr/share/doc client01 (rw)
Předchozí řádek by sdílel adresář /usr/share/doc s hostitelem client01 s výchozími možnostmi a všichni ostatní hostitelé by měli přístup k tomuto sdílení jako čtení i zápis.
Když zadáváte název hostitele v souboru /etc/exports, jsou povoleny následující metody:
- název hostitele :Název hostitele, který lze přeložit na adresu IP.
- netgroup :Síťová skupina NIS používající označení @groupname.
- doména :Název domény používající zástupné znaky. Například *.onecoursesource.com by zahrnoval jakýkoli počítač v doméně onecoursesource.com.
- Síť :Síť definovaná IP adresami pomocí buď VLSM (Variable Length Subnet Mask) nebo CIDR (Classless Inter-Domain Routing). Příklady:192.168.1.0/255.255.255.0 a 192.168.1.0/24.
Existuje mnoho různých možností sdílení NFS, včetně těchto:
- rw :Sdílet jako čtení i zápis. Mějte na paměti, že stále platí normální oprávnění systému Linux. (Všimněte si, že toto je výchozí možnost.)
- ro :Sdílet pouze pro čtení.
- synchronizovat :Změny dat souborů se na disku provádějí okamžitě, což má dopad na výkon, ale je méně pravděpodobné, že povede ke ztrátě dat. U některých distribucí je to výchozí.
- asynchronní :opak synchronizace; změny dat souboru se zpočátku provádějí v paměti. To zrychlí výkon, ale pravděpodobněji to povede ke ztrátě dat. U některých distribucí je to výchozí.
- root_squash :Mapujte účet uživatele root a účet skupiny z klienta NFS na anonymní účty, obvykle buď účet Nobody, nebo účet nfsnobody. Další podrobnosti naleznete v další části „Mapování ID uživatele“. (Všimněte si, že toto je výchozí možnost.)
- no_root_squash :Mapujte účet uživatele root a skupiny z klienta NFS na místní účty root a skupiny.
Mapování ID uživatele
Aby byl proces sdílení prostředků ze serveru NFS s klientem NFS co nejtransparentnější, ujistěte se, že jsou v obou systémech používána stejná UID (ID uživatele) a GID (ID skupiny).
Příkazy serveru NFS
Příkaz exportfs lze na serveru NFS použít k zobrazení toho, co je aktuálně sdíleno:
# exportfs /share [world]
Příkaz exportfs lze také použít k dočasnému sdílení prostředku za předpokladu, že služby NFS již byly spuštěny:
# exportfs -o ro 192.168.1.100:/usr/share/doc # exportfs /usr/share/doc 192.168.1.100 /share [world]
-o volba se používá k určení možností sdílení. Argument obsahuje název systémů, se kterými chcete sdílet, a také adresář, který chcete sdílet, oddělené dvojtečkou (:).
Pokud provedete změny v souboru /etc/exports, bude po restartu povolena jakákoli nově přidaná sdílená položka. Pokud chcete tyto změny povolit okamžitě, proveďte následující příkaz:
# exportfs –a
nfsstat může zobrazit užitečné informace NFS. Například následující příkaz zobrazí, co je aktuálně připojeno klienty NFS:
# nfsstat -m /access from 10.0.2.15:/share Flags: rw,vers=3,rsize=131072,wsize=131072,hard,proto=tcp,timeo=600, retrans=2,sec=sys,addr=10.0.2.15
Příkaz showmount zobrazí podobné informace:
# showmount -a All mount points on onecoursesource.localdomain: 10.0.2.15:/share
Konfigurace klienta NFS
Připojení sdílené složky NFS se příliš neliší od připojení oddílu nebo logického svazku. Nejprve vytvořte běžný adresář:
# mkdir /access
Dále pomocí příkazu mount připojte sdílenou složku NFS:
# mount 192.168.1.22:/share /access
Úspěšné připojení můžete ověřit buď spuštěním příkazu mount, nebo zobrazením /proc/mounts soubor. Výhodou zobrazení souboru /proc/mounts je, že poskytuje více podrobností:
# mount | tail -1 192.168.1.22:/share on /access type nfs (rw,addr=192.168.1.22)
# tail -1 /proc/mounts 192.168.1.22:/share /access nfs rw,relatime,vers=3,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp, timeo=600,retrans=2,sec=sys,mountaddr=192.168.1.22,mountvers=3, mountport=772,mountproto=udp,local_lock=none,addr=192.168.1.22 0 0
Pokud by byl klient NFS restartován, toto připojení by se po zavedení systému neobnovilo. Chcete-li, aby to bylo trvalé připojení po restartování, přidejte do /etc/fstab záznam podobný následujícímu soubor:
# tail -1 /etc/fstab 192.168.1.22:/share /access nfs defaults 0 0
Po přidání této položky do souboru /etc/fstab odpojte sdílenou složku NFS (je-li to nutné) a otestujte novou položku zadáním bodu připojení pouze při provádění příkazu mount:
# umount /access # mount /access # mount | tail -1 192.168.1.22:/share on /access type nfs (rw,addr=192.168.1.22)