Bonjour,
sudo n'est pas forcément installée/configurée sur toute les distributions, de la même façon. De ce fait, je pense qu'il faut nuancer les commandes suivantes :
L'intérraction entre un utilisateur normal et root se fait soit, selon la distribution, par la commande sudo, soit par la commande su.
su est la commande de base pour effectuer une action sous un autre nom d'utilisateur (l'action peut-être un login, ou une commande complète).
sudo est une encapsulation du la commande su. Son interet est de pouvoir donner des droits particuliers sur l'usage de l'exécution de processus sous le couvert d'une identitée différente. Exemple : autoriser un utilisateur à lancer une sauvegarde oracle, comme s'il etait root.
En bash, lorsque l'on doit effectuer une commande "sensible", et donc la réaliser en root, on tape :
soit
Code : Sélectionner tout - Visualiser dans une fenêtre à part sudo "commande"Et lorsque l'on doit taper plusieurs commandes en mode root, il est parfois utile de se loguer directement en root avec :
Code : Sélectionner tout - Visualiser dans une fenêtre à part su -c 'commande'
soit simplement
Code : Sélectionner tout - Visualiser dans une fenêtre à part sudo su
Code : Sélectionner tout - Visualiser dans une fenêtre à part su
Concernant la commande su, il existe aussi deux façons de l'invoquer.
Qui nous fai devenir Super utilisateur dans l'environnement de celui-ci, ou
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 su <mot de passe>
Qui nous fait aussi passer Super Utilisateur mais en récupérant l'environnement root.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 su - <mot de passe>
![]()
L'éventuel paramètre de su n'est pas le mot de passe, mais le mon d'utilisateur sur lequel on veut se loguer. Parce que c'est pas forcément en root qu'on veut se loguer.
Le - (ou -l ou -login) sert à fournir le même environnement qu'on aurait eut en se loguant directement en tant que l'utilisateur cible.
Il est impossible de passer le mot de passe a "su" comme il l'est pour passwd ou ssh ...
Roulement de tambours...
La FAQ a été mise à jour !!
http://linux.developpez.com/faq/
(déjà en ligne, mais sera annoncé normalement demain)
Si vos contrib n'y figurent pas, merci de laisser un message après le bip et toutes nos excuses par avance
Si tout est ok, on fera le ménage dans ce topic pour ne pas qu'il devienne trop long.
![]()
Juste un mot concernant le sudo merci de ne pas faire l'amalgame entre root et sudo (hein Manumation)
sudo n 'est en aucun cas un super utilisateur ou autre !, ne n'est qu'une commande qui attribue temporairement des droits d'admin à un utilisateur lamba ou un groupe d'utilisateur, d'ailleur sudo signifie : "SuperUser DO"
Or il s'avère que sur Ubuntu il est installé par défaut est que celui qui installe la machine est inscrit dans sudo par défaut !
Exemple d'utilisation du sudo :
Passer en root (a utiliser avec moultes précautions):
Exécuter une commande avec des droits d'admin :
Code : Sélectionner tout - Visualiser dans une fenêtre à part $ sudo su
Sudo pour application graphique (gnome) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part $ sudo <commande>
Sudo pour application graphique (kde) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part $ gksudo <application>
Par exemple pour ajouter des privilèges super-utilisateur à un utilisateur
Code : Sélectionner tout - Visualiser dans une fenêtre à part $ kdesudo <application>
Je rappelle pour les ubunteros, ne JAMAIS affecter de mot de passe au compte root, il est désactivé, c'est normal
Code : Sélectionner tout - Visualiser dans une fenêtre à part $ sudo adduser <login> admin
Un peu de lecture : http://doc.ubuntu-fr.org/sudo
De plus vu sur la FAQ :
Comment lancer des commandes root en étant loggé en tant qu'utilisateur normal ?
"Le paramètre "NOPASSWD" indique à sudo qu'il ne doit demander le mot de passe de l'utilisateur avant de lancer la commande."
C'est aberrant d'insécurité de proposer ça dans la FAQ![]()
![]()
Voila que pensez-vous de rajouter la distribution RedHat Entreprise sur la FAQ ?![]()
J'ai commencé
http://www.developpez.net/forums/sho...d.php?t=513304
A venir comment s'inscrire sur le Red Hat Network et utiliser la version au support limité![]()
bonjour à tous, ça fait un moment que j'utilise votre site qui est une mine d'or. C'est pourtant la première fois que je poste.
Un item de la FAQ me semble un peu léger au niveau sécurité :
http://linux.developpez.com/faq/?page=devel#pointslash
Imaginez un petit malin qui place un executable nommé "rm" trafiqué pour utiliser les options "-rf /"par défaut dans le /home d'un utilisateur ... au mieux, tous les fichiers personnels de cet utilisateur seront détruis. Au pire, c'est tout le système qui disparaitra si la commande a été lancée avec les droits d'admin
c'est une très bonne idée pour une utilisation à la maison mais ça ouvre une faille de sécurité très importante pour une utilisation en entreprise, par exemple.
ça serait bien de le préciser![]()
Je suis assez d'accord pour dire que mettre le . dans le PATH est une assez mauvaise idée.
D'un point de vue sécurité d'une part.
-> Si jamais "." doit se trouver dans le PATH, c'est en tant que dernière entrée uniquement. Sinon, un admin qui se balade dans les répertoires et fait un simple ls risque d'exécuter un programme non prévu.
Ou encore... un simple "[1;2c" sur la ligne de commande après avoir fait un cat d'un fichier binaire. Si on appuie sur entrée, les programmes [1 et 2c vont être cherchés et exécutés. Si ils se trouvent dans le répertoire ".", dommage...
Mais aussi d'un point de vue pédagogique. Combien de fois j'ai vu (à la fac, en TP) des gens taper "test" ou "expr" pour lancer leur programme et passer des heures à chercher le bug parce que rien ne se passe...
-> Mettre "." plus tôt dans le PATH ne serait pas une solution. D'une part à cause des problèmes de sécurité, mais aussi parce que les gens ne devraient pas confondre les commandes et leurs programmes. (Bien que les commandes soient des programmes.)
Bref, je pense que cette entrée de la FAQ devrait être complétée.
Le projet GNU n'a pas pour but de développer des logiciels open source (ils sont contre cette idéologie, comme ils l'expliquent dans l'essai "Open Source Misses The Point") mais un système d'exploitation libre : GNU. Hurd est un noyau, pas un système.
sois plus précis : cites ce à quoi tu réponds, je ne vais pas relire tout le sujet pour comprendre ce que tu veux dire.
Je réponds à personne, tu sais pas lire? J'ai mis que je répondais à la FAQ. Je dis su'il y a un problème dans la FAQ, quoi!
donc, personne n'a dit, dans la discussion, que «GNU [a] pour but de développer des logiciels open source», et tu inventes des polémiques, tout seul.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager