M06: Administració de Sistemes operatius UF1: Administració avançada de sistemes operatius
ASIX-2 Pràctica 2f: Servei NFS
18-12-2018

PRÀCTICA 2f:  SERVEI NFS (NETWORK FILE SYSTEM)

CONDICIONS DEL TREBALL

1- Es comprovarà que funicona correctament el dia 18-12-18.
2- Comprovacions:
    a) Mostra el servidor NFS executant-se i amb l'ordre exportfs -v mostra les carpetes exportardes
    b) Mostra des d'Ubuntu amb df -Th que has muntat la carpeta exportada pel servidor tal com s'indica a la secció 3 de l'apartat 3.
    c) Fes les accions indicades a les seccions 4 i 5 de l'apartat 3
    d) Mostra des de Windows que has muntat la carpeta exportada pel servidor tal com s'indica a la secció 3 de l'apartat 4.
    e) Fes les accions indicades a les seccions 4 i 5 de l'apartat 4
   
PRÀCTICA

INTRODUCCIÓ

a) NFS
(Network File System) és un sistema client/servidor que permet els usuaris d'un equip client accedir a un sistema d'arxius (conjunt de fitxers i carpetes) que es troba al servidor per mitjà d'una xarxa com si aquestes sistema d'arxius  formés part de l'equip client.

b) Amb NFS L'usuari no veurà cap diferència entre carpetes i fitxers locals de l'equip client i carpetes i fitxers que es troben en el servidor. Per l'usuari es com si sempre treballés amb carpetes i fitxers locals.

c) El procés pel qual un servidor NFS permet a un client NFS accedir a un conjunt de les seves carpetes i fitxers s'anomena exportació. El servidor exporta una o diverses carpetes i fitxers a l'equip client, i d'aquesta manera l'equip client pot accedir-hi.

d) El servei NFS és multiplataforma, i això vol dir que també pot ser utilitzat per ordinadors Windows, Mac, etc...

e) El fitxer de configuració del servidor NFS és /etc/exports.

f) Els clients accedeixen als fitxers i carpetes exportats utilitzant l'ordre mount.

g) Documentació: http://recursostic.educacion.es/observatorio/web/gl/software/software-general/733-nfs-sistema-de-archivos-de-red

PART 1: Instal·lant i configurant  el servidor NFS de Debian per exportar el directori /home

 
1-
Instal·la el paquet nfs-kernel-server.

2- Comprova que després de la instal·lació, el servidor està funcionant
    * Executat systemctl status nfs-kernel-server i comprova que està actiu
    * Executa netstat -atupn i comprova que el programa rpc.mountd està en execució i escoltant per diversos ports.

3- Obre el fitxer /etc/exports i crea la següent entrada:

/mnt    *(ro,sync,no_subtree_check)

Aquesta entrada permet:
/mnt --> Exportar la carpeta /home del servidor
* -->  Qualsevol ordinador pot accedir-hi  sense importar el seu nom o IP
ro --> Accés amb permís de lectura
sync --> Assegura que només permet accedir a fitxers i carpetes que estan definitivament emmagatzemades en el disc del servidor. No permet accedir a fitxers o carptes en memòria cau. Assegura contra corrupció de les dades amb la contrapartida de pitjor rendiment.
no_subtree_check --> Evita algunes comprovacions que fa el servidor quan li arriba la petició d'acceś a un fitxer o carpeta.

NOTA 1: Es pot canviar sync per async i llavors es pot millorar el rendiment amb la contrapartida que la possible corrupció de dades  si cau el servidor.
NOTA 2: Es pot canviar ro per rw per donar permís d'escriptura/lectura. Tot i això, també haurem de tenir en compte els permisos del sistema.

4-
Executa l'ordre exportfs -a per actualitzar la taula de carpetes i fitxers compartits que serà llegida pel servidor quan és reiniciat. Si hi ha cap error, l'ordre informarà de quin tipus d'error s'ha produït.

5-
Reinicia el servidor i comprova el seu status per saber si tot ha funcionat correctament.

6- Executa dins de la carpeta mnt del servidor les següents ordres:   

    for i in {00..49}; do echo hola$i > fitxer$i; done   
    for i in {00..49}; do mkdir -p dir/dir$i; for j in {00..49}; do mkdir -p dir/dir$i/dir$i$j; done; done

    ln -s /home/asix2/dir link_dir
    ln -s /home/asix2/fitxer47 f47
   

Així podem omplir de contingut el directori /mnt.

PART 3: Instal·lant el programari pel client NFS  dins d'Ubuntu i muntant el sistema d'arxius exportat

1- Instal·la el paquet nf-common en el client per poder tenir el programari necessari per poder muntar amb l'ordre mount fitxers i carpetes exportades pel servidor via NFS.

2- Munta la carpeta exportada: Executa:
    * Crea la carpeta
/mnt/nfs en el client.
    * Modifica /etc/hosts per tenir associat l'adreça IP del servidor amb el seu nom.
    * Executa l'ordre:    mount   -t   nfs   xxxyyy-m06.xxxyyy.net:/mnt  /mnt/nfs     (a on recorda que xxxyyy-m06 és el nom del teu servidor i xxxyyy.net és el nom de domini)

3- Comprova amb l'ordre df -Th que s'ha muntat el directori /mnt del servidor dins de la carpeta /mnt/nfs del client.

4- Accedeix al directori /mnt/nfs i comprova que pots visualitzar tots els fitxers que vas crear a l'apartat anterior a la carpeta /mnt del servidor.
   
5- Crea dins del teu directori personal d'usuari normal una carpeta de nom srv_nfs. Copia tots els fitxers des de fitxer30 a fitxer39 del servidor dins de srv_nfs.

PART 4: Activitant NFS per Windows 7/8/10. Muntant el sistema d'arxius exportat

1- Accedeix a Inici --> Tauler de control  -->   Programes --> Programes i característiques --> Activa o desactiva les característiques del Windows. Selecciona "Client for NFS" dins de la secció "Service for NFS". 

2-
Modifica /etc/hosts per tenir associat l'adreça IP del servidor amb el seu nom.

3- Munta la carpeta exportada  dins de la unitat R: (o qualsevol altra lletra lliure) executant des de l'interpret d'ordres:
  mount  xxxyyy-m06.xxxyyy.net:/mnt  r:

4- Accedeix a la unitat R: i comprova que pots visualitzar tots els fitxers que vas crear a l'apartat anterior a la carpeta /mnt del servidor.

5- Crea dins del teu directori personal d'usuari normal una carpeta de nom srv_nfs. Copia tots els fitxers des de fitxer30 a fitxer39 del servidor dins de srv_nfs.