1

Я допустил ошибку в терминале, и теперь каждый раз, когда я использую sudo, я получаю сообщение об ошибке: sudo: unable to initialize PAM: Invalid argument

Я знаю, что я испортил, добавив символ вне комментария в следующем файле: /etc/pam.d/sudo

Содержание выглядит следующим образом:

x# sudo: auth account password session
auth       sufficient     pam_tid.so
auth       sufficient     pam_smartcard.so
auth       required       pam_opendirectory.so
account    required       pam_permit.so
password   required       pam_deny.so
session    required       pam_permit.so

Случилось так, что я использовал nano для редактирования этого файла, чтобы добавить pam_tid.so в этот файл, чтобы я мог использовать touch id для обхода sudo. Затем я нажал Ctr+x, чтобы выйти, но пропустил Ctr и не увидел x вне комментария. Поэтому, когда я пытаюсь использовать sudo, я получаю сообщение об ошибке. Хуже всего то, что для редактирования этого файла мне нужно sudo. Любая помощь будет очень высоко ценится.

Спасибо

1 ответ1

3

Вам нужно будет найти альтернативные способы повышения привилегий, которые намеренно трудно "из-за безопасности". :) Поскольку это Mac, один из способов - перезагрузиться и удерживать команду +R, чтобы войти в оболочку восстановления, а затем запустить терминал (он находится в меню утилит, IIRC), где у вас будет корневая оболочка, которая может редактировать файл pam.

Другой возможный способ - скопировать файл pam в ваш домашний каталог, исправить его, а затем скопировать файл с помощью Finder (откройте /etc, выбрав "go", затем "go to folder" в меню Finder). Я почти уверен, что для управления доступом файл pam sudoers не используется, но я точно не помню. Вам также может понадобиться восстановить разрешения после копирования таким способом.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .