Случайно добавлен символ вне комментария в файле sudo на Mac, sudo больше не работает

379
Arnav

Я сделал ошибку в терминале, и теперь каждый раз, когда я использую 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
dannysauer

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

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

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

Опция Finder работала замечательно! Вместо sudo, Finder попросил у меня пароль, и sudo теперь работает. Урок выучен, большое спасибо! Arnav 6 лет назад 1