'sudo' n'est pas installé, je ne peux pas l'installer et il me demande si je suis root

20

Je viens de terminer l'installation de Debian 8 (Jessie) et j'ai essayé de créer un répertoire lib/firmware, car il manquait un fichier ( rtl8723befw.bin) dans l'installation, et il est dit

mkdir: cannot create directory `rtlwifi`: Permission denied

J'ai essayé de mettre sudo sur le devant, mais ça revient:

bash: sudo: command not found

Lorsque vous essayez d'installer sudo avec apt-get install sudoou même apt-get updateil retourne:

E: Could not open lock file /var/lib/dpkg/lock - open (13: Permission denied)
E: Unable to lock the administration directory (/var/lib/dpkg/), are you root?

Je ne sais vraiment pas quoi faire. Toutes les solutions que je semble trouver pour la dernière erreur sont d'utiliser sudo, mais je ne l'ai même pas.

MO
la source
2
Je n'utilise même jamais sudo. Toujours su -c.
M. Lister
Pourquoi avez-vous essayé d'utiliser sudo si vous avez défini le mot de passe root?
Braiam

Réponses:

40

Si vous ne l'avez pas sudoinstallé, vous devrez réellement devenir root. Utilisez su -et fournissez le mot de passe de l'utilisateur root (pas votre mot de passe) lorsque cela vous est demandé. Une fois que vous êtes devenu root, vous pouvez alors vous apt-get install sudodéconnecter du shell root et l'utiliser sudocomme vous le souhaitez, maintenant qu'il sera installé.

DopeGhoti
la source
5
Devenez à rootnouveau et ajoutez-vous au wheelgroupe. Utilisez également cette option visudopour vous assurer que la configuration permettant à toute personne du wheelgroupe d'utiliser sudon'est pas mise en commentaire.
DopeGhoti
3
Le sudogroupe sert le même but.
DopeGhoti
3
adduser yourusername sudo - notez que l'appartenance au groupe ne change vraiment que lorsque vous vous déconnectez complètement de toutes les sessions / connexions
ivanivan
4
Si vous pouvez vous connecter en tant que root, pourquoi ne pas simplement installer le firmware en tant que root? Oubliez sudo.
Carl
1
@Carl Parce que si vous le faites, vous ne vous déconnecterez pas un jour du compte root. Vous penserez à d'autres choses. Vous utiliserez le compte root en pensant que c'est l'une de vos connexions. Et tu vas casser quelque chose. C'est tout l'intérêt de sudo.
Paul Evans
15

Devenez root, exécutez su, donnez votre mot de passe root, puis exécutez:

apt install sudo

Pour accorder des privilèges administratifs à Mariel, exécutez la visudocommande en tant que root, puis modifiez votre fichier comme suit:

# User privilege specification
root    ALL=(ALL:ALL) ALL
Mariel  ALL=(ALL:ALL) ALL

Connectez-vous en tant qu'utilisateur Mariel. Vous pourrez exécuter sudo sans problème.

GAD3R
la source
1
C'est ce que je ferais aussi.
prosti
8

Comme alternative aux réponses données, si vous ne connaissez pas le mot de passe root pour vous permettre d'utiliser su, vous pouvez démarrer en mode mono-utilisateur.

Dans le menu grub, appuyez sur epour modifier la ligne de commande de démarrage. Vers la fin de la ligne commençant, linuxajoutez le mot singleet continuez le démarrage. Vous serez placé à une invite root et pourrez réinitialiser le mot de passe root afin de pouvoir l'utiliser suau prochain démarrage normal.

user4556274
la source
3

Vous pouvez l'utiliser su -ccomme un remplacement rapide et sale. Si votre sune comprend pas -c, alors suconnectez-vous en tant que root. Si vous travaillez sur une sorte d'appareil embarqué étrange qui n'en a pas su, essayez login rootplutôt.

abricot garçon
la source