Monter automatiquement des disques distants :

Bonjour,

Suite à ce fil http://forum.debian-fr.org/viewtopic.php?f=3&t=11532&p=112869#p112869 dans lequel je voulais automatiser le montage et le démontage de disques distants depuis des machines clientes sous Debian ou Ubuntu, selon les conseils de Mattotop, j’ai creusé la question d’utiliser autofs.

Comme je trouve que la documentation est un peu imbuvable, je me permets de faire un petit tutorial.

Rappel du contexte : vous avez un serveur de fichiers sur lequel sont des disques durs. Dans mon cas, ce serveur est sous Windows XP (personne n’est pas parfait !). Vous avez une ou plusieurs machines clientes sous Debian (ou autre GNU/Linux) qui doivent accéder à ces disques durs distants, via le réseau local filaire ou Wifi (on doit aussi pouvoir le faire au travers du net avec autofs, mais je n’ai pas testé).

La solution de base consiste à monter les disques distants dans /etc/fstab. Mais elle a 2 inconvénients :

  1. Si le serveur n’était pas allumé au moment du démarrage du client Debian, les disques ne sont pas montés. Il faut donc les monter à la main à coup de mount. Comme mount nécessite les droits root, c’est un peu compliqué pour les simples utilisateurs.
  2. Quand le serveur est éteint alors que vos clients restent actifs, Nautilus se met à ramer fort, car il cherche à ouvrir des disques distants injoignables !

autofs évite tout cela.

Edit : Sur d’autres installations, je me suis aperçu qu’il fallait aussi installer smbfs pour que tout fonctionne (je ne sais pas pourquoi…). Donc, en phase 0, il faut faire :

1ère chose à faire : installer autofs :

L’installation va créer un certain nombre de fichiers dans /etc, comme par exemple :

auto.master auto.misc auto.net auto.smb
auto.master est un fichier très important qui est appelé par le démon autofs.
C’est dans ce fichier que commence votre configuration.
Il vous faut éditer ce fichier en root et y ajouter une ligne (au moins une) du genre :

Edit : La 1ère colonne correspond au point de montage de votre choix qui sera créé par autofs (un nouveau dossier sera visible dans /media/)
La 2ème colonne désigne l’appel d’un 2ème fichier que vous pouvez nommer comme vous voulez (dans mes recherches, j’ai souvent lu que pour monter un disque distant, il devait s’appeler /etc/auto.smb, c’est faux car /etc/auto.smb est un script installé par le paquet autofs).
La 3ème colonne définit le temps en secondes qui autorisera autofs à démonter automatiquement le disque distant s’il n’est plus utilisé.

Il vous faut maintenant créer un fichier /etc/auto.hp-fixe (ou le même nom que celui que vous aurez défini dans /etc/auto.master) avec autant de lignes de montage que vous avez de disques durs distants.
Dans mon cas, voici mon fichier :

datas -fstype=cifs,credentials=/root/.smbcredentials,uid=0,gid=0,iocharset=utf8,workgroup=chaurin ://hp-fixe/datas media -fstype=cifs,credentials=/root/.smbcredentials,uid=0,gid=0,iocharset=utf8,workgroup=chaurin ://hp-fixe/media
La 1ère colonne spécifie le nom du disque qui apparaîtra sur la machine cliente.
La 2ème colonne définit le type de montage après “-fstype=” (voir man smbmount pour plus de détails). Personnellement, j’ai copié une partie de ces paramètres de mon ancien fichier /etc/fstab.
NB important : les uid et gid sont dans mon cas ceux de root. Ils peuvent être ceux d’un autre utilisateur, voire d’un groupe d’utilisateur. Le fichier /root/.smbcredentials est à créer bien sûr. Il comporte 2 lignes :

username = celui_que_vous_voulez password = mot_de_passe
La 3ème colonne définit le point de montage (que j’ai récupéré aussi de /etc/fstab).

