Monter et démon­ter un partage Samba selon le réseau

J’ai un partage Samba dans mon réseau local afin de pouvoir écou­ter ma musique tranquille­ment depuis mon ordi­na­teur dans le bureau alors que les fichiers sont sur mon serveur dans le salon.

Je peux accé­der à mes fichiers sur le partage avec mon navi­ga­teur de fichier mais cela me pose un problème avec VLC (que j’uti­lise comme lecteur de musique) : il n’ar­rive pas à jouer les fichiers s’ils sont dans un sous-réper­toire du réper­toire que j’ai glissé depuis Dolphin. Si j’ai bien compris, c’est la faute à KIO, la biblio­thèque qui permet à Dolphin d’ac­cé­der au partage Samba. En clair, VLC est capable de lire les fichiers direc­te­ment conte­nus dans Album/, mais pas d’al­ler lire ce qu’il y a dans Artiste/Album/ si je lui glisse le dossier Artiste.

OSEF, faisons un montage à l’an­cienne, en ligne de commande !

sudo mount -t cifs //XXX/anonymous/ /media/XXX -o guest

Oui, ça fonc­tion­ne… sauf quand je ne suis plus sur le réseau (coupure du réseau, j’em­barque mon pc pour aller donner un cours, etc). Et là, c’est le drame : plus moyen d’en­le­ver ce montage. Ça bloque.

Il suffit donc de démon­ter le partage samba avant. Mais je ne peux anti­ci­per les coupures réseau, et je sais que je ne pense­rais pas toujours à ça en débran­chant mon pc.

Je vais donc, en bon adminSys fainéant que je suis, auto­ma­ti­ser tout ça.

Pré-requis : utili­ser NetworkMa­na­ger.

Il faut créer des scripts qui vont monter et démon­ter le partage après la connexion au réseau et avant sa décon­nexion.

Mettez ceci dans /etc/NetworkManager/dispatcher.d/99-mount-samba :

#!/bin/sh
IFACE=$1
ACTION=$2

case $CONNECTION_ID in
    Votre_reseau)
        case ${ACTION} in
            up)
                mount -t cifs //XXX/anonymous/ /media/XXX -o guest
                ;;
        esac
        ;;
esac

Votre_reseau est évidem­ment à modi­fier selon le nom que vous avez donné à votre connexion dans NetworkMa­na­ger. Si vous voulez utili­ser ça pour plusieurs réseaux (comme par exemple votre connexion filaire et votre connexion Wifi, vous pouvez mettre Votre_reseau1|Votre_reseau2).

Mettez ceci dans /etc/NetworkManager/dispatcher.d/pre-down.d/99-umount-samba :

#!/bin/sh
IFACE=$1
ACTION=$2

case $CONNECTION_ID in
    Votre_reseau)
        case ${ACTION} in
            pre-down)
                #lsof -t /media/XXX | xargs kill
                umount -l /media/XXX
                ;;
        esac
        ;;
esac

Vous note­rez le lsof -t /media/XXX | xargs kill avant l’ap­pel d’umount. En effet, vous ne pour­rez pas démon­ter le partage s’il est utilisé.

Faites donc atten­tion ! Autant ce n’est pas grave si mon script coupe VLC (ça empêche même VLC de s’em­bal­ler en crachant un nombre infini d’er­reurs), autant si vous travaillez sur votre partage samba avec, disons, LibreOf­fice, cela risque­rait de vous faire perdre votre travail. Ce n’est donc pas pour tous les usages.

EDIT : plus besoin du lsof -t /media/XXX | xargs kill, Olivier M. vient de porter à ma connais­sance, en commen­taire, l’op­tion -l d’umount :

-l, --lazy
    Démontage  paresseux.  Détacher  maintenant le système de fichiers de la hiérarchie de fichiers et effacer toutes les références vers ce système de fichiers dès qu'il n'estplus occupé (nécessite un noyau 2.4.11 ou ultérieur).

N’ou­blions pas de rendre exécu­table ces scripts :

