67 votes

La commande du terminal avec sudo prend beaucoup de temps

J'ai remarqué que le terminal devient récemment trop lent lorsque j'exécute une commande qui nécessite mon mot de passe. Il faut quelques secondes pour afficher [sudo] password for ...

J'utilise un Dell XPS developer edition (i7, 8G RAM) avec Ubuntu 13.04 64bit.

118voto

Paul Preibisch Points 1334

Bonjour, j'ai trouvé cette réponse sur une autre question - Le problème est que votre nom d'hôte n'est pas dans votre fichier hosts.

En gros, tapez "hostname" dans votre terminal. Cela vous dira quel est votre nom d'hôte.

Ensuite, tapez :

sudo nano /etc/hosts

et ajoutez :

127.0.0.1 yourhostname

puis enregistrez - et vous avez terminé ! Sudo devrait être rapide maintenant !

14voto

Ken Points 1

Lorsque vous changez le nom de votre système dans Gnome (la partie qui est affichée dans le terminal après le @ ; par exemple tobias@laptop a tobias@newlaptop vous devrez peut-être mettre à jour votre /etc/hosts :

127.0.1.1 laptop

doit être modifié en

127.0.1.1 newlaptop

Si vous le faites bien sudo devrait fonctionner sans délai immédiatement après avoir enregistré ce paramètre.

6voto

AH.Pooladvand Points 161

Réponse 1
Réponse confirmée de @Paul Preibisch pour ceux qui veulent une réponse plus détaillée

J'ai eu ce problème pendant longtemps et tout ce que j'ai fait c'est d'exécuter

hostnamectl | grep -i "static hostname"

Cela vous montrera votre nom d'hôte, puis copiez la valeur et éditez vos hôtes.

sudo vim /etc/hosts

et ajouter 127.0.0.1 yourHostName à elle
également dans certaines distros 127.0.1.1 yourHostName doit être remplacé


Réponse 2
Veuillez noter que dans de nombreux cas, l answer 1 résoudra votre problème si ce n'est pas le cas vous devez vérifier votre sudo qui, dans les distributions basées sur Debian, se trouve sous le nom de
/var/log/auth.log
afin que vous puissiez regarder votre journal sudo avec la commande tail
sudo tail -f -n 100 /var/log/auth.log
puis ouvrez un autre terminal et exécutez une commande sudo comme :
sudo ls /
Retournez à votre premier terminal et lisez le journal, dans mon cas le problème était dû à pam_krb5 l'échec de l'authentification, le journal était :
sudo: pam_krb5(sudo:auth): authentication failure;
après l'avoir supprimé, la commande sudo a fonctionné instantanément...

Merci à @gdm pour avoir donné l'indice...

0voto

Pour les paresseux - Copiez-collez simplement ceci dans votre terminal :)

echo -e '127.0.0.1\t' $(hostnamectl | grep -i "static hostname:" | cut -f2- -d:) | sudo tee -a /etc/hosts

sudo devrait être rapide après avoir exécuté ceci

Edit - Explication plus détaillée de cette commande :

  • Il commence par saisir votre hôte local en coupant la chaîne de label avant (hostnamectl | grep -i "static hostname :" | cut -f2- -d :), par exemple mylocalhost

  • Il le concatène avec 127.0.0.1 devant (" \t "signifie caractère de tabulation)

  • Il prend la chaîne complète créée ci-dessus ( 127.0.0.1 mylocalhost ) et l'ajoute à la fin de /etc/hosts (vous avez besoin de sudo pour éditer le fichier hosts)

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X