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


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

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

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


3
2018-01-29 03:50


происхождения


Я отправил ответ которые могут решить вашу проблему. Если нет, то какой точный текст сообщения об ошибке, которое вы получаете, когда sudo отклоняет ваш пароль? (Кроме того, вы можете предоставить другую диагностическую информацию, как описано в этом ответе.) - Eliah Kagan
Графические инструменты часто используют PolicyKit, а не sudo, чтобы убедиться, что пользователь имеет определенные привилегии. - Flimm


ответы:


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

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

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

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


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

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

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

1. Возможно, пароль пуст.

Предлагается Бруно Перейра.

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

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

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

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

2. Может быть, пароль содержит странные персонажи

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

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

3. Может быть, пароль абсолютно обычный, но хранится неправильно.

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

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

4. Может быть, вы не печатаете то, что думаете?

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

5. Может быть, ваш терминал является вводящим неверный ввод

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

  • Введите его в терминал, когда вы не вводите свой пароль (не «запускайте» его, а все равно не говорите нам, что это такое).

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

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

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

    Затем попробуйте выполнить sudo,

    Чтобы вернуться к графическому интерфейсу, нажмите Alt+F7,

6. Может быть, sudo Works, но не при вызове из командной строки

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

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

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

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

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

Если вы не смогли пройти проверку подлинности там, то проблема затрагивает как терминальные sudo и на основе терминалов su,

8. Может быть, sudo Broken

Попробуйте запустить команду с помощью 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 некоторые-другие-имя пользователя вместо [sudo] password for ваш логин, Но это стоит проверить в любом случае (как это легко проверить).

Даже если вы не видите любой из этих трех ...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-хт-х 2 корень корня 4096 Jan 16 01:44 /etc/pam.d
$ ls -l /etc/pam.d/sudo
-rw-р - r-- 1 корень корня 239 May 31  2012 /etc/pam.d/sudo
$ cat /etc/pam.d/sudo
#% РАМ-1,0

auth требуется 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 , но ни одна из вспомогательных ситуаций для этого не применяется.

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

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

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


8
2018-01-30 02:03



«Возможно, пароль содержит странные символы» - если ваш пароль начинается с ~ (тильдой), вам может понадобиться ввести ~ дважды в sudo-сообщении по SSH, потому что ENTER, за которым следует ~, - это специальная последовательность символов для клиента OpenSSH. - kbolino


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


0
2018-01-30 16:18





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

auth required pam_tally.so per_user magic_root onerr=fail

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


0
2017-08-15 13:28