1

Я только что получил новый MacBookPro. В целях безопасности я создал одного пользователя-администратора и обычного пользователя-пользователя. Я собираюсь использовать auser для установки всех приложений и suer для обычного использования.

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

$ sudo mkdir /MyApps

Я попытался ввести пароль для auser, один для suser, ни один из них не работает. Я не уверен, что пользователь ужина имеет в виду, когда в систему входит обычный пользователь. Это пользователь root? Или обычный пользователь может запустить команду sudo?

2 ответа2

2

Невозможно продвинуть себя напрямую от обычного пользователя до пользователя root, если вы не сделаете некоторые специальные приготовления: отредактируйте /etc /sudoers, как предложено @Daniel Beck, создайте оболочку suid (не рекомендуется) и т.д. Однако есть способ сделать это в два этапа: используйте su для переключения на вашу учетную запись администратора, затем sudo для переключения на root:

su auser -c "sudo somecommand"

При этом пароль будет запрашиваться дважды (если вы не использовали его в течение последних 5 минут, он будет запрашиваться только один раз); оба раза он хочет ввести пароль пользователя (su всегда запрашивает пароль учетной записи, на которую вы переключаетесь, в то время как sudo запрашивает учетную запись, с которой вы переключаетесь). Кстати, если вы запустите это из каталога, у которого auser нет разрешений на чтение, вы получите сообщение об ошибке («shell-init: ошибка при получении текущего каталога: getcwd: не удается получить доступ к родительским каталогам: Permission denied»), но это будет все еще работают.

0

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

man sudoers и man visudo расскажут вам, как именно это сделать. Короче:

Добавьте строку, подобную следующей, чтобы позволить обычному пользователю с коротким именем коротко выполнять все:

shortname ALL=(ALL) ALL

Вы можете ограничить это конкретными командами, заменив последний ALL именами программ, которые разрешено запускать, например /bin/mkdir .

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