NFS ist das "Network File System". Man kann mit einem NFS Server auf sehr einfache Art und Weise zusätzlichen Speicherplatz bereitstellen. Das ist wesentlich praktischer, als Dateien mit tar, cpio oder rsync zu kopieren.
Einrichten eines NFS Servers
# apt-get install nfs-kernel-server nfs-common portmap Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: libevent1 libgssglue1 libnfsidmap2 librpcsecgss3 ucf The following NEW packages will be installed: libevent1 libgssglue1 libnfsidmap2 librpcsecgss3 nfs-common nfs-kernel-server portmap ucf 0 upgraded, 8 newly installed, 0 to remove and 0 not upgraded. Need to get 559kB of archives. After this operation, 1421kB of additional disk space will be used. Do you want to continue [Y/n]? y Get:1 ftp://mirror.hetzner.de lenny/main libevent1 1.3e-3 [44.6kB] Get:2 ftp://mirror.hetzner.de lenny/main libgssglue1 0.1-2 [20.8kB] Get:3 ftp://mirror.hetzner.de lenny/main libnfsidmap2 0.20-1 [22.4kB] Get:4 ftp://mirror.hetzner.de lenny/main librpcsecgss3 0.18-1 [31.4kB] Get:5 ftp://mirror.hetzner.de lenny/main portmap 6.0-9 [36.0kB] Get:6 ftp://mirror.hetzner.de lenny/main ucf 3.0016 [64.4kB] Get:7 ftp://mirror.hetzner.de lenny/main nfs-common 1:1.1.2-6lenny1 [190kB] Get:8 ftp://mirror.hetzner.de lenny/main nfs-kernel-server 1:1.1.2-6lenny1 [150kB] Fetched 559kB in 0s (1650kB/s) Preconfiguring packages ... Selecting previously deselected package libevent1. (Reading database ... 14520 files and directories currently installed.) Unpacking libevent1 (from .../libevent1_1.3e-3_i386.deb) ... Selecting previously deselected package libgssglue1. Unpacking libgssglue1 (from .../libgssglue1_0.1-2_i386.deb) ... Selecting previously deselected package libnfsidmap2. Unpacking libnfsidmap2 (from .../libnfsidmap2_0.20-1_i386.deb) ... Selecting previously deselected package librpcsecgss3. Unpacking librpcsecgss3 (from .../librpcsecgss3_0.18-1_i386.deb) ... Selecting previously deselected package portmap. Unpacking portmap (from .../portmap_6.0-9_i386.deb) ... Selecting previously deselected package ucf. Unpacking ucf (from .../archives/ucf_3.0016_all.deb) ... Moving old data out of the way Selecting previously deselected package nfs-common. Unpacking nfs-common (from .../nfs-common_1%3a1.1.2-6lenny1_i386.deb) ... Selecting previously deselected package nfs-kernel-server. Unpacking nfs-kernel-server (from .../nfs-kernel-server_1%3a1.1.2-6lenny1_i386.deb) ... Processing triggers for man-db ... Setting up libevent1 (1.3e-3) ... Setting up libgssglue1 (0.1-2) ... Setting up libnfsidmap2 (0.20-1) ... Setting up librpcsecgss3 (0.18-1) ... Setting up portmap (6.0-9) ... Starting portmap daemon.... Setting up ucf (3.0016) ... Setting up nfs-common (1:1.1.2-6lenny1) ... Creating config file /etc/idmapd.conf with new version Creating config file /etc/default/nfs-common with new version Adding system user `statd' (UID 101) ... Adding new user `statd' (UID 101) with group `nogroup' ... Not creating home directory `/var/lib/nfs'. Starting NFS common utilities: statd. Setting up nfs-kernel-server (1:1.1.2-6lenny1) ... Creating config file /etc/exports with new version Creating config file /etc/default/nfs-kernel-server with new version Starting NFS common utilities: statd. Exporting directories for NFS kernel daemon.... Starting NFS kernel daemon: nfsd mountd. Debian-50-lenny-32-minimal:~# mkdir /var/nfs Debian-50-lenny-32-minimal:~# chown nobody.nogroup /var/nfs
Welche Verzeichnisse als NFS Volume exportiert werden und wer drauf zugreifen darf, steht in der Datei /etc/exports
. Hier ein Eintrag, der den Zugriff von einer bestimmten IP-Adresse ohne Passwortabfrage gestattet.
/var/nfs 192.168.1.2(rw,sync,no_subtree_check)
Auf der Clientseite wird ein NFS-Volume wie folgt gemountet:
mount 192.168.1.2:/var/nfs /mnt