Puppy Linux Discussion Forum Forum Index Puppy Linux Discussion Forum
Puppy HOME page : puppylinux.com
"THE" alternative forum : puppylinux.info
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

The time now is Thu 26 Mar 2015, 22:03
All times are UTC - 4
 Forum index » House Training » Users ( For the regulars ) » Pour les francophones
[RESOLU]YASSM démontage automatique partage réseau
Moderators: Béèm, darkerror05
Post new topic   Reply to topic View previous topic :: View next topic
Page 1 of 8 [112 Posts]   Goto page: 1, 2, 3, ..., 6, 7, 8 Next
Author Message
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 10:45    Post subject:  [RESOLU]YASSM démontage automatique partage réseau  

Bonjour,
Il y a différentes façon d'accéder à ses partages en réseau et Yassm est certainement une des meilleure.
D'autant plus que l'usage du fichier samba-select.dat décrit par fabrice_035 dans un autre post permet d'éviter une recherche sur l'ensemble du réseau pour ne se connecter qu'aux partages que l'on connait parfaitement, et tout ça toujours avec authentification.
Mais il y a un inconvénient : on reste connecté indéfiniment si l'on ne démonte pas le partage !
Autofs permet de mettre un timeout au bout duquel on est automatiquement déconnecté quand il n'y a plus eu d'activité sur le partage. C'est parfait quand il n'y a pas d'authentification ou que l'on veut donner des accès en lecture seulement. Par contre l'authentification est gérée via un fichier où les identifiants/mots de passe sont en claire !
L'idéal serait de mettre en option un timeout dans yassm mais il n'a apparemment pas cette possibilité : je ne l'ai pas trouvée dans le post dédié.
Il n'y a apparemment pas beaucoup d'utilisateurs de NAS et de partages en réseau ici mais au cas où je lance une bouteille à la mer.


Suite à cette demande voici la solution réalisée par fabrice_035.

Je rappelle le principe général de fonctionnement : un partage est démonté automatiquement au bout d'un certain temps quand il n'est pas ouvert dans une fenêtre.
Lorsqu'un partage est monté via yassm une fenêtre de ce partage s'affiche et une icône verte apparaît à côté de l'horloge dans la barre des tâches.
Cette icône indique dans sa partie supérieure le nombre de partages monté, flèche vers le haut, et dans sa partie inférieure, flèche vers le bas, le nombre de partages qui seront démontés.
Si on met la souris sur l'icône le chemin du partage est indiqué.S'il y en a plusieurs ils sont tous indiqués
Quand une fenêtre de partage est fermée l'icône devient rouge et le nombre en bas s'incrémente, celui du haut ne change pas tant que le partage n'est pas démonté. Quand un partage est démonté le nombre supérieur diminue en conséquence.
Si on met le pointeur de la souris sur l'icône quand elle est rouge se sont les partages qui n'ont plus de fenêtre ouverte qui sont listés.
A partir du moment où l'icône devient rouge le timer pour démonter le partage se met en route.
A ce moment là on peut décider de conserver le montage en cliquant droit sur l'icône : une fenêtre du partage sera alors ouverte. S'il y a plusieurs partages en court de démontage ils seront traités dans l'ordre de fermeture des fenêtres : il faut un clic par partage.
L'icône se met automatiquement à jour.
Un clique gauche sur l'icône ouvre une fenêtre pour chaque partage.
Environ 1mn avant le démontage d'un partage une fenêtre prévient l'utilisateur afin de lui permettre d'agir s'il le désire.
Lorsqu'un partage est démonté une fenêtre s'affiche quelques secondes pour prévenir l'utilisateur.
Quand plusieurs fenêtres sont fermées pendant qu'un timer est en route pour démonter un partage tous les partages sont démontés successivement à la fin du timer : il n'y a pas un timer par montage.

