26 oct 2009

NFS a Pata....

En entradas anteriores, presumi como mi CenTOS 5.2 ya taba papas para configurar el NFS (Network File System) y poder compartir carpetas en linux y montarlas en otra pc y accesarla como si de una carpeta local se tratase...

Bien ahora como hacer lo mismo pero sin tener el GUI osea las ventanitas y el click derecho del ratoón XD que dicese de paso.. como ayuda ...

Bien nuevamente auxiliandonos de la documentación de proyecto : Setting Up an NFS Server .

Primero, en la maquina que será el servidor; es decir; aquella máquina donde estará fisicamente la carpeta que compartiremos con nuestros otros equipos. Buscaremos los archivos /etc/exports: Este archivo contiene una lista de todas las cosas que compartiremos y como lo compartiremos, si algun ocioso quiere leerse el man de este archivo lo puede hacer man exports.

En este archivo una entrada común la veremos más o menos así.

directory maquina1(option11,option12)
machine2(option21,option22)

Donde:
-directory:
Es el directorio que tu quieres compartir, todos los subdirectorios bajo este estarán igualmente compartidos(algo medio obvio no, weno pa cuando en mi windows comparto algo pos se supone que todo lo que este allí hasta las subdirectorios, pero en el ambiente linux no es algo que se de por sentado si no se especifica)
-maquina1 y maquina 2:
Son las maquinas clientes que podran tener acceso al directorio dado. Las maquinas pueden estar listadas por su IP o por su nombre.(Por ejemplo machine.company.com) pero bueno como es a pata.. pa que meternos en bronca con el nombre de la maquina mejor con ip más rapido y menos bronca.
-optionxx: Las opciones para cada máquina describen el tipo de acceso que esa máquina tendra a la carpeta cliente, recordemos que en linux eso de los permisos no son tan a la ligera, es decir, que puedas ver algun archivo no quiere decir que lo puedas editar, y cosas como esas; las opciones que le podemos decir a nuestras maquinas clientes son:
+ ro : Solo hay chance pa tar de mirón; es decir; leer solamente.
+ rw: Ya har chance de meter mano XP; es decir, ya podemos leer y escribir en el directorio.
+ no_root_squash: Con este pelas al usuario root de la maquina cliente; es decir; si no la especificas; si en una maquina cliente te logeas como el usuario todopoderoso root, cualquier cosas que hagas en la carpeta compartida sera tratada como nobody(cualquiera), es decir no tienes permisos de root en la carpeta compartida si no lo indicas.. obvio solo le daras esos privilegios a las maquinas que en verdad lo necesiten no esta de mas decir que si le das acceso a medio mundo para que haga lo que quiera creeme lo haran. Asi que cuidado con esta etiqueta. No es grato ver los desastres que hacen los usuarios con privilegios que no tienen ni idea de como usar XD.
+ no_subtree_check: Esta es pa cuando te poner belico, si solo compartes una partede de toda la carpeta, con esta opcion aseguras mantenerlo a la raya, es decir; habra una rutina que verifica que los archivos y cosas que haga la maquina cliente esten alojados en la sección que le has compartido solamente.
+ sync: Por default el comportamiento es asincrono; es decir; si nos dice ya se escribio o guardo pues no es cierto.. jaja XD y pos ya saben un apagón y bla bla le da en su mauser; asi que sin son medios paranoicos y quieren que cuando le diga ya se guardo sea eso y no otro cunche pos ocupen esta opción y listo XD.

En la supongancia XD; es decir; suponiendo que tenemos un cliente nomas al que llamaremos node1 y tiene la ip 192.168.1.1 y queremos que este fulano tenga chance de ver, copiar y poner lo que se le venga en gana en un directorio que tenemos en nuestra maquina, nuestro archivo exports quedaria ma o menos asi:

/usr/local/chunches 192.168.1.1(rw)

Pero aqui nomas le damos chance a un fulano.. que pasa si queremos darle chance a todos los fulanos que estan en la red porque a como son chismosos y envidiosos y tambien quieren XD jjee bueno pos tons quedaria ma o menos asi:

/usr/local/chunches 192.168.1.0/255.255.255.0(rw)

Y listo terminamos con el archivo exports.

Ahora a darle con los archivos /etc/host.allow y /etc/host.deny.
Estos dos archivos especifican cuales computadoras en la red pueden usar el servicio de nuestro cacharro. Cada linea de estos archivos conteine un sola entrada que lista un servicio y un grupo de maquinas.

Pa no hacerla cansada... estos archivos hacen que el flujo sea de la siguiente manera.
1 .- Primero revisamos si el cacharro que hace la solicitud estan en host.allow si esta le da chance si no pos imaginate.. que se agarre.
2.-Si el cacharro no esta en host.allow el servidor revisa host.deny si esta en este pos ya valio la cosa porque nomas no tiene chance.
3.- Si no esta en ningún archivo pos ya se rayo porque le da chance..(Eso si no hay algun demonio por alli que lo mande al traste)

Ahora viene lo bueno hacer que este pedo jale,Primero el NFS dependen del demonio portmapper, el cual es conocido en los bajos mundos como portmap o rpc.portmap, asi que es el primero que deberemos de ver si esta despierto o bien jeto, si ta de jeta pos tenemos que depertarlo al wey, como sabemos su estado pues con un "service portmap status" si no esta pos a levantarlo con un "service portmap start".

DEMONIOS. Jejeje pos resulta que como es a pata pos tenemos que estar al pendiente de algunos demonios y no para maldecir que costes los cuales son:

rpc.nfsd : El cual hace casi toda la chamba.
rpc.lockd y rpc.stand : Estos manejan el bloqueo de los archivos.
rpc.mountd : El cual se encarga de las solicitudes del montado.
rpc.rquotad : El cual maneja las cuotas de los usuarios.

Estos angelitos normalemente estan en chinga desde que encedemos nuestro centos pero si por las moscas le damos una revisada... En caso de que no esten los mendigos.. pues loa agregamos al scripts de inicio es decir en el init.d.. en el siguiente orden:

rpc.portmap
rpc.mount,rpc.nfsd
rpc.startd,rpc.lockd
rpc.rquotad

Bien pues con todo estos demonios arriba debe estar el servidor listo y esperando las solicitudes de montado pa poner a trabajar a los listados arriba.

Ahora montar el cliente a pata... jaja pues alli esta el otro post... o a ver si me animo en otro rato jaja XD

1 comentario:

Pedro Aarón dijo...

Que onda mi buen Ulises, saludos y muy buena entrada. Espero la próxima