#1 Le 29/12/2007, à 23:24
- NicoA380
[Astuce] fusauto : simplifiez vous le montage avec FUSE
Bonsoir tout le monde,
je viens vous parler de fusauto.
Il y a plus d'un an et demi, j'avais apporté ma contribution en venant vanter les mérites de FUSE.
Je suis toujours un 'fuse user', mais pas autant que je voudrais car j'ai souvent la flème de dégainer un terminal et agiter mes petits doigts pour monter si ou ça. J'avais fait à l'époque des mini IHMs spécifiques pas convainquantes.
Aujourd'hui je propose une solution de montage automatique avec fuse, juste avec un petit script et un fichier de configuration, compatible shell, nautilus et rox (et certainement d'autres).
Tout est expliqué sur le Wiki, pour les questions, c'est en dessous
Hors ligne
#2 Le 05/01/2008, à 10:59
- spomky
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
Salut fuse user (ou fuse fan?).
J'ai fait une interface graphique pour fuse du nom de fusible, le thread est là : http://forum.ubuntu-fr.org/viewtopic.php?id=179895
Tiens-moi au courant si t'as des remarques ou des questions
Hors ligne
#3 Le 15/07/2008, à 14:56
- tibo1902
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
Un résultat, un problème et une question :
- Le montage nickel (Ligne de commande ou Nautilus)
- Le démontage KO (ligne de commande ou Nautilus) :
mondossier/fusauto.conf is required
il ne trouve plus le fichier de config, ce qui est logique vu qu'il a monté une nouvelle arboresence à la place. Je peux démonter uniquement en tant que root avec sudo
umount mondossier
- Comment faire pour cacher mes mots de passe (je n'aime pas beaucoup les fichiers lisibles avec des mots de passe en clair dedans)
- J'avais vu me semble-t-il une méthode pour que le montage ne se fasse que lors de la première utilisation (peut-être avec automount ou autres, je ne m'en rappelle plus), aurais-tu une, des pistes
Je ne suis de loin pas un expert, un grand merci déjà pour les solutions proposées.
#4 Le 15/07/2008, à 16:49
- NicoA380
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
Je n'ai plus utilisé fusauto depuis Hardy, à cause du nouveau gvfs qui n'est pas trop mal et qui gère mieux les passwords que gnome-vfs.
La gestion des password est une des choses qui m'a fait changer mes habitudes.
Je prendrais le temps de plancher sur ton problème ce soir, car je suis au boulot
En attendant, pourrais-tu mettre le résultat de "cat /etc/mtab" quand ça ne veut pas démonter ?
@tte
Hors ligne
#5 Le 15/07/2008, à 16:51
- Maxouille
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
déplacé dans trucs et astuces
Hors ligne
#6 Le 30/04/2009, à 19:43
- Xentor609
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
Salut à tous,
Je viens juste de tester ce script que je trouve vraiment pas mal.
@tibo1902 : pour ton erreur de démontage je viens juste de le résoudre.
En fait, maintenant on fait la distinction entre un montage ssh (donc fuse.ssh) et un autre montage en FTP par exemple (donc fuse.curlftpfs).
Il te suffit donc de modifier le script à la fonction getfuses(), il faut remplacer :
fuses =[ line for line in mtab.readlines() if line.split()[2] == "fuse" ]
par :
fuses =[ line for line in mtab.readlines() if line.split()[2].find("fuse.") != -1 ]
Maintenant ça fonctionne très bien.
Bonne continuation.
Bye, Xentor 609 !
Hors ligne
#7 Le 06/05/2009, à 17:43
- jmkermit
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
Bonjour,
merci pour ce forum : il m'a bien été utile pour utiliser sshfs
merci pour le fsauto : trés pratique !
2 petits commentaires pour le script fsauto :
1) peut-être annoncer le prérequis : python 2.5 ou + ( à cause de '.partition' )
pour des raisons liées à un autre soft, j'étais en python 2.4.3
2) sous CentOS (je sais qu'on est ds un forum ubuntu !) mais fusermount est ds /usr/bin
or il est "hardcodé" ds le script...
ne pourrait-on pas mettre simplement :
os.system("fusermount -u "+path)
A+
jmb
#8 Le 07/07/2009, à 23:32
- mrjk
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
Bonjour,
je reposte une version tenant compte de quelques modifications (pas toutes, hein). pour les Debian User qui trainent sur le forum Ubuntu, cela fonctionne.
Notes:
- Vérifiez l'emplacement de fusermount
- Non testé sous Ubuntu (le comble, je sais)
#! /usr/bin/env python
# coding: utf-8
#
# fusauto
# auto mount directory with fuse by reading a config file
#
# Copyright (C) Nicolas Albert <nicolas_albert_85@yahoo.fr>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 3 of the License, or
# any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
# Revisions
# Version 0.0.2 (by MrJK, mrjkDOT78ATgmailDOTcom):
# - Modified: French support (instead english support)
# - Fixed: Must work under Debian (not tested under Ubuntu)
# - Fixed: bug when trying to unmount folder
# - Added: Information on what you are doing
#
# Version 0.0.1:
# - Initial version
import sys, os
def runconf(conf, path):
file = open(conf, "r")
act = {}
for line in file.readlines():
if not line.startswith('#'):
part = line[:-1].partition('=')
act[part[0]] = part[2]
file.close()
if 'bin' in act:
if not 'from' in act: act['from']='none'
if not 'opt' in act: act['opt']=''
os.system("%s %s %s -o nonempty %s"%(act['bin'], act['from'], path, act['opt']))
def getfuses():
mtab = open("/etc/mtab", "r")
fuses =[ line for line in mtab.readlines() if line.split()[2].find("fuse.") != -1 ]
mtab.close()
return fuses
def alreadymount(path):
for fuse in getfuses():
fd = fuse.split()[1] + '/'
if fd == path or fd == os.getcwd()+'/'+path:
return True
return False
def umount(path):
os.system("/usr/bin/fusermount -u "+path)
if __name__ == "__main__":
if len(sys.argv) == 2 and os.path.isdir(sys.argv[1]):
if alreadymount(sys.argv[1]):
print "Démontage du système de fichier en cours ..."
umount(sys.argv[1])
else:
conf = sys.argv[1]+'/fusauto.conf'
if os.path.isfile(conf):
print "Montage du système en cours ..."
runconf(conf, sys.argv[1])
else:
print conf,"est manquant!"
else:
print "Un répertoire doit être spécifié!"
Hors ligne
#9 Le 08/07/2009, à 01:29
- mrjk
Re : [Astuce] fusauto : simplifiez vous le montage avec FUSE
Par contre, impossible de faire marcher gmailfs ( erreur, il me saoule avec l'option nonempty, mais je sais pas comment la mettre) et ca marche pas non plus avec fusesmb ( le dossier est monté, mais il est vide :s)
Une idée??
Merci
Hors ligne