Accueil > Trucs & Astuces > NFS > Partage NFS (part1)

Partage NFS (part1)

En tant que fervent utilisateur de GNU/Linux (attention, il faut écrire et dire GNU/Linux, c'est Richard Stallman en personne qui me l'a dit) et particulièrement de Debian, je souhaitais mettre sur mon réseau local domestique un serveur de fichiers et que celui-ci soit capable de partager ces disques durs internes (4) et externes (3), histoire de tout centraliser. 
J'ai donc réalisé un script capable de détecter les disques durs externes (USB) au démarrage de mon serveur, de les monter, et de les partager via NFS et voilà ce que ça donne : mount-usb.

Normalement, il suffit de placer ce fichier dans le répertoire /etc/init.d de Debian et surtout de disposer des droits d'administration sur le serveur. 

On devient d'abord root avec :

$ su

ou avec :

$ sudo su

Tout dépend de comment vous avez configurer votre serveur. Ensuite on copie le script dans le bon répertoire :

# cp mount-usb /etc/init.d

Il ne reste plus qu'à rendre ce script exécutable :

# cd /etc/init.d
# chmod +x mount-usb

Et à faire comprendre au système qu'il faut exécuter ce script au lancement du serveur :

# update-rc.d mount-usb defaults

Voilà, si tout c'est bien passé (il devrait y avoir quelques warnings à l'exécution de la dernière commande), vous pouvez brancher un disque dur externe à votre serveur et lancer la commande :

# service mount-usb start

Si tout ce passe bien, vous devriez avoir un résultat similaire à celui-ci :

Starting USB mount
        Detecting /dev/sdf5 UUID=14A8C8D1A8C8B312, 
        LABEL=L_externe_2, FSTYPE=ntfs
                Adding /dev/sdf5 in /etc/fstab
                Adding /dev/sdf5 in /etc/exports
        Detecting /dev/sdg1 UUID=A24C78B54C788637, 
        LABEL=Externe1, FSTYPE=ntfs
                Adding /dev/sdg1 in /etc/fstab
                Adding /dev/sdg1 in /etc/exports
        Mounting all devices
        Reloading NFS server
Re-exporting directories for NFS kernel daemon....
Done

Allez jeter un coup d'oeil (mais sans vous faire mal hein !) dans /etc/fstab et dans /etc/exports, vous devriez voir certaines modifications.

À chaque fois que vous ajouter un disque dur externe à votre serveur, vous devrez exécuter cette commande. Maintenant voyons comment débrancher le disque dur USB. Il n'est pas très bon de débrancher le disque dur alors qu'il est encore monté sur le système. Pour cela, tapez la commande suivante :

# service mount-usb stop

Cela aura pour effet de démonter tous les disques durs externes. Vous pourrez alors les débrancher du serveur. Le résultat de cette commande devrait ressembler à cela :

Stopping USB mount
Unmount /mnt/L_externe_2
Unmount /mnt/Externe1
Re-exporting directories for NFS kernel daemon....

Bien entendu, si les disques étaient partagés, il n'est pas improbable que votre Debian vous signale que le disque ne peut pas être démonté car il est occupé et vous aurez alors le résultat suivant :

Stopping USB mount
Unmount /mnt/L_externe_2
umount: /mnt/L_externe_2: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))
Unmount /mnt/Externe1
umount: /mnt/Externe1: device is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))
Re-exporting directories for NFS kernel daemon....

Cela signifie que vous devez démonter le partage sur l'ordinateur distant.

VOIR LA DEUXIÈME PARTIE >>