Objetivo
El objetivo es configurar la configuración básica de NFS cliente/servidor en Debian 9 Stretch Linux
Sistema operativo y versiones de software
- Sistema operativo: – Debian 9 Estiramiento
Requisitos
Acceso privilegiado a su instalación de Debian Linux.
Dificultad
FÁCIL
Convenios
- # – requiere que los comandos de Linux dados se ejecuten con privilegios de root, ya sea directamente como usuario root o mediante el uso de
sudo
comando - $ – requiere que los comandos de Linux dados se ejecuten como un usuario normal sin privilegios
Configuración del servidor NFS
Instalación del servidor NFS
El primer paso es instalar los binarios del servidor NFS. Para hacer eso usa apt
comando para instalar nfs-kernel-server
paquete:
# apt-get install nfs-kernel-server
Confirme que el servidor NFS está activo y funcionando:
# systemctl status nfs-kernel-server ● nfs-server.service - NFS server and services Loaded: loaded (/lib/systemd/system/nfs-server.service; enabled; vendor preset: enabled) Active: active (exited) since Mon 2017-06-05 14:20:17 AEST; 1min 8s ago Main PID: 1752 (code=exited, status=0/SUCCESS) linuxconfig systemd[1]: Starting NFS server and services... linuxconfig systemd[1]: Started NFS server and services.
Exportar directorio NFS
A continuación, necesitamos exportar el directorio NFS. Este directorio eventualmente se montará de forma remota, por lo tanto, se podrá acceder a él a través del host del cliente NFS. A los efectos de este tutorial, creamos y exportamos un directorio llamado /var/nfs-export
. Primero, cree un nuevo nfs-export
directorio:
# mkdir /var/nfs-export
Para fines de prueba, cree también un archivo de texto arbitrario:
# cd /var/nfs-export/ # echo LinuxConfig.org > file.txt # cat file.txt LinuxConfig.org
Una vez que esté listo, use su editor de texto favorito y cree una nueva entrada de exportación NFS dentro de /etc/exports
archivo de configuración. Por ejemplo:
/var/nfs-export *(rw,sync,no_subtree_check,no_root_squash)
La exportación anterior exportará /var/nfs-export
directorio a cualquier host con cualquier dirección IP con acceso de lectura y escritura. Esta es una exportación altamente insegura. Para obtener más ejemplos de exportación de NFS, ingrese $ man exports
.
Para aplicar cambios dentro de /etc/exports
archivo de configuración, vuelva a cargar todas las exportaciones de NFS con:
# exportfs -a
Si desea iniciar su servidor NFS después de reiniciar, debe habilitarlo con systemctl
comando systemd:
# systemctl enable nfs-kernel-server Synchronizing state of nfs-kernel-server.service with SysV service script with /lib/systemd/systemd-sysv-install. Executing: /lib/systemd/systemd-sysv-install enable nfs-kernel-server
Cliente NFS
Ahora que el directorio de exportación de NFS está disponible para un montaje remoto. Instalemos el cliente NFS en nuestro sistema cliente:
# apt-get install nfs-common
Cree un nuevo directorio que se usará como un punto de montaje NFS para montar de forma remota /var/nfs-export
previamente exportado directorio:
# mkdir /mnt/nfs
Monte el directorio de exportación NFS remoto:
# mount -t nfs YOUR-NFS-SERVER-IP:/var/nfs-export /mnt/nfs/
Verifique el contenido del directorio de exportación de NFS y pruebe el acceso de escritura creando una nueva test
vacía archivo:
# cat /mnt/nfs/file.txt LinuxConfig.org # touch /mnt/nfs/test # ls /mnt/nfs/ file.txt test
Para montar permanentemente el directorio de exportación NFS en su cliente NFS, inserte la siguiente línea en su /etc/fstab
archivo de configuración:
YOUR-NFS-SERVER-IP:/var/nfs-export /mnt/nfs/ nfs
Por el momento, los usuarios normales no tienen acceso de escritura a /mnt/nfs/
. Cualquier intento de escritura en este directorio será denegado con el siguiente mensaje de error:
$ touch /mnt/nfs/file touch: cannot touch 'file': Permission denied
Si bien existen soluciones múltiples y más seguras para este problema, la solución más rápida podría ser otorgar acceso de escritura a /mnt/nfs/
en el host del cliente a un usuario específico que necesita un acceso de escritura o para dárselo a todos. Ejemplo:
# chmod o+w /mnt/nfs/