Графическая аутентификация работает; почему sudo говорит, что мой пароль неверный?

Я пытаюсь установить тему, и когда я ввожу команду sudo cp -r $HOME/Desktop/Overglossed /usr/share/themes, терминал запросил мой пароль sudo, который я ввел, однако мне сказали, что мой пароль неверный. В чем здесь проблема? Я вошел в систему с тем же паролем, и у меня нет закрытой крышки или чего-то подобного.

Это первый раз, когда я использовал терминал, поэтому, если это связано с тем, что я с ним не знаком, сообщите мне.

Мне не всегда мешают выполнять административные задачи, вводя мой пароль. Я могу установить программное обеспечение в Центре программного обеспечения, например, я установил Chrome (который я использовал для работы над этим вопросом).

4
задан 30 January 2013 в 06:11

4 ответа

В качестве обходного пути вы можете использовать gksudo вместо sudo до тех пор, пока не будет устранена основная причина проблемы.

0
ответ дан 30 January 2013 в 06:11

sudo тоже не принимали мой пароль. Это было потому, что я добавил

auth required pam_tally.so per_user magic_root onerr=fail

к началу /etc/pam.d/common_auth в попытке создать 10-минутную задержку после 3 неудачных попыток ввода пароля. Удаление этой строки решило мою проблему.

0
ответ дан 30 January 2013 в 06:11

Сначала... Вероятное обходное решение

Вероятно, что можно работать вокруг этой проблемы, пока это не решено при помощи pkexec вместо sudo когда Вы хотите выполнить команду как корень. См., "Возможно, sudo, Повреждается" ниже для деталей.

Не определенно, что это будет работать. В противном случае одно из других решений или обходных решений здесь могло бы. В противном случае это, вероятно, все еще поможет Вам собрать информацию о проблеме, которую можно добавить к вопросу.

(Люди с этой проблемой кроме задающего этот вопрос могут создать новый вопрос с информацией о том, что произошло, когда они попробовали методы здесь.)


Основы этой ситуации

Большую часть времени, когда люди сообщают, что они не могут эффективно ввести свой пароль для sudo в терминале, но может аутентифицировать с ним графически по крайней мере часть времени, это - потому что они не понимают что никакие символы заполнителя (как *) как предполагается, появляются. Здесь, это кажется дело не в этом. При вводе пароля правильно и полностью прежде, чем нажать Enter действительно существует некоторая проблема.

Для выяснения, каково это больше информации необходимо. Вот некоторые возможные причины sudo не принимая пароль в терминале даже при том, что можно ввести его графически для установки программного обеспечения.

1. Возможно, Пароль является Пробелом

Предложенный Bruno Pereira.

Если Ваш пароль является пробелом, т.е. нулевыми символами долго, т.е. Вы просто нажимаете Enter при просьбе относительно пароля измените его на что-то, что не является пробелом.

Вероятно, что можно изменить пароль в Параметрах настройки системы (так как можно выполнить по крайней мере некоторые задачи администрирования графически). Если это не работает, и можно установить программное обеспечение, можно установить административные средства гномаInstall gnome-admin-tools, работать users-admin (другая графическая утилита), и изменение Ваш пароль тот путь.

Если это не работает, попытайтесь работать pkexec passwd $USER. (pkexec запросит графически Ваш пароль, если GUI будет доступен и работа, даже когда используется выполнить команды CLI.)

Если это не работает, попробуйте любой из этих методов; если это не работает, попробуйте этот метод.

2. Возможно, пароль содержит странные символы

Если Ваш пароль содержит символы кроме цифр (0-9), капитал (A-Z) и нижний регистр (a-z) буквы без меток диакритического знака и пунктуация, которые появляются на американской/английской клавиатуре, изменяют ее так, она делает. Если Вы используете другую локаль, то быть в безопасности, можно (временно) изменить локаль также.

Пробелы обычно прекрасны в паролях, но поскольку у Вас есть проблемы, имеет смысл пробовать его без них. Они являются относительно редкими, таким образом, могла быть неоткрытая ошибка, инициированная комбинацией наличия пароля с пробелами в нем и некоторым другим условием.

3. Возможно, Пароль Совершенно Обычен, Но был Сохранен Неправильно

Даже если все один или несколько символов Вашего пароля являются наиболее часто используемыми, это - все еще хорошая идея изменить Ваш пароль, чтобы видеть, решает ли это проблему. Кроме того, если Вы изменяете свой пароль, и он не решает Вашу проблему, которая является другой важной информацией.