Une fois tout ça fait, il vous faut relancer autofs par la commande : # /etc/init.d/autofs restart
Un disque supplémentaire doit être visible sur votre bureau, ayant le nom de votre point de montage (hp-fixe pour mon cas). En cliquant sur ce disque, vous verrez tous les disques disponibles listés dans le fichier lié à /etc/auto.master (dans mon cas : /etc/auto.hp-fixe). En cliquant sur l’un de ces disques, vous avez un accès direct à vos données.

Au bout de 120 secondes (réglables dans le fichier /etc/auto.master), si vous n’avez plus accéder à l’un des disques distants, autofs les démonte tout seul.

Voilà, à vous de jouer.

NB : on peut aussi utiliser autofs pour monter des disques amovibles, mais ça n’est plus utile maintenant car bien souvent, ils sont montés tout seul.

1 J'aime

Inscrit

supert :slightly_smiling: :smt023

Pour compléter ce T&A intéressant:

[ul]
[li]
Il n’est pas nécessaire de faire un mkdir sur le point de montage (/media/hp-fixe dans l’exemple plus haut), automount s’en chargera automatiquement et l’option ghost fera en sorte qu’il apparaisse même si pas monté.

[/li]
[li]Pour NFS, voici ce qui marche bien:

[code]# Options

soft if the server fails to respond, return an error after the

timeout period ( -timeo=value ) expires and don’t bother to try again

intr allow keyboard interrupts to kill the process that is hung

waiting for the server that is down.

data -rsize=8192,wsize=8192,intr,soft,timeo=5,rw serveur-nfs:/data
web -rsize=8192,wsize=8192,intr,soft,timeo=5,rw serveur-nfs:/var/www
[/code]

[/li]
[li]Enfin, ne pas oublier de supprimer toute entrée du fstab qui pointerait sur le même point de montage, autofs et umount détestent ça! Prise de tête garantie :wink:

[/li]
[li]Pour débuger, essayer les options status, getmounts et active de autofs:

Lien: linux-consulting.com/Amd_AutoFS/autofs.html

Attention, en voulant monter un autre disque distant, je me suis aperçu qu’il fallait s’assurer que le nom la machine distante était bien identifiée dans le fichier /etc/hosts (ce qui suppose une adresse IP fixe).

Dans le cas contraire, le disque distant n’est jamais reconnu, et un message d’erreur apparaît (sans être très explicite).

Bonjour,

Merci pour ce tuto, je déterre car j’ai lu que le paquet smbfs est obsolète dans ce cas quelle est le paquet à utiliser pour connecter des clients Ubuntu 16.04 sur un serveur microsoft ? cifs-utils ?

Merci

Effectivement
fp2@debpacha:~$ lsb_release -i -r Distributor ID: Debian Release: 9.0 fp2@debpacha:~$ aptitude search smbfs fp2@debpacha:~$
autrement dit, il n’y a plus de paquet smbfs pour debian 9 stretch.

Vous avez répondu vous-même : cifs-utils

Cordialement,
Regards,
Mit freundlichen Grüßen,
مع تحياتي الخالصة

F. Petitjean
Ingénieur civil du Génie Maritime.

« Ubuntu is an ancient african word, meaning “I can’t configure Debian” »
http://www.urbandictionary.com/define.php?term=ubuntu

1 J'aime

Je me permet d’ajouter un petit tip dans le cas d’un montage sshfs:
les tutos existants, et même la doc debian en ligne parlent de mappage au format:

monRepertoire -fstype=fuse,port=22,rw,allow_other :sshfs\#login@machine\:/media/share

En fait, c’est obsolète, ça doit ressembler à:

monRepertoire -fstype=fuse.sshfs,port=22,rw,allow_other :login@machine:/media/share
même pas besoin de quoter les deux points.

Et autre chose, pour déboguer l’autofs quand ça ne marche pas, il faut arrêter le service:
systemctl stop autofs
Puis le lancer en mode verbeux:
automount -f -v -d
(en root, bien sûr)
En mode verbeux, il y a un moment ou l’autofs indique quelle commande “mount” il essaye de faire précisément, c’est pratique pour comprendre ce qui peut coincer.