Цель состоит в том, чтобы перезагрузить компьютер, если он не получает команду прерывания от пользователя. Проблема заключается в том, что при настройке терминалов пользователь должен предоставить пароль SU для команд shutdown , init , reboot и т.д. Мы задаемся вопросом, возможно ли ввести пароль в самом bash-скрипте, возможно, используя stdin.
то есть:
#!/bin/bash
# (script)
echo "Terminal will restart in 60s, Ctrl+C to cancel."
sleep 60
su - root -c "init 6" < "password"
Мы попытаемся поместить пароль в файл и ввести его.
Изменить: sudo и expect , как решения, так как их установка будет невозможна из-за огромного количества документов для получения разрешения и ограниченного периода времени. Также мы хотели бы использовать init 6 или shutdown -r вместо reboot .
