GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar el servidor NFS en Ubuntu 20.04 LTS

En este tutorial, le mostraremos cómo instalar el servidor NFS en Ubuntu 20.04 LTS. Para aquellos de ustedes que no lo sabían, NFS o Network File System es un protocolo de sistema de archivos distribuido. Puede ayudarlo a compartir archivos y directorios completos con otras personas a través de una red. Permite que los programas en sistemas remotos compartan y accedan a información entre sí como si estuviera disponible en una máquina local. Esta tecnología le brinda la flexibilidad de compartir un recurso a través de múltiples sistemas.

Este artículo asume que tiene al menos conocimientos básicos de Linux, sabe cómo usar el shell y, lo que es más importante, aloja su sitio en su propio VPS. La instalación es bastante simple y asume que se están ejecutando en la cuenta raíz, si no, es posible que deba agregar 'sudo ' a los comandos para obtener privilegios de root. Le mostraré la instalación paso a paso del servidor NFS en Ubuntu 20.04 (Focal Fossa). Puede seguir las mismas instrucciones para Ubuntu 18.04, 16.04 y cualquier otra distribución basada en Debian como Linux Mint.

Usamos dos máquinas, una con Ubuntu 20.04, que actuará como un servidor NFS, y otra con cualquier otra distribución de Linux en la que montaremos el recurso compartido. Las máquinas de este ejemplo tienen las siguientes direcciones IP:

NFS Server IP: 192.168.77.20
NFS Clients IPs: From the 192.168.77.0/24 range

Instalar servidor NFS en Ubuntu 20.04 LTS Focal Fossa

Paso 1. Primero, asegúrese de que todos los paquetes de su sistema estén actualizados ejecutando el siguiente apt comandos en la terminal.

sudo apt update
sudo apt upgrade

Paso 2. Instalación del servidor NFS en Ubuntu 20.04.

Ahora ejecutamos el siguiente comando para instalar el paquete del servidor kernel NFS:

sudo apt install nfs-kernel-server

Puede verificar si el nfs-server el servicio se está ejecutando como se muestra:

sudo systemctl status nfs-server

Paso 3. Creación de directorios compartidos en el host.

Creación de un directorio que se compartirá entre los sistemas cliente:

sudo mkdir /var/nfs/general -p

Dado que queremos que los sistemas cliente tengan acceso total a este directorio compartido, debemos eliminar todos los permisos de directorio que restringen el acceso:

sudo chown nobody:nogroup /var/nfs/general

Paso 4. Configure NFS en el host.

Profundizaremos en el archivo de configuración de NFS para configurar el uso compartido de estos recursos:

sudo nano /etc/exports

Agregue las siguientes líneas:

/var/nfs/general client_ip(rw,sync,no_subtree_check)
/home client_ip(rw,sync,no_root_squash,no_subtree_check)

Para opciones básicas de exportación:

Finalmente, reinicie el servidor NFS para aplicar los cambios:

sudo systemctl restart nfs-kernel-server

Paso 5. Configuración del cortafuegos.

Debe permitir el acceso a través del firewall; de lo contrario, será imposible acceder y montar el directorio compartido. Para lograr esto, ejecute el siguiente comando:

sudo ufw allow from 192.168.77.0/24 to any port nfs
sudo ufw enable
sudo ufw status

Paso 6. Configure los clientes NFS.

En las máquinas cliente, necesitamos instalar solo las herramientas necesarias para montar un sistema de archivos NFS remoto.

  • Instalar cliente NFS en Debian y Ubuntu

Ejecute el siguiente comando para instalarlo:

sudo apt install nfs-common
  • Crear puntos de montaje en el cliente.

Ahora creamos dos directorios para montajes en el cliente:

sudo mkdir -p /nfs/general
sudo mkdir -p /nfs/home

Luego, monte los recursos compartidos usando la dirección IP del anfitrión:

sudo mount host_ip:/var/nfs/general /nfs/general
sudo mount host_ip:/home /nfs/home

Verifique que los sistemas de archivos remotos se hayan montado correctamente mediante el comando mount o df comando:

df -h

Para hacer que los montajes sean permanentes al reiniciar, abra /etc/fstab archivo y agregue las siguientes líneas:

sudo nano /etc/fstab

Agregue la siguiente línea:

192.168.77.10:/var/nfs/general /nfs/general  nfs defaults,timeo=900,retrans=5,_netdev 0 0
192.168.77.10:/home /nfs/home                nfs defaults,timeo=900,retrans=5,_netdev 0 0