Я говорил с людьми в этой ситуации, где изменение пароля решило проблему, даже при том, что не было ничего особенно неправильно с или странно об этом первоначально. Я подозреваю, что проблема могла бы иметь отношение, как пароль хранится, но могло случиться так, что первопричина по совпадению исправлена путем установки пароля, или что ситуация была (хотя неоднократно различными людьми) неверно передана мне, или что я неправильно понял.

4. Возможно, Вы не вводите то, что Вы думаете, что Вы

Удостоверьтесь, что Ваша раскладка клавиатуры - то, что Вы думаете, что это - когда Вы вставляете свой пароль.

5. Возможно, Ваш Терминал Неправильно истолковывает Вход

Возможно, пароль, который замечается, не то, что Вы на самом деле вводите. Видеть, если это верно:

  • Войдите это в терминале, если не вводящем Ваш пароль (не "выполняйте" его и все еще не говорите нам, что это).

  • Попробуйте его в другом терминальном приложении. Вы используете Терминал; попробуйте xterm. (Нажмите Alt+F2 и работайте xterm.)

  • Попробуйте его на виртуальной консоли. Нажмите Ctrl+Alt+F1 и посмотрите, можно ли войти в систему. Как при выполнении sudo, нормально для Вас не видеть, что что-либо происходит, поскольку Вы вводите свой пароль. Просто введите его и нажмите Enter, когда Вы будете сделаны.

    Успешно выполняется ли это или перестало работать, зная, работало ли это, предоставляет полезную информацию.

    Затем попытка, на самом деле работающая sudo.

    Для возвращения к GUI нажмите Alt+F7.

6. Возможно, Работы sudo, Но Не при Вызове из Командной строки

Для проверки этого работать gksudo xclock. Вам предложат графически Ваш пароль, но sudo будет использоваться "под капотом".

Если это работает - то есть, если простое графическое приложение часов появляется - затем sudo работы, но (принятие его также перестало работать, когда Вы пытались выполнить его в другом терминальном приложении и в виртуальной консоли), что-то неправильно со способом, которым это берет вход от интерфейсов командной строки.

7. Возможно, Аутентификация по паролю CLI Повреждается

Это могло произойти, если существует предотвращение типичной проблемы sudo и другой, различные способы попросить пароли на командной строке, от того, чтобы работать правильно.

Выполненный su $USER -c 'echo Success'. Вам предложат Ваш пароль. Введите его (снова, нормально ничего не иметь, появляются на экране, как Вы делаете), нажмите Enter и посмотрите если Success появляется.

Если Вы не могли закончить аутентификацию там, то проблема влияет на обоих на терминальном основанных sudo и на терминальном основанный su.

8. Возможно, sudo Повреждается

Попытайтесь выполнить команду с PolicyKit: pkexec echo Success

Окно GUI должно подойти и попросить у Вас Вашего пароля; если аутентификация успешно выполняется, Success появится в терминале.

Если это работает, у Вас есть обходное решение для проблемы: использовать pkexec вместо sudo.

Если sudo повреждается, Вы смогли фиксировать его, в зависимости от что не так с sudo:

8.1. Возможно, установка испорчена.

Попытайтесь переустановить sudo с:

pkexec apt-get update && pkexec apt-get --purge --reinstall sudo

Это может зафиксировать поврежденную или неправильно сконфигурированную установку.

8.2. Возможно, sudo неправильно конфигурируется в /etc/sudoers.

Для неверных конфигураций, касающихся необъясненных отказов аутентификации по паролю, проверьте Defaults строки в /etc/sudoers путем выполнения:

pkexec grep Defaults /etc/sudoers

В Ubuntu вывод обычно:

Defaults    env_reset
Defaults    secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

Если Вы видите rootpw, runaspw, или targetpw, это означает sudo не обязательно просит Ваш пароль.

Это особенно вероятно, если Вам предлагают [sudo] password for root: или [sudo] password for some-other-username вместо [sudo] password for your-username. Но на это стоит проверить в любом случае (поскольку легко проверить).

Даже если Вы не видите ни одного из тех трех ...pw условия, Вы все еще могли бы видеть что-то не так; если Ваш вывод pkexec grep Defaults /etc/sudoers не то же как, что показывают выше, необходимо изучить это (например, можно включать его при редактировании вопроса предоставить подробную информацию о том, что произошло, когда Вы попробовали все эти методы).

