Вопрос: Почему команда sudo занимает много времени?
За последние несколько месяцев я подбирал Linux (Fedora 10, а затем 11) (и наслаждаюсь им очень - это все равно, что открывать компьютеры снова, так много всего, чему можно научиться).
Я добавил моего пользователя в последнюю строку файла / etc / sudoers, как показано ниже, так что я не получаю запрос на мой пароль при выполнении команды sudo:
MyUserName ALL = (ВСЕ) NOPASSWD: ALL
Теперь каждый раз, когда я выполняю команду с использованием sudo, она приостанавливает время, достаточное для выполнения задачи (~ 10 секунд). Почему это возможно и как я могу это исправить? Я запускаю версию Sudo 1.7.1 на Fedora 11 x86 64.
56
Источник
Ответы:
Я задал этот вопрос на SO, и он переехал сюда. Тем не менее у меня больше нет возможности редактировать вопрос так, как если бы я его владел или даже принимал правильный ответ, но это оказалось верной причиной, почему и как ее решить:
Найдено здесь Пользователь «rohandhruva» там дает правильный ответ:
Это происходит, если вы меняете
имя хоста во время процесса установки.
Чтобы решить проблему, отредактируйте файл
/ и т.д. / хосты
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 <ADD_YOURS_HERE>
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 <ADD_YOURS_HERE>
81
Убедитесь, что ваш демон syslog работает правильно; это вызвало проблему для меня.
Выполните следующую команду
logger 'Hello world'
Возвращает ли команда в течение разумного промежутка времени?
Появляется ли «Hello world» в /var/log/syslog
?
Если это не так, демон syslog разбился. Перезапуск должен устранить вашу проблему.
19
Является ли один из файлов / каталогов, который он должен читать на сетевом монтировании, или он каким-то образом запускает чтение с медленного устройства USB? Попробуйте strace и посмотрите, где он медленный; если это происходит слишком быстро,
sudo strace -r -o trace.log sudo echo hi
Каждая строка будет начинаться со времени, затраченного с момента ввода предыдущего системного вызова.
(Первоначальное судо, кажется, необходимо, я не знаю, насколько это повлияет на результаты.)
10
Недавно я обнаружил, что у меня такая же проблема. Не было никакой задержки судо, а затем внезапно, около 10-20 секундной задержки. Я определил конкретную проблему, используя:
1. chmod u+s /usr/sbin/strace (as the root user)
Как вы:
1. sudo -K
2. strace sudo /bin/tcsh
А затем найдите, где висят системные вызовы.
В моем случае я обнаружил, что он висит на DNS-трансляции, по-видимому, один из DNSen в моем списке на /etc/resolv.conf
был очень шумным или испортился. Поэтому я изменил порядок разрешения, и вещи poof снова работали быстро.
7
Я не уверен в Fedora, но я использовал другие системы, где sudo проверял бы
где вы вошли в систему, что, если ваш DNS не настроен хорошо, может занять возраст
до таймаута. Это также можно увидеть, когда SSH'ing в машину - требуется
возрастов, чтобы придумать подсказку.
5
В этом случае можно найти имя хоста (которое было настроено в /etc/sysconfig
/ network) не существует в /etc/hosts
файл; поэтому при добавлении в вышеупомянутый файл файл открывается быстро.
4
У меня была аналогичная проблема, я исправил ее, разместив как имя хоста (например, mybox), так и полный вывод команды hostname (mybox.mydomain.com). Это очистило его. Пошел от 2 минут, чтобы открыть / etc / hosts для мгновенного доступа.
2
У меня была та же проблема, я проверил /var/log/auth.log и syslog на наличие ошибок. Оказывается, мой LDAP-сервер не может быть достигнут, и он замедляет все.
Я больше не использовал auth на основе LDAP, поэтому я удалил все ссылки «ldap» из /etc/nsswitch.conf
С тех пор все работает как шарм снова.
2