Une interface de configuration pour déterminer le type d'avertissement avant le démontage, combien de temps avant le démontage on veut être prévenu, la durée du timer et si l'on veut activer ou pas la fonctionnalité de démontage a également été proposée par fabrice_035 et bien adaptée par Argolance : rendons à césar... c'est eux qui ont fait tout le boulot.
Argolance a encore amélioré l'ensemble en faisant tout le travail nécessaire pour que l'application soit multilingue, anglais et français pour le moment. Il a également élaborée l'aide.
Et pour compléter il a intégré l'ensemble pour ToOpPy avec Samba TNG et une icône réseau qui regroupe dans son menu tout le nécessaire pour utiliser Samba TNG, Yassm et l'addon auto_uMount : c'est cette version qui est proposée ici.
Merci à lui de nous faire bénéficier en primeur de ce développement pour ToOpPy.


ATTENTION, le paquet ci-dessous regroupe donc Samba TNG, YASSM2.7 avec l'addon auto_uMount
SambaTNG YASSM2.7-auto_uMount_addon.pet

Le paquet ci-dessous ne comprend que YASSM2.7 avec l'addon auto_uMount :
YASSM2.7-auto_uMount_addonV3.pet

Et pour terminer l'icon_tray avec son menu permettant de tout avoir sous un clic :
icon_tray


Merci.
Et un grand merci à fabrice_035 d'avoir mis ses compétences de développeur au service de ma demande, à Argolance pour les améliorations importantes et évidemment à rcrsn51 qui est l'auteur à la fois de Yassm et de Samba TNG.
Philippe
Capture.png
 Description   Un partage est monté avec Yassm : une icône verte apparaît en indiquant à
côté de la flèche montante le nombre de partage. Le pointeur de la souris
sur l'icône indique le point de montage et le nom du ou des partages.
 Filesize   8.32 KB
 Viewed   64 Time(s)

Capture.png

Capture(7).png
 Description   1 partage est monté mais pas ouvert dans une fenêtre : l'icône est rouge. Le
pointeur de la souris sur l'icône indique le partage qui sera démonté. Un clic
droit sur l'icône ouvra une fenêtre du partage et l'icône sera mise à jour.
 Filesize   8.08 KB
 Viewed   65 Time(s)

Capture(7).png

Capture(1).png
 Description   2 partages sont montés et ouverts dans une fenêtre. Le pointeur de la
souris sur l'icône indique les points de montage avec les noms des
partages.
 Filesize   22.18 KB
 Viewed   68 Time(s)

Capture(1).png

Capture(2).png
 Description   2 partages sont montés, 1 fenêtre a été fermé : l'icône devient rouge et il
est indiqué en mettant le pointeur de la souris sur l'icône. Un clic droit
sur l'icône et une fenêtre du partage s'ouvre et l'icône sera mise à jour.
 Filesize   8.42 KB
 Viewed   67 Time(s)

Capture(2).png

Capture(8).png
 Description   2 partages sont montés mais aucune fenêtre n'est ouverte. Le timer pour
le démontage est en route. Le pointeur de la souris sur l'icône indique les
partages concernés. Un clic gauche sur l'icône réouvrira 2 fenêtres.
 Filesize   13.13 KB
 Viewed   71 Time(s)

Capture(8).png

Capture(9).png
 Description   Quand un démontage est effectué une fenêtre en averti l'utilisateur.
Elle reste affichée quelques secondes et après sa disparition l'icône est
mise à jour.
 Filesize   34.33 KB
 Viewed   65 Time(s)

Capture(9).png

Capture(4).png
 Description   Le timer se déroule et environ une minute avant que le ou les
démontages des partages soient effectuées une fenêtre apparaît pour
avertir l'utilisateur en indiquant les partages concernés afin de permettre
à l'utilisateur éventuellement d'agir.
 Filesize   43.66 KB
 Viewed   68 Time(s)

Capture(4).png


Last edited by augras on Fri 20 Mar 2015, 13:56; edited 36 times in total
Back to top
View user's profile Send private message 
fabrice_035

Joined: 28 Apr 2014
Posts: 186

PostPosted: Tue 23 Dec 2014, 12:01    Post subject:  

Salut,
Je ne comprends pas ce que tu veux faire exactement.
Un démontage automatique après un certain temps ?
A+
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 13:15    Post subject:  

