Я случайно удалил sudoers
файл в Mac OS X; есть ли способ его восстановить?
И как только вы восстановите его, как вы установите его в режим 0440?
9
Если я правильно понимаю вашу проблему, то в настоящее время у вас нет sudoers, и вы пытаетесь сделать sudo, и это не работает. В этом случае, чтобы заставить sudo работать, вы можете сделать следующее:
Для проверки sudo работает нормально cd /etc
и sudo vim sudoers
. Вы должны иметь возможность просматривать файл sudoers через редактор vim. Любая операция чтения / записи в / etc требует команды sudo.
Я знаю, что немного удивительно, что даже после отсутствия sudoers через пользовательский интерфейс мы можем выполнять операции в / etc. Но у меня это сработало :)
Я предполагаю, что вы пытаетесь запустить
sudo
команду, и она дает вам ошибку,/etc/sudoers
которая не имеет правильных разрешений?Если вы ранее предоставили
Admin
статус своей учетной записи , вы сможете исправить разрешения через графический интерфейс. Откройте папку «/ etc» в Finder («Перейти» -> «Перейти к папке ...»), затем откройтеsudoers
свойства файла. Нажмите на замок. Предоставьтеadmin
группуread/write
,system
пользователяread-only
,wheel
группуread-only
иeveryone
группуno access
. Разрешения теперь должны быть правильными.Если вы не вошли в
admin
группу, вам нужно перезагрузить OSX в однопользовательском режиме и выполнить командуchmod 0440 /etc/sudoers
.источник
Включите пользователя root, используя системные настройки, а затем создайте / etc / sudoers, войдя в систему как пользователь root, используя
Примечание. Поскольку в этом случае команда запускается от имени пользователя root и идентификатор группы
/etc
равен 0, по умолчанию она должна принадлежать правильному пользователю и группе после повторного создания, но если по какой-то причине это не так, выполните командуПосле того, как вы создали,
/etc/sudoers
используйте Visudo, чтобы вставить этот код в него:Если вы не являетесь администратором, вы можете вместо этого загрузить систему в однопользовательском режиме (это можно сделать, выключив устройство и удерживая команду + s при запуске) и запустив:
и вы будете в терминале с привилегиями root, и вы сможете запустить вышеуказанные команды для настройки
/etc/sudoers
источник
Я создал файл / tmp / sudoers с содержимым в ответе Джона Милитера и выполнил вариант команды tmm1.
osascript -e 'do shell script "cat /tmp/sudoers > /etc/sudoers; chown root:wheel /etc/sudoers" with administrator privileges'
Ницца!!!
источник
Ответы выше охватывают содержимое файла по умолчанию, как переместить его на место с помощью Finder и изменить его разрешения. Однако sudo будет жаловаться, если владельцем файла sudoers не является root. Единственный способ сменить владельца без sudo - через эту команду:
osascript -e 'do shell script "chown root:wheel /etc/sudoers" with administrator privileges'
источник