Ir al contenido principal

Exportando directorio publico con NFS

Hace algún tiempo pregunte si existía alguna forma de compartir archivos de una manera similar a como lo hace Windows (con el protocolo SMB).

Mas de alguno me indico que instalara Samba y con eso podía compartir archivos entre equipos linux usando el cliente, al igual que me indicaron que usara FTP.

Si bien hable sobre el FTP en mi anterior post y es buena idea, tenia que estar abriendo el cliente para transferir, y aunque puedes cargar un directorio en los administradores de archivos (como Thunar) no me era practico para lo que necesitaba.

El tema de Samba, si bien es bueno, el "pero" que le llegue a dar era que el paquete consume varios megas, por lo que tampoco me agrado.

Ya antes había escuchado de NFS, pero no tenia claro que era y como se utilizaba, y hace pocos días me di a la tarea de investigar que era y como se usaba y aquí les traigo un howto para usarse con un directorio publico (que todos puedan accesar).

Este manual explica como configurar un servidor NFS en CentOS, el cliente puede ser usado en cualquier otra distro, incluso Windows (ver aquí).

NFS significa Network File System (por sus siglas en ingles), A través de NFS un cliente puede accesar (escribir, leer) un recurso remoto compartido de un servidor NFS como si estuviera en tu disco local, así manos a la obra.

1. Notas preliminares

Mi escenario:

  • Servidor CentOS NFS
  • Cliente Xubuntu

2. Instalando NFS

En el servidor ejecutamos:


# yum install nfs-utils nfs-utils-lib

Posterior creamos el link de inicio del servidor NFS y lo iniciamos:


# chkconfig nfs on
# service nfs start

3. Exportando Directorios en el Servidor

En el servidor:

En mi caso deseo permitir el acceso a al directorio /shared para el cliente; para esto necesito "exportar" el directorio en el servidor

Por default NFS utiliza el usuario nobody (uid=65534 y guid=65534), por lo que es necesario definir el directorio con estas características, para lo que es necesario hacer:

# chown -R 65534:65534 /shared/
Una vez el directorio esta listo, es necesario definir la exportación, esto se hace en el archivo /etc/exports. Te recomiendo darle un vistazo al manual de archivo para mas opciones, esto lo puedes ver con:

# man 5 exports
Bien, ahora editamos el archivo y definidos la regla de exportación  (esto lo puedes hacer con tu editor favorito), ejemplo:

# vim /etc/exports

/shared 192.168.1.0/24(rw,sync,root_squash,all_squash)
En este ejemplo esto definiendo que toda mi sub-red tendrá permisos de accesar. Una vez modificado el archivo hay que ejecutar:

# exportfs -a

Listo, del lado del servidor quedo listo.

En el cliente:

En mi caso tengo XUbuntu, por lo que en mi directorio de usuario cree un directorio que llame "Compartido", esto lo hice con:

uribes@local-hp:~$ mkdir Compartido

Posterior hice el montaje del compartido de NFS

uribes@local-hp:~$ sudo mount -o rw 192.168.1.70:/shared Compartido/
Con lo anterior quedo montado, en la siguiente imagen podrán ver el contenido del compartido, el mismo ya tenia un directorio y estoy creando uno nuevo.



Bueno ahí tienen, que se diviertan, saludos.

Comentarios

Publicar un comentario

Son bienvenidos tus comentarios, solo se respetuoso. Saludos

Entradas más populares de este blog

Como montar particiones LVM en Linux

Como están lectores, reportandome después de varios meses fuera. Hace un par de días vi un howto que me gusto y quiero compartir. Nota: lo siguiente es una traducción, el original lo pueden ver el siguiente link: How to mount an LVM partition on Linux Introducción LVM es una herramienta de administración de volúmenes lógicos (particiones) la cual te permite administrar el espacio de disco usando la connotación de volúmenes lógicos y grupo de volúmenes. El mayor beneficio de usar LVM sobre las particiones clásicas es la flexibilidad en la asignación de almacenamiento para usuarios y aplicaciones sin verse limitado por el tamaño de los discos individuales. En LVM, el almacenamiento físico, en el cual se crean los volúmenes lógicos, son particiones tradicionales (/dev/sda1, /dev/sda2). Estas particiones deben ser marcadas como "volúmenes físicos" y etiquetadas como "Linux LVM", esto para ser usadas en LVM. Como no montar Unas vez que las particiones h

Configurando interfaces de red virtuales en Linux

Estimados, de nuevo en acción retomando mi rumbo. Les traigo un traducción de un howto que me llamo la atención y creo que es bueno tener información en castellano. Así que aquí esta: La entrada original la pueden tener aqui (si te gusta leer en ingles), comencemos. Introducción ¿Sabia que puedes asignar mas de una dirección IP a una única interfaz de red? Esta técnica es muy utilizada, por ejemplo cuando se trabaja con Apache y host virtuales, esto para permitir accesar al mismo servicio pero usando dos direcciones IP. Interfaz de red virtual temporal  El proceso de crear interfaces de red virtual en +GNU/Linux  es muy simple. Esto involucra una ejecución simple del comando ifconfig ifconfig eth0:0 123.123.22.22 El comando anterior creara una nueva interfaz de red virtual basada en la interfaz física de eth0 . Lo condición mas importante para crear una interfaz de red virtual es la interfaz física de red, como en nuestro ejemplo, eth0 debe existir. El ejemplo comple

Como leer/visualizar archivos utmp, wtmp y btmp en Linux

Lectores, les paso este "Como" de linux, algo que debe ser usado por cualquier sysadmin de Linux. Esperando aportar conocimiento, aqui les dejo. Introducción. En sistemas operativos Linux/Unix todo es registrado en algun lado (los conocidos logs). La mayoria de registros del sistema se almacenan en el directorio /var/log . El directorio contiene registros relacionados a distintos servicios y/o aplicaciones. En este directorio tenemos algunos archivos como utmp , wtmp y btmp . Estos archivos contienen todo el detalle de registro de inicio (login) y termino (logout) de sesiones de usuarios ya sea local, sistemas remoto, como estado en el sistema, tiempo en linea, etc. Informacion sobre los archivos utmp : te mostrara informacion completa del acceso de usuarios, la terminal que usa, termino de sesion, eventos del sistema y el estado actual del mismo, etc. wtmp : contiene el historio del archivo utmp btmp : registros solo intentos fallidos de sesion. Como no