Oui, mais pas après un temps suite à la connexion mais après non utilisation du partage.
A+
Back to top
View user's profile Send private message 
fabrice_035

Joined: 28 Apr 2014
Posts: 186

PostPosted: Tue 23 Dec 2014, 13:19    Post subject:  

Il y a peut être une solution qui consiste à démonter un partage après un certain temps (à définir dans un script) si la fenêtre du dossier monté est fermée.
Sinon je ne vois pas très bien comment on peut déterminer si un partage est encore utilisé ou pas. Rolling Eyes
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 13:52    Post subject:  

Je ne sais pas non plus.
Autofs le fait : après configuration on clique sur un dossier, ou une application fait appel au dossier, et le partage est accessible. Après un temps d'inactivité déterminé dans la configuration et paramétrable le partage est démonté.
Je ne sais pas comment ça fonctionne.
J'ai posé la question dans le fil de yassm et l'auteur, rcrsn51, ne voit pas comment intégrer ça simplement.
Je l'ai interrogé sur "juste" une déconnexion après un temps déterminé après le montage, mais pas encore de réponse : en fait là ou tu en est arrivé également.
Philippe
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 13:58    Post subject:  

J'ai 4 NAS,3 synology et un d-link. J'ai d'abord cherché à déconnecter le partage à partir des NAS mais je n'ai rien trouvé du tout ! Les syno sont tous sur la dernière version du DSM, système d'exploitation de synology et le d-link dns-323 a la dernière version du firmware disponible : ils sont tous sous un linux. Mais, bien que couper la connexion côté serveur avait ma préférence... rien de rien.
J'ai donc cherché du côté client et j'ai trouvé autofs qui fonctionne mais a ce problème d'authentification.
Philippe
Back to top
View user's profile Send private message 
fabrice_035

Joined: 28 Apr 2014
Posts: 186

PostPosted: Tue 23 Dec 2014, 14:36    Post subject:  

le forum vient d'exploser en vol... ma précedente réponse vient de disparaitre, genre lost in space... merci les mecs !

Donc je recapepete: voici un début de solution:

Code:

#!/bin/sh
mt=`mount -l | grep // | awk '{ print $3}'`
wi=`xwininfo -root -tree | grep /YASSM/ | awk -F\" '{ print $2}' | awk ' {print $1}' | awk '{ sub("~","/root");print}'`

x=1

for partage in $mt


 do
  trouve="rien"
  for windows in $wi
 
 do
  if  [ "$partage" = "$windows" ] ; then
  trouve="ok"
  fi
 done
 
  if [ "$trouve" = "rien" ] ; then
 
  echo "pas trouvé $partage en fenêtre ouverte..."
 
  fi
 done
 
 


Je propose de vérifier si il y a utilisation du partage à travers une fenêtre.... cette fois pas de suppression demon message ?

Shocked
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 15:10    Post subject:  

C'est visible cette fois !
ça arrive de temps en temps et c'est très désagréable... surtout quand on a fait une réponse conséquente : quand c'est le cas j'en suis arrivé à faire un copier/coller avant de valider !
Merci pour la réponse hyper rapide.
J'ai testé ton script et je suis perplexe.
Si j'ai bien compris l'exécution du script vérifie si un partage est ouvert dans une fenêtre, c'est ce que tu indiques, j'ai pas trop forcé. Mais alors que j'ai un montage fait dans /root/yassm/Medias et que le dossier Medias est devant mois visible dans une fenêtre, le script me retourne
Code:
pas trouvé /root/YASSM/Medias@10.0.0.152 en fenêtre ouverte...

Bien entendu si le montage existe mais n'ai pas affiché dans une fenêtre j'ai le même retour !
D'où ma perplexité.
Si le montage n'existe pas, je n'ai rien.
J'ai faut un copier/coller avant de valider !
Philippe
Back to top
View user's profile Send private message 
fabrice_035

Joined: 28 Apr 2014
Posts: 186

PostPosted: Tue 23 Dec 2014, 15:26    Post subject:  

