Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:systeme:sudo [06/11/2017 10:37] smolski [Utilisation de SUDO] |
doc:systeme:sudo [02/08/2018 08:05] smolski [Introduction] Modification de texte des exemples sudo |
||
---|---|---|---|
Ligne 33: | Ligne 33: | ||
Voilà un logiciel permettant de lancer **[[doc:systeme:superutilisateur | des commandes root]]** en maintenant un terminal **user** ouvert. | Voilà un logiciel permettant de lancer **[[doc:systeme:superutilisateur | des commandes root]]** en maintenant un terminal **user** ouvert. | ||
+ | ==== Utilisation de sudo ==== | ||
+ | |||
+ | <note tip>Sudo lui-même prend comme argument **une commande et ses paramètres**, pas une expression du shell.</note> | ||
+ | Quand on utilise sudo, il est important de bien comprendre comment fonctionnent le [[doc:programmation:shell:shell|shell]] et [[doc:programmation:shell:regexp|ses opérateurs de redirection et de condition]]. \\ | ||
+ | Pour le shell, la commande passée à sudo et **elle seule**, (pas les //opérateurs// donc) est vue comme un argument du programme sudo. | ||
+ | |||
+ | Pour exécuter une expression du shell avec sudo, il faut spécifier un shell comme commande et l'expression comme paramètre de celle-ci. | ||
+ | |||
+ | === Exemples : === | ||
+ | |||
+ | <code user>sudo commande > fichier</code> | ||
+ | est interprété en distinguant les arguments (ici la commande de son application) comme : | ||
+ | |||
+ | [sudo] //lacommande//] > [//lefichier//] | ||
+ | |||
+ | et **NON** comme deux ensembles composés de : | ||
+ | |||
+ | [sudo] [//lacommande// > //lefichier//] | ||
+ | |||
+ | <note important>c'est donc **le shell de l'utilisateur** courant qui écrit dans fichier, et non pas **le shell de root**.</note> | ||
+ | |||
+ | Dans la même veine : | ||
+ | <code user>sudo commande1 && commande2</code> | ||
+ | est interprété comme : | ||
+ | |||
+ | [sudo //lacommande1//] && [//lacommande2//] | ||
+ | |||
+ | **sans appliquer le sudo** sur //lacommande2// donc. | ||
+ | <note>Dans les exemples ci-dessus les crochets servent à visualiser la priorité d'exécution. \\ | ||
+ | Les expressions résultantes appliquées en copie/colle ne seront donc pas valides. LOL</note> | ||
+ | |||
+ | ==== Remerciements et liens : ==== | ||
+ | |||
+ | Merci à **Walker29** et **raleur** pour avoir initié ces précisions sur le forum là : | ||
+ | * https://debian-facile.org/viewtopic.php?pid=242982#p242982 | ||
+ | |||
+ | //Qu'une pluie de choco df leur soit à tous deux prescrit... \\ | ||
+ | Quand ce sera possible bien sûr !// ;-) | ||
===== Installation ===== | ===== Installation ===== | ||