Configurando o NFS Server no OpenBSD 5.2

E ai galera, aqui eu vou abordar a configuração do NFS Server no OpenBSD 5.2, por padrão o serviço já vem instalado no OpenBSD com isso somente precisamos configurar ele.

O que vou utilizar:

  1. Ip do servidor: 10.101.0.102
  2. Rede Local: 10.101.0.0/24
  3. Compartilhamento: /srv/arquivos

Vamos inserir os daemons necessários na inicialização do sistema, que são o portmap e o nfs_server

echo "portmap=YES" >> /etc/rc.conf.local
echo "nfs_server=YES" >> /etc/rc.conf.local

Agora vamos configuração o arquivo de exportação de compartilhamento podemos obter mais informações sobre opções do exports da seguinte forma

man 5 exports

Vamos a edição do nosso arquivo

vim /etc/exports
#       $OpenBSD: exports,v 1.2 2002/05/31 08:15:44 pjanzen Exp $
#
# NFS exports Database
# See exports(5) for more information.  Be very careful:  misconfiguration
# of this file can result in your filesystems being readable by the world.

#Aqui vamos exportar o diretório /srv/arquivos e todos os seus sub-diretórios para a rede 10.101.0.0/24
/srv/arquivos -alldirs -network=10.101.0.0 -mask=255.255.255.0

Agora vamos criar o diretório que vamos compartilhar

mkdir -p /srv/arquivos

Agora vamos dar permissão total neste diretório

chmod -R 777 /srv/arquivos

Agora vamos iniciar os serviços necessários

Vamos iniciar o portmap

portmap

Agora precisamos iniciar o nfs server

nfsd -tun 4

E por último precisamos inicializar o mountd

mountd

Agora vamos checar se o nfs está funcionando

rpcinfo -p 10.101.0.102
   program vers proto   port
    100000    2   tcp    111  portmapper
    100000    2   udp    111  portmapper
    100005    1   udp    625  mountd
    100005    3   udp    625  mountd
    100003    2   udp   2049  nfs
    100005    1   tcp    709  mountd
    100005    3   tcp    709  mountd
    100003    3   udp   2049  nfs
    100003    2   tcp   2049  nfs
    100003    3   tcp   2049  nfs

Ele está respondendo corretamente

Vamos listar os compartilhamentos exportados pelo nosso servidor

showmount -e 10.101.0.102
Exports list on 10.101.0.102:
/srv/arquivos                      10.101.0.0

Agora vamos ver como montar o compartilhamento em um servidor BSD ou cliente MAC

Vamos criar o diretório para o nosso ponto de montagem

mkdir /nfs

Agora precisamos montar o compartilhamento

mount_nfs -P 10.101.0.102:/srv/arquivos /nfs

Agora vamos listar os nossos pontos de montagens

df
Filesystem                 512-blocks      Used     Avail Capacity  Mounted on
/dev/wd0a                     1496188    121028   1300352     9%    /
/dev/wd0k                    14129788         4  13423296     0%    /home
/dev/wd0d                     2386300         8   2266980     0%    /tmp
/dev/wd0f                     3153148   1636352   1359140    55%    /usr
/dev/wd0g                     1833212         4   1741548     0%    /usr/X11R6
/dev/wd0h                     6807676    159944   6307352     2%    /usr/local
/dev/wd0j                     3686716   2331952   1170432    67%    /usr/obj
/dev/wd0i                     2596156   1781300    685052    72%    /usr/src
/dev/wd0e                     3647196     16688   3448152     0%    /var
10.101.0.102:/srv/arquivos    1496188    121028   1300352     9%    /nfs

Podemos colocar esse ponto de montagem para subir na inicialização do sistema adicionando ele no /etc/fstab da seguinte forma

vim /etc/fstab
[...]
10.101.0.102:/srv/arquivos /nfs nfs rw,nodev,nosuid 0 0

Agora vamos ver a montagem em um cliente Linux

Precisamos mandar instalar os pacotes de suporte a nfs

aptitude install nfs-client nfs-common -y

Vamos criar o diretório para o nosso ponto de montagem

mkdir /nfs

Agora vamos mandar montar o compartilhamento

mount -t nfs 10.101.0.102:/srv/arquivos /nfs

Agora vamos listar os nossos pontos de montagem

df
Sist. Arq.    Tipo    Size  Used Avail Use% Montado em
/dev/sda1     ext3    323M  214M   93M  70% /
tmpfs        tmpfs    186M     0  186M   0% /lib/init/rw
udev         tmpfs    181M  184K  181M   1% /dev
tmpfs        tmpfs    186M     0  186M   0% /dev/shm
/dev/sda9     ext3    2,8G  372M  2,3G  14% /home
/dev/sda8     ext3    234M  6,1M  216M   3% /tmp
/dev/sda5     ext3    2,8G  822M  1,9G  31% /usr
/dev/sda6     ext3    1,4G  303M 1007M  24% /var
10.101.0.102:/srv/arquivos
               nfs    731M   60M  635M   9% /nfs

Podemos colocar esse ponto de montagem para subir na inicialização do sistema adicionando ele no /etc/fstab da seguinte forma

vim /etc/fstab
[...]
10.101.0.102:/srv/arquivos /nfs nfs rw,nodev,nosuid 0 0

No Debian precisamos fazer um ajuste no arquivo de configuração do nfs-common para que os compartilhamentos subam na inicialização

vim /etc/default/nfs-common
[...]
NEED_STATD=yes
[...]
STATDOPTS=yes

Com isso depois que o cliente reiniciar ele já vai montar automaticamente

Referências