Paso 7. Pruebe el uso compartido de NFS.

Ahora creamos un archivo de prueba para el /var/nfs/general compartir:

sudo touch /nfs/general/general.test

Comprueba su propiedad:

$ ls -l /nfs/home/home.test
-rw-r--r-- 1 root root 0 Aug 1 13:32 /nfs/home/home.test

Paso 8. Desmontar el sistema de archivos NFS.

Si el recurso compartido NFS remoto ya no es necesario, puede desmontarlo como cualquier otro sistema de archivos montado mediante umount comando:

sudo umount /general

¡Felicitaciones! Ha instalado correctamente el servidor NFS. Gracias por usar este tutorial para instalar el servidor NFS en el sistema Ubuntu 20.04 LTS Focal Fossa. Para obtener ayuda adicional o información útil, le recomendamos que consulte el sitio web oficial Sitio web de NFS.


Ubuntu
  1. Cómo instalar el servidor de Minecraft en Ubuntu 18.04 LTS

  2. Cómo instalar Ubuntu Server 18.04 LTS

  3. Cómo instalar Docker en el servidor Ubuntu 18.04 LTS

  4. Cómo instalar Discourse en Ubuntu 20.04 LTS

  5. Cómo instalar GlassFish en Ubuntu 18.04 LTS

Cómo instalar Nginx en Ubuntu 18.04 LTS

Cómo instalar uTorrent en Ubuntu 18.04 LTS

Cómo instalar el servidor SSH en Ubuntu 18.04 LTS

Cómo instalar Couchbase en Ubuntu 18.04 LTS

Cómo instalar el servidor VNC en Ubuntu 18.04 LTS

Cómo instalar el servidor de Minecraft en Ubuntu 18.04 LTS

    Opción Descripción
    rw Permitir solicitudes de lectura y escritura en un volumen NFS.
    ro Permitir solo solicitudes de lectura en un volumen NFS.
    sincronizar Responda a las solicitudes solo después de que los cambios se hayan confirmado en un almacenamiento estable. (Predeterminado)
    asincrónica Esta opción permite que el servidor NFS infrinja el protocolo NFS y responda a las solicitudes antes de que los cambios realizados por esa solicitud se hayan confirmado en un almacenamiento estable.
    seguro Esta opción requiere que las solicitudes se originen en un puerto de Internet menor que IPPORT_RESERVED (1024). (Predeterminado)
    inseguro Esta opción acepta todos los puertos.
    wretraso Retrase levemente la confirmación de una solicitud de escritura en un disco si sospecha que otra solicitud de escritura relacionada puede estar en curso o puede llegar pronto. (Predeterminado)
    sin_wdelay Esta opción no tiene efecto si también se establece asíncrono. El servidor NFS normalmente retrasará ligeramente la confirmación de una solicitud escrita en un disco si sospecha que otra solicitud de escritura relacionada puede estar en curso o puede llegar pronto. Esto permite enviar varias solicitudes de escritura al disco con una sola operación, lo que puede mejorar el rendimiento. Si un servidor NFS recibió principalmente pequeñas solicitudes no relacionadas, este comportamiento podría reducir el rendimiento, por lo que no_wdelay está disponible para desactivarlo.
    subtree_check Esta opción activa la comprobación de subárboles. (Predeterminado)
    no_subtree_check Esta opción deshabilita la verificación de subárboles, lo que tiene implicaciones leves de seguridad pero puede mejorar la confiabilidad en algunas circunstancias.
    raíz_calabaza Asignar solicitudes de uid/gid 0 al uid/gid anónimo. Tenga en cuenta que esto no se aplica a ningún otro uid o gid que pueda ser igualmente confidencial, como el contenedor de usuarios o el personal del grupo.
    no_root_squash Desactive el aplastamiento de raíces. Esta opción es principalmente útil para clientes sin disco.
    todo_calabaza Asigne todos los uid y gid al usuario anónimo. Útil para directorios FTP públicos exportados por NFS, directorios de colas de noticias, etc.
    no_all_squash Desactive todos los aplastamientos. (Predeterminado)
    anonuid=UID Estas opciones configuran explícitamente el uid y el gid de la cuenta anónima. Esta opción es principalmente útil para clientes de PC/NFS, en los que es posible que desee que todas las solicitudes parezcan ser de un solo usuario. Como ejemplo, considere la entrada de exportación para /home/joe en la sección de ejemplo a continuación, que asigna todas las solicitudes a uid 150.
    anongid=GID Leer arriba (anonuid=UID)