Je suis donc connecté en tant qu'utilisateur 'Shannon', mais je ne peux pas obtenir un accès root via l'interface graphique lorsque je suis invité à installer un programme, par exemple. Cependant, en utilisant Sudo su
, tapez le mot de passe root, accédez-y via le terminal, puis installez les programmes à partir de là. Ces mots de passe ne sont-ils pas supposés être identiques?
Est-ce que quelqu'un sait comment réparer celui-ci?
OK, laissez-moi écrire une petite clarification. Il existe deux utilisateurs différents: Shannon
et root
. Dans Ubuntu, par défaut, root
ne possède pas de mot de passe et ne peut pas se connecter . Si Shannon
souhaite effectuer une tâche nécessitant des privilèges root, il utilise la commande Sudo
qui consulte un fichier appelé _/etc/sudoers
_ et a la capacité de transformer Shannon
en root
.
Par défaut, Sudo
veut s'assurer que Shannon
est en réalité Shannon
et non son chien qui vient de prendre le contrôle du clavier. C'est pourquoi Sudo
demande à l'utilisateur Shannon
de son mot de passe (et non de la racine). Notez également qu'une "tâche nécessitant des privilèges root" peut être un shell bash, ce qui signifie essentiellement que vous pouvez vous connecter en tant que root (sans utiliser de mot de passe root!).
Ainsi, ce n'est pas que les deux utilisateurs (Shannon
et root
) aient des mots de passe différents, mais que le mot de passe de root
ne soit pas demandé du tout .
Personnellement, je n'ai pas de chien; c'est pourquoi j'ai modifié _/etc/sudoers
_ de telle sorte qu'il ne me demande jamais mon mot de passe - cela suffit. Utilisation de la commande _Sudo visudo
_ J'ai édité _/etc/sudoers
_ et modifié la ligne suivante:
_%Sudo ALL=(ALL:ALL) ALL
_
La ligne ci-dessus signifie que tous les utilisateurs du groupe Sudo (et je ne peux que supposer que Shannon
appartient à ce groupe s'il a installé son système) peuvent exécuter essentiellement TOUTES les commandes racine.
_%Sudo ALL=(ALL:ALL) NOPASSWD: ALL
_
Ah, mais maintenant, la directive NOPASSWD fait en sorte que non seulement je puisse exécuter n’importe quel programme en tant que root, je peux également le lancer sans être inquiété pour la saisie d’un mot de passe. Notez que pour éditer ce fichier, je doit utiliser le programme visudo
qui m'assure que je ne fais pas d'erreur de syntaxe. Une erreur de syntaxe dans le fichier sudoers
peut complètement désactiver le système Sudo - et ensuite, si root ne possède pas de mot de passe, vous êtes dans un kacka profond.
Pour ajouter à la confusion, il existe un autre programme permettant d’obtenir temporairement les privilèges root appelés su
. Cependant, su
est beaucoup plus primitif - il demande simplement le mot de passe de la racine . Par conséquent, cela ne fonctionne pas dans une installation Ubuntu par défaut.
Alors, quel mot de passe est demandé quand vous tapez _Sudo su
_? Eh bien, la commande que vous exécutez en premier est Sudo
, pas su
. Ainsi, vous êtes invité à saisir le mot de passe de Shannon
, et non les racines. Sudo
acquiert ensuite les privilèges root et exécute su
en tant que root. Mais lorsque la racine exécute su
, su
ne demande pas de mot de passe. Dans tous les cas, ne faites pas cela - c'est à cela que _Sudo -i
_ est destiné (fait exactement la même chose).
Par défaut, root est verrouillé dans Ubuntu.
Pour obtenir les privilèges root, nous utilisons Sudo su
où il nous demande notre mot de passe.
Lors de l'installation de tout logiciel, le système vous demande également le même mot de passe.
Pour déverrouiller le compte root, utilisez Sudo -i
et passwd
de cette manière, vous pouvez déverrouiller le compte root, ce qui n’est pas conseillé.