Я создал пользователя с именем shut, так что всякий раз, когда вы входите в систему с использованием этого имени пользователя, машина выключится. Для этого я поместил следующую команду в конец .profile.
exec sudo shutdown -h now
Но это не помогло. Когда пользователь закрывает вход в систему, а не выключение компьютера, возвращается экран входа в систему. Таким образом, пользователь не может войти в систему, но в то же время возвращает тот же экран входа в систему.
Причина, по которой я чувствую, заключается в том, что, поскольку пароль для пользователя не закрыт, аппарат не отключается. И из-за exec, экран входа возвращается (что хорошо).
Теперь, чтобы решить мою работу, мне нужен способ, чтобы он автоматически взял мой пароль, когда выполняется эта команда sudo. Я проверил man sudo
и я думаю, что нужно использовать опцию.
После этой страницы, я побежал
SUDO_ASKPASS=/home/ravbholua/pass.txt export SUDO_ASKPASS
Затем, чтобы проверить, работает ли он, я побежал
ravbholua@ravbholua-Aspire-5315:~$ sudo -A pwd sudo: unable to run /home/ravbholua/pass.txt: Permission denied
Из этого вывода это означает, что этот файл пути должен запускаться и предоставлять мой пароль как вывод в sudo. Что раньше я думал, он взял бы пароль из этого файла с именем pass.txt, поэтому я ввел свой пароль в этот файл. Но нет!!!!!!!
Любые предложения, пожалуйста!
SUDO_ASKPASS должен быть двоичным, который запрашивает у пользователя пароль. Примером использования для него было бы появление окна в графическом интерфейсе, в котором пользователь хотел бы ввести свой пароль при использовании программы GUI. На странице руководства написано следующее:
Указывает путь к вспомогательной программе, используемой для чтения пароля, если терминал не доступен или если указан параметр -A.
Чтобы сделать то, что вы хотите, вы, вероятно, захотите отредактировать файл / etc / sudoers, чтобы позволить пользователю «закрыть» работать с выключением без указания пароля. Нижеследующая строка позволяет пользователю «закрыть» запустить «/ sbin / shutdown -h now» и «/ sbin / shutdown -r now» на машинах «ALL».
shut ALL = NOPASSWD: / sbin / shutdown -h теперь, / sbin / shutdown -r теперь
Более небезопасным вариантом будет использование опции «-S» для sudo для чтения пароля из stdin и повторения пароля для него следующим образом:
echo "password" | sudo -S shutdown -h сейчас