|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre actif
![]() Inscription : juin 2004 Messages : 253 ![]() |
je travaille sur un script qui demande les droits d'administrateur, mais qui sera lancé par un utilisateur. Je sais qu'avec sudo il est possible de faire des trucs semblables, mais j'ignore comment faire la chose de la façon la plus sécuritaire.
Si quelqu'un pourrait me donné un exemple sur la façon de faire un script qui me montre comment programmé sudo pour permettre l'exécution d'un fichier qui s'appelerai "hello-world.sh" sans que j'ai à me soucié que l'utilisateur soit en root ou non .... P.S ce script aurait surement sa place dans un FAQ ... |
|
|
00
|
|
|
#2 |
![]() ![]() Nicolas ValléeIngénieur Système Inscription : décembre 2005 Messages : 9 774 ![]() |
ben tu fais ton script comme si root allait le lancer...
puis tu fais un tour du côté de /etc/sudoers et ça devrait passer ps: visudo devrait te l'ouvrir direct |
|
|
00
|
|
|
#3 |
|
Membre actif
![]() Inscription : juin 2004 Messages : 253 ![]() |
Si j'ai bien compris, j'ajoute cette ligne dans sudoer et à la fin de l'opération j'enlève la ligne.
J'aurai peut-être du précisé qu'il ne s'agissait qu'un logiciel pour configurer le path de configure et le lancer. Je m'attendais à quelque chose qui modifirait les droits du fichier. Remarque que je ne connais pas beaucoup les possibilité sur les droits et privilège. En fait, à titre de référence le programme sera un espèce de kconfigure ... Donc le script ne sera utilisé qu'une seul fois et que pour l'installation d'une seule application. Il y aurait-il d'autre approche moins lourde, parce que ton approche semble plus approprié pour un script qui pourrait-être utilisé plus d'une fois par l'utilisateur. |
|
|
00
|
|
|
#4 | |
![]() ![]() Nicolas ValléeIngénieur Système Inscription : décembre 2005 Messages : 9 774 ![]() |
Citation:
en effet... Code :
su -c "/path/to/the/script arg1 ... argN" |
|
|
|
00
|
|
|
#5 |
|
Membre actif
![]() Inscription : juin 2004 Messages : 253 ![]() |
Il semble que su soit un incontournable dans ce cas-ci ...
Trois questions additionnelles: - si on lance su d'un script, est-ce que su retourne une valeur pour confirmer le succes de l'opération ? - dans ta première solution puis tu fais un tour du côté de /etc/sudoers Code: username ALL ALL=/path/to/the/script* J'aimerai que tu confirme, parce que cette solution pourrait servir dans un autre cas de figure. Il suffirait que je rajoute cette ligne dans le dossier sudoers pour que le script fonctionne ? Enfin dernière question: dans le cas ou l'installation du programme se fait dans le répertoire de l'utilisateur, quelles mesures mon script pourrait prendre pour que l'installation ce fasse en douceur ? (Est-ce que je peux définir ou modifier les droits du programme qui est installé avec un script ?) À tous hasard, je te laisse un lien sur le programme qui t'éclaicira sur ce que je veut accomplir: http://www.guidelinux.org/phpBB/view...r=asc&start=15 Je te remercie d'avance pour ta patience ... |
|
|
00
|
|
|
#6 |
![]() ![]() Nicolas ValléeIngénieur Système Inscription : décembre 2005 Messages : 9 774 ![]() |
j'ai fait une erreur...
si je me souviens bien, le * c'est pour les arguments ps: je ne connais pas le ruby... alors je vais avoir du mal |
|
|
00
|
|
|
#7 |
|
Membre actif
![]() Inscription : juin 2004 Messages : 253 ![]() |
Oublie le langage de programmation et aborde la question avec le langage de ton choix. Disons que tu as fabriqué un jeux et que tu désires faire en sorte qui puisse être installé par un enfant de 9 ans.
Quels sont les choses qui pourrait-être programmé, pour faire en sorte que le petit bonhomme puisse se servir de son jeux, sans devoir être un habitué de Linux .... Attention le jeux est distribué sous forme de source ... |
|
|
00
|
|
|
#8 |
![]() ![]() Nicolas ValléeIngénieur Système Inscription : décembre 2005 Messages : 9 774 ![]() |
ben pourquoi ne pas faire un rpm ou un deb ?
ce sera géré par un outil adéquate |
|
|
00
|
|
|
#9 |
|
Membre actif
![]() Inscription : juin 2004 Messages : 253 ![]() |
En fait, s'essait d'envisager un autre système de packetage basé sur des tar.gz.
Quand on y pense, la compilation d'un programme varie très peu d'une version à une autre ainsi que les dépendances. Donc il n'est pas vraiment nécessaire d'avoir la méthode de compilation et l'application elle-même dans un même document. Donc,il serait concevable de faire un registre de "recette de compilation" qui prendrait en charge la compilation ainsi que l'ordre des compilations. En plus, je travail sur un modèle théorique de gestion de packetage en prolog et je crois que dans le système de paquetage existant,il manque des informations pour faire un système vraiment béton. |
|
|
00
|
|
|
#10 |
![]() ![]() Nicolas ValléeIngénieur Système Inscription : décembre 2005 Messages : 9 774 ![]() |
as-tu lu ceci ?
http://larkine.developpez.com/cours/unix/freesoftware/ |
|
|
00
|
|
|
#11 |
|
Membre actif
![]() Inscription : juin 2004 Messages : 253 ![]() |
Je te remercie, mais cela ne change pas mes frustrations vis-à-vis le système actuel. Il y manque deux choses à ce tuto, comment compilé et installé une librairie plus complexe pour un newbie...) et deuxièmement comment utilisé Jam plutôt que make ...
Je vois deux freins à l'automatisation, la première est configure, très acceptable pour un humain, mais pas très commode pour un programme. Les informations qu'il donne ne concorde pas avec le paquetage, en tous cas sur SUSE, le nom d'une librairie et le nom du packetage sont deux chose très différentes, qui ne peut être résolue sans une intervention humaine. Le deuxième est que des systèmes comme apt-get ne permet pas à utilisateur de ce donner une marge de sécurité. L'utilisateur devrait pourvoir choisir de programmer le gestionnaire de paquetage afin de ne pas avoir de paquetage donc la création date de moins de 200 jour, par exemple ... Enfin autre inconvénient du système de paquetage est qu'il est statique, dans un système ou les informations sur le paquetage et le paquetage ne font qu'un, on doit avisé les utilisateurs si une patch est nécessaire par la suite. Avec un régistre on peut traité la patch comme une post-dépendance ou modifier la valeur du régistre vers une autre version. Remarque que je connais pas le système des ports, si tu crois qu'il serait une meilleur base pour un système de paquetage géré par une IA, j'apprécie une évaluation des pour et des contre. |
|
|
00
|
|
|
#12 |
![]() ![]() Nicolas ValléeIngénieur Système Inscription : décembre 2005 Messages : 9 774 ![]() |
bah le système de ports, c'est surtout un genre d'apt-get qui télécharge les sources et recompile automatiquement
|
|
|
00
|
|
|
#13 |
|
Membre actif
![]() Inscription : juin 2004 Messages : 253 ![]() |
Mais il semble plus solide. Avec les RPM cette commande semble indispensable:
rpm --rebuilddb |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com