NFS (Network File System) - síťový souborový systém

NFS je obvykle používán ke sdílení souborů mezi různými počítači na síti. Skvělá věc na NFS je, že je navržen tak, aby si jeden stroj mohl připojit sdílené soubory z jiného stroje transparentně a přistupovat k nim stejně jako ke svým lokálním souborům.

Několik věcí se musí udělat, aby to fungovalo. První je, že na serverovém stroji musí být spuštěny odpovídající služby: Jsou to portmap(8), nfsd(8) a mountd(8). Druhá věc je, že server musí výslovně "exportovat" souborový strom pro konkrétního klienta. To se dělá prostřednictvím souboru exports(5) v adresáři /etc.

První část problému vyřešíme nainstalováním balíčku tcpip1.tgz (ze skupiny N) a necháme rc.inet2 dělat svoje věci. /etc/exports je o něco zábavnější.

Předpokládejme, že mám adresář s obrázky na počítači battlecat.tdn, který chci zpřístupnit pro počítač ninja.tdn. Na počítači battlecat budu potřebovat přidat do /etc/exports řádek:


   /var/media/images   ninja.tdn(ro)

Pak na počítači ninja mohu jednoduše zadat


   # mount -t nfs battlecat.tdn:/var/media/images /mnt

a adresář s obrázky se připojí pod adresář /mnt. Naneštěstí jsem si zakázal zápis do sdíleného adresáře-- ono "(ro)" v souboru /etc/exports na počítači battlecat je volba znamenající "read-only". Jakékoliv podobné volby musí být uvedeny v závorkách za jménem klientského počítače. Je-li jich více, oddělují se čárkami. Na příklad:


   /var/media/images   ninja.tdn(rw,no_root_squash)

To "rw" je samozřejmě "read-write"-- subject to user and group id mapping (viz manuálová stránka exports(5), kde se to vysvětluje), uživatelé na počítači ninja mají dovoleno zapisovat do sdíleného adresáře. Je to celkem pohodlné, co?