Следуя некоторым инструкциям [ 1, 2 ], я могу дать вам следующие ответы:
Можно указать пользователей с UID.
Из вики sudoers в Ubuntu мы можем прочитать:
Вы можете вставить комментарии, поставив перед ними префикс #, но это также используется для указания uid в определенных частях файла, когда за ним следует число.
Позже в разделе псевдонимов Runas приведен пример:
# UID 0 is normally used for root
# Note the hash (#) on the following line indicates a uid, not a comment.
Runas_Alias ROOT = #0
Когда вы просто делаете usermod -l
вы не должны распространять изменения в sudoers.
В самом деле, из справочной страницы для usermod, более информативной, чем BSD, мы можем прочитать
-l, --login NEW_LOGIN
Имя пользователя будет изменено с LOGIN на NEW_LOGIN. Больше ничего не изменилось.
В частности, имя домашнего каталога пользователя, вероятно, следует изменить вручную, чтобы отразить новое имя для входа.
Кажется, все еще подразумевается ручная обработка изменений в sudoers, если вы укажете только параметр -l
. Возможно, вам нужно стереть старое имя пользователя и добавить пользователя в группу sudo с помощью
sudo usermod -a -G sudo hduser
Действительно, так случилось с этим пользователем в 2008 году с системой Debian Sid:
Я использовал XXX в качестве имени пользователя для входа на свой ноутбук sid, а XXX находится в файле sudoers. сегодня я изменил его на YYY, используя
sudo usermod -l YYY XXX
Я больше ничего не делал.
Теперь я могу войти, используя YYY, но мне не удалось войти в систему, используя пароль root. Также 'YYY' отсутствует в файле sudoers, поэтому теперь я не могу отредактировать /etc /sudoers для включения YYY.
Наконец, почему, вероятно, вы должны получить окончательный ответ только от Тодда Миллера, который сделал последний (выигрышный) форк sudo в 1991 году, или, возможно, от Боба Коггешалла или Клиффа Спенсера, если он придет с 1980 года [ 7 ].
Рекомендации