В моей системе (Ubuntu 20.04) я установил это Расширение оболочки Gnome, которое изменяет стиль параметров отключения питания, а также добавляет параметр гибернации, который я иногда использую в своей системе вместо приостановки. Хотя расширение работает должным образом, каждый раз, когда я хочу перейти в спящий режим, мне предлагается ввести пароль суперпользователя, чтобы продолжить, что раздражает. Чтобы избавиться от диалога пароля, я последовал это ответил и добавил
my_username ALL=(ALL:ALL) NOPASSWD:/bin/systemctl hibernate
моим sudoers. После этого изменения я могу перейти в спящий режим из командной строки без пароля, как и ожидалось.Однако соответствующая опция из указанного расширения оболочки Gnome по-прежнему запрашивает пароль. Код за кулисами расширения можно найти здесь. Я не смог найти реализацию функции Util.trySpawnCommandLine
, но похоже, что он просто вызовет дополненную команду в оболочке. Следовательно, мне непонятно, почему у меня все еще спрашивают пароль. я проверил это какая системаctl
возвращается /bin/systemctl
. Может ли быть так, что команды из оболочки Gnome выполняются в контексте пользователя, отличном от вошедшего в систему пользователя?
PS: В любом случае, считается ли безопасным с точки зрения безопасности добавление вышеуказанной строки в файл sudoers?