Le script fonctionne chez moi, mais je constate que de ton coté il affiche l’adresse ip dans le nom de la fenêtre ( @10.0.0.152 ) ce qui n'est pas le cas avec mon Puppy Evil or Very Mad donc il faudra couper ça, à tester avec un

awk -F@ '{ print $0}'

donc à modifier dans le script, l'idée étant de supprimer cet @...


Code:


wi=`xwininfo -root -tree | grep /YASSM/ | awk -F\" '{ print $2}' | awk -F@ '{ print $0}' | awk ' {print $1}' | awk '{ sub("~","/root");print}'`



ou



Code:


wi=`xwininfo -root -tree | grep /YASSM/ | awk -F\" '{ print $2}' | awk ' {print $1}' | awk '{ sub("~","/root");print}' | awk -F@ '{ print $0}' `



Pas moyen de tester chez moi, je le fais à la volée.

Bonne soirée. Very Happy
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 15:27    Post subject:  

J'ai modifié le script pour vérifier si le cas trouve="ok" fonctionnait en ajoutant simplement echo "Trouve=ok" juste après :
Code:
if  [ "$partage" = "$windows" ] ; then
  trouve="ok" echo "Trouve=OK"
  fi

et dans le cas où le partage est affiché dans une fenêtre j'ai bien mon echo qui s'affiche... et sur la ligne de dessous
Code:
pas trouvé /root/YASSM/Medias@10.0.0.152 en fenêtre ouverte...

Dans tous les cas, sauf celui où le montage n'existe pas, j'ai toujours "pas trouvé /root/YASSM/Medias@10.0.0.152 en fenêtre ouverte..." qui s'affiche.
Philippe
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 15:29    Post subject:  

Les réponses se sont croisées : je teste ce que tu indiques.
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Tue 23 Dec 2014, 15:36    Post subject:  

Aucune des deux modifications proposées ne supprime "@10.0.0.152".
Je vais regarder un film.
Merci.
Philippe
Back to top
View user's profile Send private message 
fabrice_035

Joined: 28 Apr 2014
Posts: 186

PostPosted: Tue 23 Dec 2014, 15:43    Post subject:  

On se regarde ça demain. A+
Back to top
View user's profile Send private message 
fabrice_035

Joined: 28 Apr 2014
Posts: 186

PostPosted: Tue 23 Dec 2014, 16:03    Post subject:  

Il faudrait que tu nous donnes le contenu de


Code:

xwininfo -root -tree | grep /YASSM/
Back to top
View user's profile Send private message 
augras

Joined: 11 Nov 2013
Posts: 950
Location: france

PostPosted: Wed 24 Dec 2014, 05:07    Post subject:  

Bonjour,
Quand il y a un montage effectif et qu'une fenêtre l'affiche wi=/root/YASSM/Medias@10.0.0.152. Et "Trouve=ok" s'affiche, de même que "pas trouvé /root/YASSM/Medias@10.0.0.152 en fenêtre ouverte..." : c'est ce dernier affichage qui ne devrait pas être là.
Au passage il faut que la fenêtre ait été ouverte directement depuis /root/YASSM/... : si on ouvre depuis un lien symbolique vers le point de montage d'origine ça ne fonctionne pas. Et c'est logique puisque l'on cherche spécifiquement /root/YASSM/...
Si le point de montage existe mais qu'il n'est pas ouvert dans une fenêtre wi ne contient rien, "Trouve=ok" ne s'affiche pas et "pas trouvé /root/YASSM/Medias@10.0.0.152 en fenêtre ouverte..." s'affiche. Tout est normal dans ce cas.
Si le point de montage n'existe pas rien ne s'affiche.
Voilà pour les données du matin ! Very Happy
Philippe
Back to top
View user's profile Send private message 
Display posts from previous:   Sort by:   
Page 1 of 8 [112 Posts]   Goto page: 1, 2, 3, ..., 6, 7, 8 Next
Post new topic   Reply to topic View previous topic :: View next topic
 Forum index » House Training » Users ( For the regulars ) » Pour les francophones
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group
[ Time: 0.1049s ][ Queries: 12 (0.0134s) ][ GZIP on ]