Кожен раз, коли я використовую судо, він висить перед завершенням


12

Незалежно від того, мені буде запропоновано ввести пароль чи ні, він перебуває між прийняттям автентифікації та виконанням того, про що я попросив. Іншими словами, sudo lsбудете висіти близько 60 секунд.

Я розгублений, що може спричинити це. Це на Centos 5, і я переглянув selinuxі встановив його як відключеним, так і включеним, але, схоже, це не має ніякого ефекту.

Відповіді:


15

З відповіді @ TheAndruu на це запитання:

Це відбувається, якщо ви зміните ім'я хоста під час встановлення. Щоб вирішити проблему, відредагуйте файл / etc / hosts

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 [ADD_YOURS_HERE] 
:: 1 localhost localhost.localdomain localhost6 localhost6.localdomain6 [ADD_YOURS_HERE]

У Fedora 11 у мене була точно така ж проблема, і це вирішило її.


Я просто переконався, що моє $HOSTNAMEбуло встановлено в 127.0.0.1лінійці. Це спрацювало. Дякую.
dlamblin

1
BTW sudo lsяким чином використовує мережу?
dlamblin

Це також працювало на ubuntu 16.04 - за винятком того, що мені довелося змінити ім’я на 127.0.1.1 - 127.0.0.1 було localhost
Білл Райдер

1

Іноді, коли ваш маршрут за замовчуванням не встановлено, такі команди, як sudo, висять.

Спробуйте netstat -rперевірити, чи правильно встановлений маршрут.

Чи отримує ця машина свої паролі з локального / etc / passwd-файлу чи щось на зразок ldap?


Це не використовується ldap; Я думаю, що це використовується/etc/passwd
dlamblin

/etc/passwdне використовується для auth, він використовується для ідентифікації для вирішення імені. /etc/shadowвикористовується для аутентифікації.
LiraNuna

1

Єдине, що ви, можливо, захочете перевірити, це ваш файл /etc/resolv.conf, щоб переконатися, що у вас є належний запис dns. Я раніше бачив, де це може спричинити затримку.


1

Ви повинні перевірити три речі. 1. / etc / hostname 2. / etc / hosts 3. /etc/resolv.conf

Я виявив, що моє ім’я хоста було правильним, що файл hosts був невірним, а крім того, що дозвіл resv.conf потребував оновлення.


1

Для мене це було встановлено krb5-user / config. Я помітив це, вивчивши /var/log/auth.log і побачивши спроби pam_krb5 перед pam_unix. За допомогою apt-get remove для видалення виправлених пакетів. Не видаляйте ці пакунки, якщо на комп’ютері очевидно потрібен kerberos (pam_krb5). Мій дзвінок на судо пішов від постійних 30-х до 0-х.


1

Це натякають в Halsafar «s відповідь , я включений Kerberos на моїй роботі VPN , але це марно , коли я від нього, тому я змінив порядок модуля аутентифікації в /etc/pam.d/common-authдля використання pam_unixперед тим pam_krb5:

Перед:

auth [success=4 default=ignore] pam_krb5.so ...
auth [success=3 default=ignore] pam_unix.so ...

Після:

auth [success=4 default=ignore] pam_unix.so ...
auth [success=3 default=ignore] pam_krb5.so ...

Це змінило моє судо з 30-х на 0, як це було у відповіді Халсафара.


0

На Solaris 10 судо висіло близько 30 секунд. За допомогою кроквяних ферм я нарешті зміг визначити, що він висить на команді квоти, яка висить на кріпленні NFS. Відключення частки NFS усунуло зависання. Ще не визначили, що не так з часткою.


0

У Fedora 30 Snapd спричиняє дуже повільне звучання судо-су, тощо, а також інших проблем, пов’язаних із сеансом.

Видалення оснащення, якщо ви в Fedora, є рекомендованою альтернативою.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.