chmod +x /etc/NetworkManager/dispatcher.d/99-mount-samba \
  /etc/NetworkManager/dispatcher.d/pre-down.d/99-umount-samba

Et voilà ! Un petit systemctl restart NetworkManager et ça devrait tour­ner comme une horloge.

Crédits : Photo par Thomas Kvis­tholt sur Unsplash

Me soutenir sur Tipeee Me soutenir sur Liberapay

Merci à mes tipeurs :-)

Le 14 juillet 2016, j’ai lancé mes pages Tipeee et Libe­ra­pay.

La récom­pense de base est l’ap­pa­ri­tion sur une page mensuelle de remer­cie­ments… voici celle de septembre ! En retard, encore et toujours. Sans excuse cette fois-ci. Juste la flem­me… et un nouveau logi­ciel 😉

Merci à :

Voici mon bilan de septembre :

En ce qui concerne les commits dédiés :

Et vous pouvez toujours me soute­nir via Duni­ter !

Je remets ici mon expli­ca­tion du mois d’août.

Disclai­mer : je vais peut-être dire des sottises parce que j’ai pas tout compris mais je m’en fous, j’aime bien l’idée

Duni­ter est un projet de crypto-monnaie mais contrai­re­ment au bitcoin où c’est la course à la puis­sance de calcul pour géné­rer la monnaie et deve­nir riche, le but est de créer une monnaie libre (le Ğ1, prononcé comme june en anglais), basée sur une toile de confiance (il faut rece­voir 5 certi­fi­ca­tions pour être membre) et où chacun des membres reçoit tous les jours un divi­dende univer­sel. Je dois dire que je suis assez curieux de ce qu’on peut faire avec un système ressem­blant forte­ment au salaire à vie 🙂

C’est pourquoi j’ai créé mon compte et ait fait ce qu’il fallait pour rece­voir mes certi­fi­ca­tions (rencon­trer des gens, tous­sa…). Ma clé publique est :

 2t6NP6Fvvuok2iRWA188C6pGokWAB5Kpf1S1iGtkN9tg

Et comme un projet n’est utile que si on s’en sert, je vous propose de me soute­nir en Ğ1 tout en béné­fi­ciant des mêmes récom­penses que celles présentes sur ma page Tipeee (j’ai arbi­trai­re­ment choisi une parité euro/Ğ1 car je n’ai pas vrai­ment trouvé de page expliquant comment évaluer le cours du Ğ1 en euros, et au final, est-ce vrai­ment néces­saire ? À nous de choi­sir quelle valeur a cette nouvelle monnaie 🙂. Et puis ça me simpli­fie la vie).

Voici donc les diffé­rentes contre­par­ties et leur prix (chaque contre­par­tie comprend celles de tarif infé­rieur) :

  • 1 Ğ1 : vous appa­raî­trez sur la page mensuelle des remer­cie­ments
  • 2 Ğ1 : vous rece­vrez une photo dédi­ca­cée de mon chat
  • 3 Ğ1 : vous rece­vrez 3 stickers repre­nant les logos de Lstu, Lutim et Lufi. De quoi déco­rer son ordi et se la péter en société 😁
  • 5 Ğ1 : un commit vous sera dédié chaque mois (si je déve­loppe suffi­sam­ment pour le nombre de personnes à ce niveau)
  • 15 Ğ1 : vous pouvez me deman­der de bosser en prio­rité sur un bug ou une demande de fonc­tion­na­lité d’un de mes logi­ciels (dans la mesure du faisable, hein).
  • 100 Ğ1 : quand j’au­rais un nouveau projet, vous pour­rez en choi­sir le nom et le logo

Pour en savoir plus sur Duni­ter et Ğ1, je vous propose d’al­ler voir cet article de cgeek : https://blog.cgeek.fr/de-linte­ret-dune-monnaie-libre.html ainsi que la théo­rie rela­tive de la monnaie pour les enfants.

PS : j’ai aussi une adresse bitcoin si vous souhai­tez me soute­nir par ce biais

Me soutenir sur Tipeee Me soutenir sur Liberapay