Cela semble être un problème d'œuf de poule. La tâche la plus courante sudo
consiste à installer et à supprimer des logiciels.
sudo apt-get purge <appname>
Mais sudo
lui-même peut être enlevé.
sudo apt-get purge sudo # Do not run this command on production computers!
C'est là que le plaisir vient
ubuntu@ubuntu:~$ sudo
bash: /usr/bin/sudo: No such file or directory
Bien qu'il soit évident qu'aucune personne sensée ne se purge sudo
(autre que moi), quelqu'un peut être dupé d'exécuter cette commande (pas directement, en mode hexagonal ou quoi que ce soit appelé) ou une personne pourrait SSH déguisée en gourou de la technologie et faire le désordre .
Alors, y a-t-il un moyen de réinstaller sudo?
sudo
software-installation
Utilisateur enregistré
la source
la source
root
utilisateur. Vous pouvez ensuite utilisersu
ou vous connecter directement en tant que root si vous avez un accès physique à la machine (ssh sera généralement configuré pour refuser les tentatives de connexion en tant que root).sudo
et n’a pas de «démarrage sécurisé» ou l’équivalent. Le seul moyen que je connaisse est d’aller dans lexda-dev
paquet d’installation complet pré-construit. Vous avez de la chance, pour ainsi dire, de ne pas avoir cette limitation.Réponses:
Je peux installer des applications en utilisant:
De
man pkexec
:Donc, je suppose que cela
pkexec apt-get install sudo
devrait fonctionner aussi bien.Edit : maintenant je peux confirmer: oui ,
sudo
peut être installé en utilisantpkexec apt-get install sudo
:( cliquez pour agrandir )
la source
sudo apt-get install gksu ubuntu-minimal
. Mais mieux, vérifiez quels paquets ont été supprimés dans le même temps avecsudo
.policykit-1
(à partir de 12.04). Il peut être supprimé, mais aux dépens de la suppression des packages que vous souhaiteriez généralement sur un système de bureau tel quegnome-core
etubuntu-desktop
(sur un serveur, il est plus probable que rien ne soit requis par un package nécessaire). Cependant, Radu, qu'est-ce qui détermine que votre compte peut utiliserpkexec apt-get …
? Est-ce quelque chose que vous avez configuré, ou est-ce que cela se produit automatiquement, et si oui, qu'est-ce qui détermine qu'un compte peut le faire?sudo
groupe peuvent utiliserpkexec
. (Mon expérience est que l' ajout d' utilisateurs à ce groupe confère despkexec
capacités et les en retirer supprime lespkexec
capacités, de cette façon, lespkexec
capacités semblent conférer le même était que lessudo
capacités de la valeur par défautsudoers
config, ce qui est logique puisque pouvoirsudo
et enpkexec
tant que root sont principalement ce qui fait d’un utilisateur un administrateur dans Ubuntu.) Je ne pense pas que la désinstallationsudo
supprime lesudo
groupe. Mais je ne suis pas tout à fait sûr que mes suppositions soient vraies dans toutes les circonstances raisonnables.Vous pouvez toujours démarrer en mode de récupération , accéder au shell root et l’installer sans sudo.
la source
passwd
. Redémarrez normalement, en ligne de commande, entrezsu
suivi du nouveau mot de passe, puis lancezapt-get install sudo
(sans lesudo
préfixe)Oui, la réinstallation du
sudo
paquet serait possible via la méthode chroot .Premier démarrage à partir du disque live Ubuntu.
Montez la partition Ubuntu précédemment installée dans le répertoire de votre choix. Dans mon cas, je l’ai montée
/media/ubuntu
.Par défaut, vous ne pouvez pas obtenir de connexion Internet après avoir été chrooté dans une partition. Alors, exécutez la commande ci-dessous pour que cela fonctionne.
Merci à @ Oli pour ce merveilleux morceau de code.
Maintenant, chrootez dans ce répertoire monté,
Installer le
sudo
paquet en cours d'exécution,Quittez maintenant l'environnement chrooté.
Enfin, démarrez votre système d'exploitation Ubuntu.Maintenant, testez votre
sudo
commande, elle fonctionnera sûrement.la source
Démarrez avec le paramètre supplémentaire
init=/bin/sh
sur la ligne de commande du noyau. Cela vous mettra directement dans un shell racine, à partir duquel vous pourrez simplement exécuterapt-get install sudo
, puis redémarrer. Vous devrez peut-être exécuter/etc/init.d/networking start
pour obtenir une connexion réseau opérationnelle en premier. Beaucoup plus simple que de jouer avec des CD de récupération ou des disques live, si vous me le demandez.la source
Si vous avez déjà défini ou mis à jour le
root
mot de passe du compte utilisateur à l'aide de cette commande,sudo passwd root
vous n'avez pas à vous soucier de la purge.sudo
Connectez- vous simplement à votreroot
compte, puis installez-lesudo
.Cliquez ici pour agrandir
la source
su
sur mon ordinateur donne "su: échec d'authentification", bien que j'ai fourni le mot de passe correctsudo
Maintenant, essayez cecisudo passwd root
, il vous permettra de mettre à jour le mot de passe du compte utilisateur root.Now relogin dans votre compte root en exécutant commande.Une fois quesu
vous pouvez vous connecter, vous serez libre de purger sudo.Maintenant purge sudo parsudo apt-get purge sudo
.Connectez-vous à votre compte root pour réinstaller le paquet sudo en exécutantsu
etapt-get install sudo
sudo (et tout autre privilège racine) ne s'applique qu'au système d'exploitation en cours d'exécution. Si vous avez été stupide et que vous avez supprimé sudo (ou / usr /) et que vous n'avez pas de substituts comme pkexec, vous pouvez simplement démarrer à partir de quelque chose d'autre, copier le logiciel manquant et redémarrer à nouveau.
L'accès physique annule toute sécurité logicielle que votre système peut avoir.
la source
Ce problème semble être très spécifique à Ubuntu. En tant qu'utilisateur non-ubuntu, je ne comprenais même pas au début pourquoi sudo serait de toute façon un cas particulier (de nombreuses distributions ne l'installent pas par défaut).
Vous n'avez pas du tout besoin de sudo. C'est juste un raccourci paresseux qui vous permet d'exécuter une commande racine sans vous connecter réellement en tant que root. Cependant, si vous devez faire autre chose qu'une seule commande, il est simplement horrible de toujours préfixer tout avec sudo. Sans oublier que l'utilisation
sudo
rend les utilisateurs ignorants du fonctionnement des autorisations et du compte root. Il est beaucoup plus logique de simplement vous connecter en tant que root, d’administrer le système et de vous déconnecter. C'est ce que vous faitessu
si vous êtes déjà connecté en tant qu'utilisateur régulier. Ou vous pouvez vous connecter directement en tant que root.Bien sûr, vous devez
root
définir un mot de passe, c’est une configuration raisonnable. Sinon, vous disposez d’un système semblable à celui de Windows où certaines actions ne peuvent pas être exécutées et vous êtes réellement verrouillé si vous n’êtessudo
pas disponible (cela nécessite de travailler/etc/
, définir$PATH
et d’autres tâches). choses montées - que vous pouvez ne pas avoir si quelque chose ne va pas au début du démarrage).la source
sudo
d'ubuntu devrait également envisager de définir le mot de passe root (d'autres questions ont indiqué comment procéder). Un utilisateur qui se fiche de ce genre de choses peut continuer à utiliser sudo.