#1 Le 08/04/2008, à 20:46
- Krevan
[résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Bonjour !
J'ai écrit un petit script pour me faciliter la tâche dans des transferts de fichiers fastidieux que j'effectue tout les jours. Seulement dans ce fichier je dois exécuter mount /dev/sdb1 /media/usb0 et, donc, le script doit être lancé avec le préfixe «sudo».
Avant je me déplaçait dans son dossier et je tapais exactement sudo ./transvid. Maintenant pour me faciliter encore plus la tâche je l'ai mis dans le dossier /home/user/bin. Dossier que j'ai ajouté à $PATH.
Lorsque je lance le programme en tapant transvid il se lance mais plante assez vite puisqu'il faut les droits de superutilisateur. Je lance donc sudo transvid mais, là, le script ne se lance pas du tout, on me dit que «sudo: transvid: command not found».
J'ai essayé avec d'autre de mes scripts pour voir: exactement la même réponse !
J'aurais bien besoin de votre aide, là.
Je vous en remercie d'avance.
Krevan
Dernière modification par Krevan (Le 12/04/2008, à 20:46)
« Ce n'est pas une miette de pain, c'est la moisson du monde entier qu'il faut à la race humaine, sans exploiteur et sans exploité. »
Louise Michel
Hors ligne
#2 Le 08/04/2008, à 21:31
- xelator
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
je ne sais pas ce que je dis mais il n'y a pas un PATH root et un PATH user
comme /bin et /usr/bin ?
dans ce cas il faudrait mettre /home/user/bin comme PATH root et user.
Ou alors j'ai tout faux.
Ou alors fait un lien /home/user/bin/transvid vers /bin/transvid
Hors ligne
#3 Le 09/04/2008, à 08:31
- trucutu
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Quand tu tapes sudo -l, tu as la liste des commandes utilisables par sudo. Il faut donc que tu rajoutes le chemin de ton script dans cette liste. Par contre, je ne sais pas comment on fait...
La chanson du dimanche - "La pêche !"
PC acheté chez Novatux : entièrement satisfait.
Faire des recherches solidaires !
Hors ligne
#4 Le 09/04/2008, à 09:29
- Orion Elenion
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Tout est dans la variable d'environnement PATH.
Pour root, cette variable est définie/modifiée dans l'un des fichiers suivants (de mémoire) :
/etc/profile
/etc/bashrc
/root/.profile
/root/.bashrc
/root/.bash_profile
(Je crois.)
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#5 Le 09/04/2008, à 09:31
- Orion Elenion
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Note aussi que, dans /etc/fstab, tu peux ajouter l'option "user" aux périphériques pour qu'il soit possible de les monter par un non-root.
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#6 Le 09/04/2008, à 09:37
- wblitz
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
tu peux également utiliser "sudo <ma commande>" directement dans le script. il te restera à ajouter les droits pour l'utilisateur qui le lance (toi en l'occurrence) avec "sudo visudo", de manière à ne pas avoir de mot de passe à donner pour la commande mount, par exemple.
tu peux également modifier le fichier /etc/fstab pour qu'un utilisateur normal puisse monter la partition /dev/sdb1 :
/dev/sdb1 /media/usb0 <type de la partition> user,noauto,rw 0 0
ainsi, ton utilisateur pourra lancer la commande :
mount /media/usb0
qui montera la partition (sans utiliser sudo) en lecture écriture (rw <=> ro pour lecture seule)
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#7 Le 09/04/2008, à 13:22
- yohann
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Bonjour !
J'ai écrit un petit script pour me faciliter la tâche dans des transferts de fichiers fastidieux que j'effectue tout les jours. Seulement dans ce fichier je dois exécuter mount /dev/sdb1 /media/usb0 et, donc, le script doit être lancé avec le préfixe «sudo».
Avant je me déplaçait dans son dossier et je tapais exactement sudo ./transvid. Maintenant pour me faciliter encore plus la tâche je l'ai mis dans le dossier /home/user/bin. Dossier que j'ai ajouté à $PATH.
Lorsque je lance le programme en tapant transvid il se lance mais plante assez vite puisqu'il faut les droits de superutilisateur. Je lance donc sudo transvid mais, là, le script ne se lance pas du tout, on me dit que «sudo: transvid: command not found».
J'ai essayé avec d'autre de mes scripts pour voir: exactement la même réponse !J'aurais bien besoin de votre aide, là.
Je vous en remercie d'avance.Krevan
qd je vois ça je me dis => cron
sudo crontab -e
voir crontab dans la doc,
le concept c'est que root executera le script tout les jour a une heure dite
j.vachez, le génie du net | Soirées jeux sur Lyon | 441
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++
..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.
Hors ligne
#8 Le 09/04/2008, à 13:59
- Orion Elenion
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Peut-être ne le fait-il pas à heures fixes... Genre, en rentrant du taf, il branche sa clé pour copier son travail de la journée...
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#9 Le 09/04/2008, à 14:17
- yohann
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
alors anacron, mais j'ai jamais utilisé
j.vachez, le génie du net | Soirées jeux sur Lyon | 441
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++
..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.
Hors ligne
#10 Le 09/04/2008, à 21:44
- Krevan
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Peut-être ne le fait-il pas à heures fixes... Genre, en rentrant du taf, il branche sa clé pour copier son travail de la journée...
C'est ça, oui.
En tout cas merci à tous pour vos réponses. Je crois que je vais opter pour l'option du fstab tout en me renseignant sur cette histoire de $PATH root.
Merci encore à tous.
« Ce n'est pas une miette de pain, c'est la moisson du monde entier qu'il faut à la race humaine, sans exploiteur et sans exploité. »
Louise Michel
Hors ligne
#11 Le 10/04/2008, à 05:28
- Orion Elenion
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Un petit [Résolu] dans le titre du topic ? (éditer ton premier message pour cela)
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#12 Le 10/04/2008, à 20:22
- Krevan
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
J'attendais d'être sûr que ça marche.
J'ai bien fais ça ne marche pas: quand je fais la modification dans le fstab, je relance le tty après, mais ça ne change rien, il me demande les droits de superutilisateur pour monter la clé usb...
« Ce n'est pas une miette de pain, c'est la moisson du monde entier qu'il faut à la race humaine, sans exploiteur et sans exploité. »
Louise Michel
Hors ligne
#13 Le 10/04/2008, à 20:38
- yohann
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
http://blog.roozeec.fr/2008/04/09/faire … ous-linux/
regarde ça, je crois que ça correspond à ce que tu veux faire
j.vachez, le génie du net | Soirées jeux sur Lyon | 441
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++
..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.
Hors ligne
#14 Le 10/04/2008, à 21:24
- Krevan
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
En fait non, merci quand même.
Je vais essayer d'être un peu plus précis pour mieux vous aiguiller.
En gros, je me sert de mon portable — entre-autre, hein, quand même ! — pour regarder des films, zodes de mes séries préférées... dans le train en allant et en rentrant du boulot. Du coup tous les soirs, je choppe ma clé USB et je l'utilise pour transférer les vidéos — mon laptop n'a ni accès au net ni au réseau local.
Autre précision, mon laptop ne dispose pas d'un environnement graphique d'installé, histoire de gagner en autonomie, je n'utilise que les tty et je lis mes vidéos avec mplayer.
Du coup c'est assez fastidieux de transférer mes vidéos tous les jours et de faire une petite dizaine de manip répétitives. D'où l'idée du script.
« Ce n'est pas une miette de pain, c'est la moisson du monde entier qu'il faut à la race humaine, sans exploiteur et sans exploité. »
Louise Michel
Hors ligne
#15 Le 11/04/2008, à 08:36
- wblitz
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
tu peux donner la ligne que tu as mis dans le fstab et la ligne de commande que tu as tapé pour monter la clé ?
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#16 Le 11/04/2008, à 15:10
- Orion Elenion
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Essaie ça :
vol_id -u /dev/sdb1
Note la valeur UUID donnée, puis entre dans le fstab :
UUID=valeur_relevée /media/usb0 type_du_système_de_fichiers_sur_ta_clé defaults,user,rw 0 0
C'est peut-être mieux pour gérer la clé de recourir à son UUID.
Si ça ne fonctionne toujours pas, quelques pistes en vrac :
- l'utilisateur a-t-il le droit de créer/d'accéder au répertoire /media/usb0 ?
- le fichier /bin/mount a-t-il bien les droits suivants : -rwsr-xr-x ? (le 's' est très important)
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#17 Le 12/04/2008, à 00:24
- Krevan
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Merci à vous encore, mais ça ne fonctionne toujours pas.
Voici les lignes demandées.
/etc/fstab
# /dev/sdb1
UUID=ac11-87ab /media/usb0 fat user,noauto,rw 0 0
mon_code
$ mount /dev/sdb1 /media/usb0
mount: doit être le super usager pour utiliser mount.
Pourtant j'ai fais un chmod 777 sur /bin/mount, pour être sûr.
« Ce n'est pas une miette de pain, c'est la moisson du monde entier qu'il faut à la race humaine, sans exploiteur et sans exploité. »
Louise Michel
Hors ligne
#18 Le 12/04/2008, à 17:07
- Orion Elenion
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Essaie plutôt :
sudo chmod 4755 /bin/mount
Surtout pas 777 là-dessus, malheureux ! Tu pourrais permettre à n'importe qui d'exécuter n'importe quoi sur ta machine par une attaque "sushi" !
Ubuntu is an ancient african word meaning : "I can't configure Debian".
Hors ligne
#19 Le 12/04/2008, à 18:31
- wblitz
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Code:
$ mount /dev/sdb1 /media/usb0
mount: doit être le super usager pour utiliser mount.
Pourtant j'ai fais un chmod 777 sur /bin/mount, pour être sûr.
il ne faut surtout pas faire ça... lance la commande indiquée par orion elenion :
sudo chmod 4755 /bin/mount
et ensuite essaie ceci :
mount /media/usb0
(plus besoin d'indiquer le device, ça sera détecté automatiquement via le fstab)
Dernière modification par wblitz (Le 12/04/2008, à 18:36)
"Un optimiste, c'est un homme qui plante deux glands et qui s'achète un hamac" - Jean de Lattre de Tassigny
Pensez à mettre [RÉSOLU] dans le sujet de vos posts une fois qu'ils le sont...
quelques docs
Hors ligne
#20 Le 12/04/2008, à 19:03
- Krevan
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
Merci! Ça marche maintenant.
Encore quelques questions toutefois pour la route et je mettrais le sujet en résolu - contourné.
* vol_id -u /dev/sdb1 ne renvoie pas une valeur reconnue par mon fstab. Il me dit qu'en gros «ac11-87ab» n'existe pas. Ça marche avec /dev/sdb1 mais j'aimerais quand même savoir.
* qu'est ce qu'une attaque «sushi» ?
« Ce n'est pas une miette de pain, c'est la moisson du monde entier qu'il faut à la race humaine, sans exploiteur et sans exploité. »
Louise Michel
Hors ligne
#21 Le 12/04/2008, à 19:23
- yohann
Re : [résolu (contourné)] Script dans le $PATH ... lancer avec sudo ?
su shell
cela permet de lancer un shell en root avec les consequence que ca entraine...
j.vachez, le génie du net | Soirées jeux sur Lyon | 441
++++++++++[>+++++++>++++++++++>+++<<<-]>++.>+.+++++++
..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.
Hors ligne