NFS (Česky) - ArchWiki

# NFS (Česky)

## Cíl tohoto návodu

Cílem tohoto článku je nastavení NFS serveru pro sdílení souborů přes síť. Pokusím se to popsat všechno co nejjednodušeji. Poznámka: pro informace o NFSv4 se podívejte na článek NFSv4

Portmap byl nahrazen rpcbind

## Potřebné balíčky

Pro server i klienta nám postačí jen pár balíčků. Základní podpora NFS je zkompilována v distribučním jádře.
Nainstalujte:

- core/portmap
- core/nfs-utils

Oba balíčky jsou v repozitáři [core] a měly by být součástí nové instalace ArchLinuxu

## Nastavení serveru

Nyní je nunté provést konfiguraci a spustit démony. Pro provedení následujících akcí potřebujete práva roota (nebo sudo).

### Soubory

#### /etc/exports

Tento soubor (/etc/exports) určuje, které adresáře nebo soubory na NFS serveru budou sdílené a nastavuje různá oprávnění.
Pár příkladů:

    /soubory *(ro,sync) ; Přístup pro kohokoliv, pouze pro čtení
    /soubory 192.168.0.100(rw,sync) ; RW přístup pro klienta s IP 192.168.0.100
    /soubory 192.168.1.1/24(rw,sync) ;  RW přístup pro klienty s rozsahem IP 192.168.1.1 až 192.168.1.255

Pokud uděláte změny v /etc/exports po startu démonů, můžete tyto změny snadno aplikovat následujícím příkazem (bez nutnosti restartovat démona):

    exportfs -r

Pokud se rozhodnete zpřístupnit veřejně NFS server pro čtení i zápis, můžete použít all_squash v kombinaci s anonuid a anongid. Například, pro nastavení oprávnění pro uživatele nobody ze skupiny nobody, můžete použít následující:

    ; Přístup čtení-zápis pro klienta s IP 192.168.0.100 s RW přístupem pro uživatele 99 s GID 99
    /files 192.168.0.100(rw,sync,all_squash,anonuid=99,anongid=99))

To také znamená, že pokud chcete RW přístup do této složky, musí jí vlastnit nobody.nobody:

    chown -R nobody.nobody /soubory

Další detaily o souboru exports najdete v manuálu k exports.

#### /etc/conf.d/nfs

Nastavením toho souboru ovlivňujete běh nfsd, mountd, statd a sm-notify. Výchozí Archlinuxový NFS skript požaduje pro statd zapnutou volbu --no-notify:

    STATD_OPTS="--no-notify"

Ostatní nastavení můžete nechat jak je, nebo ho upravit dle požadavků. Více informací najdete v manuálu.

#### /etc/hosts.allow

This article or section is out of date.

Reason: please use the first argument of the template to provide a brief explanation. (Discuss in Talk:NFS (Česky)#)

Pro povolení přístupu na NFS server je nutné upravit /etc/hosts.allow.
Následující nastavení umožňuje přístup na NFS komukoliv:

     nfsd: ALL
     portmap: ALL
     mountd:ALL

Pro lepší nastavení se podívejte na hosts_access(5) v man.

### Démoni

Nyní můžete spustit server následujícími příkazy:

    /etc/rc.d/portmap start
    /etc/rc.d/nfslock start
    /etc/rc.d/nfsd start

Pořadí spouštěných démonu mustí být zachováno!
Pro spuštění serveru při bootu, vložte tyto démony (tak jak jdou za sebou) do /etc/rc.conf.

## Nastavení klienta

### Soubory

#### /etc/conf.d/nfs

Pro klienta stačí nastavit pouze statd, ostatní volby se týkají serveru. NEPOUŽÍVEJTE v klientovi volbu --no-notify, pokud si nejste plně vědomi následků!!!

Více informací opět nalezneté v manuálových stránkách statd.

### Démoni

Nahoďte démony portmap a nfslock:

    /etc/rc.d/portmap start
    /etc/rc.d/nfslock start

Nezapomeňte, že je musíte spouštět v tomto pořadí.
Pro spuštění těchto démonů při bootu je přidejte do pole DAEMONS v /etc/rc.conf.

Pak připojte adresář jako obvykle:

    mount server:/soubory /mnt/soubory

### Automatické připojení při startu

Pokud chcete síťové adresáře připojit při startu ujistěte se, že netfs je v DAEMONS v /etc/rc.conf a přidejte do /etc/fstab tyto řádky:

    server:/soubory /mnt/soubory nfs defaults 0 0

Pokud chcete nastavit ručně velikost čtecích a zápisových paketů, můžete to také ovlivnit v fstabu. Hodnoty uvedené níže jsou výchozí hodnoty, pokud nejsou stanoveny jiné:

    server:/soubory /mnt/soubory nfs rsize=32768,wsize=32768 0 0

Podívejte se do nfs man stránek, zde naleznete více informací, včetně všech možných volbách mountu.

## Problémy

### Špatný výkon, pomalý přenos dat a/nebo vysoké zatížení serveru při používání NFS a gigabitu

Tento problém je dán velikostí paketů používaných NFS, který způsobuje znatelnou fragmentaci na gigabitové síti. Můžete upravit chování pomocí mount parametrů rsize a wsize. Použití hodnot rsize=32768,wsize=32768 by mělo stačit. Tento problém nenastává na 100Mb sítích (a pomalejších) díky pomalejšímu přenosu paketů. Poznámka: výchozí hodnoty u NFSv4 jsou 32768. Maximum je 65536. Zvyšujte postupně hodnoty po 1024 dokud nedosáhnete maximální rychlosti přenosu.

### Démon portmap selže při spouštění

Ujistěte se, že v poli DAEMONS v /etc/rc.conf máte portmap PŘED netfs!

## Odkazy

Velmi užitečné informace

Category:

- Internet Applications (Česky)