Если это ничего не показывает, смотрит на весь из /etc/sudoers. Можно использовать pkexec less /etc/sudoers или откройте файл в редакторе с pkexec visudo. Если Вы не видите ничто плохого, я рекомендую все еще отправить содержание файла в Вашем вопросе.

Если Вы находите проблему в /etc/sudoers и знайте то, что должно быть изменено, можно отредактировать его использование pkexec visudo.

8.3. Возможно, sudo неправильно конфигурируется в /etc/sudo.conf.

Обычно на Ubuntu, /etc/sudo.conf не существует. И это хорошо - это обычно работает в той ситуации. Если /etc/sudo.conf действительно существует, sudo может быть настроен для работы радикально другим способом. (Или это могло бы быть настроено, чтобы работать точно тот же путь и не иметь никакого отношения к Вашей проблеме. Или что-либо промежуточное.)

Если этот файл существует, независимо от того, что находится в нем, обеспечьте его полное содержание.

Если /etc/sudo.conf существует, по умолчанию единственные непрокомментированные строки (т.е. единственные строки, которые не запускаются с #):

Plugin sudoers_policy sudoers.so
Plugin sudoers_io sudoers.so

Это использует sudoers модуль для управления политикой безопасности и интерфейсом sudo. Если какой-либо другой модуль используется, вещи могут очень отличаться, таким образом, это - очень релевантная информация.

8.4. Возможно, это - проблема PAM, представляя необычно.

Это - своего рода фрагмент, но возможно sudo настроен для использования сменных модулей аутентификации, и его конфигурация PAM имеет проблему.

  • Это - фрагмент, потому что обычно Вас не просят ввести пароль вообще, когда это происходит.

Для проверки работайте:

ls -ld /etc/pam.d
ls -l /etc/pam.d/sudo
cat /etc/pam.d/sudo

Текст в терминале должен быть похожим на это:

$ ls -ld /etc/pam.d
drwxr-xr-x 2 root root 4096 Jan 16 01:44 /etc/pam.d
$ ls -l /etc/pam.d/sudo
-rw-r--r-- 1 root root 239 May 31  2012 /etc/pam.d/sudo
$ cat /etc/pam.d/sudo
#%PAM-1.0

auth       required   pam_env.so readenv=1 user_readenv=0
auth       required   pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0
@include common-auth
@include common-account
@include common-session-noninteractive

Если какой-либо полужирный текст отличается вообще, который предлагает проблему.

Я получил эту идею от восходящего потока sudo при поиске и устранении неисправностей страницы (но та страница не предлагает, проблема произойдет этот путь).

9. Возможно, это - что-то еще

Возможно, ни одна из ситуаций не покрывает Вашу проблему. Или возможно проблема - это sudo повреждается, но ни одна из подситуаций для этого не применяется.

Если это так, не сдавайтесь! (Если Вы не хотите.)

Просто предоставьте как можно больше больше информации, включая то, что произошло, когда Вы попробовали каждую технику или диагностический шаг. Это, вероятно, прольет свет на проблему.

Этот ответ перемещен, с небольшой модификацией, от этого вопроса (где это действительно не принадлежало, поскольку не ясно, что OP там действительно имеет эту проблему). Благодаря gertvdijk для помощи мне распознать неоднозначность там и предлагающий это быть отправленным в другом месте вместо этого. (Он не ответственен ни за какие ошибки здесь, как бы то ни было.)

9
ответ дан 30 January 2013 в 06:11

Не забывайте проверять /var/log/auth.log видеть, что происходит на Вашем sudo- луг.

В моем случае я видел сообщение sudo: PAM (sudo) illegal module type: i.

Поиск с помощью Google этим сообщением привел меня к ответу: некоторой причиной, когда я установил Unity на моей Ubuntu 18.04 и реконфигурированный lightdm, некоторый код изменил файл /etc/pam.d/common-session-noninteractive. То, что я действительно видел в том файле, было справедливо:

i#
# /etc/pam.d/common-session-noninteractive - session-related modules
# common to all non-interactive services
...

Да, просто мало буквы i как первый символ в файле. Это является шокирующим, но так или иначе который произошел!

Я перезагрузил систему в режиме восстановления (как корень), удалил это i в файле, и теперь sudo хорошо работает!

0
ответ дан 1 December 2019 в 09:05

Другие вопросы по тегам:

Похожие вопросы: