Какой подход лучше?
Для использования на рабочем столе кажется, что sudo лучше, так как:
- Я могу иметь более последовательную историю как обычный пользователь
- Не нужно запоминать два пароля, что особенно актуально, когда я не занимаюсь административными делами регулярно.
- Не нужно создавать дополнительную учетную запись root при установке.
Но как насчет управления сервером?
На сервере обычно у вас уже есть созданная учетная запись root, и вы, вероятно, будете часто выполнять административные функции. Так что преимущества sudo, похоже, больше не держатся.
Более того, в большинстве дистрибутивов легко настроить su в командной строке, просто добавьте пользователя в группу wheel. (Вы можете даже пропустить -G wheel
при useradd
загрузке.) Таким образом, настройка su может быть легко автоматизирована в сценарии оболочки.
Но для судо? Вам нужно сначала добавить пользователя, чем запустить в visudo
интерактивном режиме. Это плохо, так как вы не можете автоматизировать его в сценарии оболочки.
(Ну, вы можете. Например,
echo '%wheel ALL=(ALL) ALL' >> /tmp/sudoers.tmp
cp /etc/sudoers /etc/sudoers.old
visudo -c -f /tmp/sudoers.tmp && mv /tmp/sudoers.tmp /etc/sudoers
Но, по крайней мере, это не так просто.)
Так что ты думаешь? Для серверной среды, что вы предпочитаете, sudo или su root?
visudo -c
командой, так как считаю, что вам нужно visudo -c -f
проверить определенный файл.