Pages : 1
#1 Le 22/01/2007, à 00:16
- Wakinyan
Aide pour un petit script nautilus
Bonjour,
j'essaie vainement de réaliser un script pour Nautilus afin monter un volume Truecrypt de n'importe où. Je dispose actuellement des lignes basiques (pêchées je ne sais plus où):
#!bin/sh
gnome-terminal -e 'sudo truecrypt --mount-options "rw,gid=0,umask=0000" $1' #le $1 est la variable représentant le fichier que je veux monter
zenity --notification
gnome-terminal -e 'sudo truecrypt -d'
exit
Il me manque donc la partie de code qui prend en compte le fichier sur lequel je fais un clic droit. Malgré l'étude d'autres scripts, je ne comprends pas comment faire monter le fichier sélectionné.
Merci d'avance
Hors ligne
#2 Le 22/01/2007, à 01:26
- llwynrt
Re : Aide pour un petit script nautilus
bonjour
tu dois utiliser les variables $NAUTILUS_SCRIPT_SELECTED_URIS ou $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS
deux exemples :
un script qui ouvre en root le fichier sélectionné :
#!/bin/bash
for uri in $NAUTILUS_SCRIPT_SELECTED_URIS; do
gksudo "gnome-open $uri" &
done
et un qui ouvre une image iso avec qemu :
#!/bin/bash
qemu -cdrom $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS &
en espérant que ça t'aide
Marie-Lyse
Les erreurs Windows, c'est un peu comme les rêves, il faut savoir les interpréter, parfois ça peut vouloir dire quelque chose !
Hors ligne
#3 Le 22/01/2007, à 10:48
- Wakinyan
Re : Aide pour un petit script nautilus
Salut et merce de ton aide
pour le moment le script tel quel :
#!/bin/bash
for uri in $NAUTILUS_SCRIPT_SELECTED_URIS; do
gnome-terminal -e 'sudo truecrypt --mount-options "rw,gid=0,umask=0000" $uri';
zenity --notification
gnome-terminal -e 'sudo truecrypt -d'
done
a l'air de fonctionner tant bien que mal (du moins je vois l'icône de zenity). Le seul souci est que je doit normalement entrer le mot de passe du fichier pour accéder au volume monté. Malheureusement, le terminal apparaît fugacement. Truecrypt ne monte donc pas le fichier.
Désolé d'être si mauvais mais c'est un langage que je ne connais pas du tout.
Dernière modification par Wakinyan (Le 22/01/2007, à 10:49)
Hors ligne
#4 Le 22/01/2007, à 11:11
- llwynrt
Re : Aide pour un petit script nautilus
remplace sudo par gksudo
sudo est pour les applications consoles et gksudo pour les applications graphiques
avec gksudo tu auras une fenêtre qui te demande ton mot de passe
Marie-Lyse
Les erreurs Windows, c'est un peu comme les rêves, il faut savoir les interpréter, parfois ça peut vouloir dire quelque chose !
Hors ligne
#5 Le 22/01/2007, à 11:28
- Wakinyan
Re : Aide pour un petit script nautilus
Salut,
j'ai bien remplacé sudo par gksudo. La première fois que je dois entrer le mot de passe root, le terminal s'affiche bien, mais dès que je dois entrer le mot de passe du volume à monter, le terminal apparaît moins d'une seconde.
Si je remplace
gnome-terminal -e 'gksudo truecrypt --mount-options "rw,gid=0,umask=0000" $uri';
par
gksudo truecrypt --mount-options "rw,gid=0,umask=0000" $uri;
le terminal se n'affiche même pas. Par contre, l'icône zenity s'affiche normalement.
Hors ligne
#6 Le 22/01/2007, à 11:37
- llwynrt
Re : Aide pour un petit script nautilus
essaye ça :
#!/bin/bash
for uri in $NAUTILUS_SCRIPT_SELECTED_URIS; do
gksudo 'gnome-terminal -e truecrypt --mount-options "rw,gid=0,umask=0000" $uri';
zenity --notification
gksudo 'gnome-terminal -e truecrypt -d'
done
c'est quoi un volume Truecrypt ?
Marie-Lyse
Les erreurs Windows, c'est un peu comme les rêves, il faut savoir les interpréter, parfois ça peut vouloir dire quelque chose !
Hors ligne
#7 Le 22/01/2007, à 11:40
- Wakinyan
Re : Aide pour un petit script nautilus
C'est un fichier quelconque dont le contenu est crypté et que l'on monte comme un un cd, clé usb, etc. En l'occurence, je fais monter mon fichier dans /mnt/tcvol.
Cela fonctionne très bien lorsque j'indique le chemin absolu dans le script. Par contre, il n'a pas l'air de prendre en compte ma variable. Pourtant, c'est justement le but de mon script : faire en sorte de monter un fichier depuis n'importe quel emplacement (dossier, clé usb, etc).
EDIT : le code que tu indiques dans le message précédent me permet d'entrer le mot de passe root mais saute apparemment l'étape du mot de passe Truecrypt. Normalement, le programme me demande d'entrer le mot de passe pour décrypter le fichier. Peut-être qu'il faut forcer le terminal à rester ouvert lors de l'opération.
Lorsque je fais ceci :
#!/bin/bash
gnome-terminal -e 'sudo truecrypt --mount-options "rw,gid=0,umask=0000" /home/chemin/vers/fichier';
zenity --notification
gnome-terminal -e 'sudo truecrypt -d'
done
Tout fonctionne bien : une console affiche ceci :
Enter password for '/home/chemin/vers/fichier':
Je pense donc que c'est un problème de prise en compte de la variable.
Dernière modification par Wakinyan (Le 22/01/2007, à 11:54)
Hors ligne
#8 Le 22/01/2007, à 12:32
- roger64
Re : Aide pour un petit script nautilus
La source est probablement le wiki Truecrypt où j'ai rentré le script il ya quelques jours. (je l'avais également donné sur un fil EncFs de ce forum)
http://doc.ubuntu-fr.org/truecrypt#faire_monter_le_volume
En fait, parfois le mot de passe sudo est demandé et parfois pas avant celui de Truecrypt. Donc, j'ai trouvé plus pratique de laisser s'afficher la fenêtre du terminal, dans laquelle on peut facilement entrer un ou deux mots de passe. Et dans ce cas, le terminal reste affiché sans problème.
Pour moi, il marche bien.:|
Dernière modification par roger64 (Le 22/01/2007, à 12:34)
Hors ligne
#9 Le 22/01/2007, à 13:14
- Wakinyan
Re : Aide pour un petit script nautilus
La source est probablement le wiki Truecrypt où j'ai rentré le script il ya quelques jours. (je l'avais également donné sur un fil EncFs de ce forum)
http://doc.ubuntu-fr.org/truecrypt#faire_monter_le_volume
exact J'ai tellement farfouillé que je ne savais plus d'où venait ce script.
En fait, parfois le mot de passe sudo est demandé et parfois pas avant celui de Truecrypt. Donc, j'ai trouvé plus pratique de laisser s'afficher la fenêtre du terminal, dans laquelle on peut facilement entrer un ou deux mots de passe. Et dans ce cas, le terminal reste affiché sans problème.
Pour moi, il marche bien.:|
Tel quel il fonctionne parfaitement pour moi aussi mais je suis obligé de prendre le chemin absolu. Dès lors que je veux intégrer le chemin en variable pour ouvrir n'importe quel fichier de n'importe quel emplacement que ça ne fonctionne plus.
Hors ligne
#10 Le 22/01/2007, à 14:33
- roger64
Re : Aide pour un petit script nautilus
@Wakinyan
en lisant le mot "variable", je pense quelque expert du forum "programmation" serait plus à même de te répondre. Il faudrait reposter ou plutôt signaler à un modo de te changer de forum.
Pour moi, j'utilise la ligne (sur une seule ligne):
zenity --notification --window-icon=/home/roger/.icons/Tango/24x24/actions/lock.png --text "démonter Truecrypt"
au lieu de
zenity --notification
ça améliore le look
à +
Dernière modification par roger64 (Le 22/01/2007, à 14:37)
Hors ligne
#11 Le 22/01/2007, à 14:36
- Wakinyan
Re : Aide pour un petit script nautilus
Ok, je vais faire ça. Merci
Je continue le sujet ici : http://forum.ubuntu-fr.org/viewtopic.php?pid=704297#p704297
Dernière modification par Wakinyan (Le 22/01/2007, à 14:54)
Hors ligne
Pages : 1