[RESOLU] /etc/fstab et _netdev


#1

Bonjour,
J’ai ajouter la ligne :

//mafreebox.freebox.fr/Disque\040dur /media/freebox cifs _netdev,rw,users,iocharset=utf8,uid=1000,sec=none,file_mode=0777,dir_mode=0777,vers=1.0 0 0

à /etc/fstab pour pouvoir profiter automatiquement du disque dur de ma freebox
Pourtant, même avec le paramètre _netdev, j’observe un [FAILED] rouge lors du boot et le disque n’est pas monté. Il devrait le faire lorsque le wifi est connecté, non ?
Je suis obligé de faire un

sudo mount -a

dans une fenêtre terminal pour le voir apparaître. Pourquoi ?
Ca le fait pour tous mes postes : mon pc sous Debian10 et mes framboises sous Raspbian9 et 10.
Cdt,
vr34


#2

De ce que j’ai compris ici en relisant:


En fait, le _netdev n’a pas de fonction concernant le mount lui même, c’est juste un flag qui apparait dans /proc/mounts (voir le premier commentaire) et destiné aux taches de boot qui s’executent aprés le mount.
Normalement, systemd est sensé effectuer les mounts qu’il considère comme locaux en premier, en analysant le fstab, et faire ensuite seulement les mounts distants, mais bizarrement, cifs est considèré comme un mount local (si j’ai bien compris l’article), donc AMA il doit se monter avant que le networmanager n’ai levé ta connection wifi, d’où le probléme.

Bref, je ne sais pas trop comment résoudre le probléme au niveau du fstab, mais pour mes mounts en sshfs, plutôt que de les mettre en fstab, j’ai contourné et configuré ça en autofs:
le mount distant ne se fait que quand j’ai besoin d’accèder au disque.
https://wiki.debian.org/AutoFs
https://doc.ubuntu-fr.org/autofs#samba_-_cifs


#3

Oublie le fstab. Fais cela avec une unité de montage systemd.
Tu crées un fichier /etc/systemd/system/media-freebox.mount (le nom est important) dans le quel tu mets :

[Unit]
Description=mount freebox samba share
Wants=network-online.target
After=network-online.target

[Mount]
Environment="SERVER='//mafreebox.freebox.fr/Disque dur'"
What=$SERVER
Where=/media/freebox
Type=cifs
Options=_netdev,cache=none,users,user,noacl,guest,rw,uid=1000,gid=1000,iocharset=utf8,vers=1.0
SloppyOptions=on
DirectoryMode=0755
TimeoutSec=10

[Install]
WantedBy=multi-user.target

Idéalement en remplaçant mafreebox.freebox.fr par son adresse IP sur le réseau local.
Ensuite tu actives avec :

systemctl enable media-freebox.mount

EDIT
Référence : https://www.freedesktop.org/software/systemd/man/systemd.mount.html
Les unités de montage doivent être nommées d’après le point de montage. Par exemple, si /srv/toto est le point de montage, le fichier d’unité de montage devra s’appeler srv-toto.mount


#4

merci mattotop et Bruno1
je vais suivre la procédure de Bruno1 et vous dis.

Et si j’ai un SSD connecté en USB à la Freebox, je complète le même fichier (comment ?) ou bien je fais un second fichier /etc/systemd/system/media-freeboxSSD.mount
que j’active avec systemctl enable media-freeboxSSD.mount ?


#5

Je ne crois pas que la Freebox permette de partager autre chose que son disque interne.


#6

oh que si :wink:
les deux lignes suivantes du fstab permettent de partager les deux disques :
//mafreebox.freebox.fr/Disque\040dur /media/freebox cifs _netdev,rw,users,iocharset=utf8,uid=1000,sec=none,file_mode=0777,dir_mode=0777,vers=1.0 0 0
//mafreebox.freebox.fr/kingston /media/kingston cifs _netdev,rw,users,iocharset=utf8,uid=1000,sec=none,file_mode=0777,dir_mode=0777,vers=1.0 0 0

Bruno1, j’ai lu ton EDIT : je regarde quel est le point de montage.


#7

Le point de montage est /media/kingston. Le fichier a créer sera donc media-kingston.mount.


#8

merci Bruno1
le “sudo mount -a” n’est plus nécessaire après chaque boot :slight_smile: