Вы можете использовать ожидайте, что
сделает эту работу за вас. Сохраните следующее в файл, сделайте его исполняемым и запустите:
#!/usr/bin/expect
spawn su
expect "Password:"
send "YOUR_PASS\n"
interact
(Очевидно, вам нужно указать правильный путь к expect
. Здесь я использовал / usr / bin / expect
.)
Если YOUR_PASS
- правильный пароль root, теперь у вас должна быть оболочка root. В противном случае вы получите ошибку аутентификации.
Обратите внимание, что команда interact
, вероятно, не понадобится в контексте полностью автоматизированного сценария, поскольку она дает контроль над процессом пользователю, т. Е. Нажатия клавиш отправляются текущему процессу и stderr и stderr возвращаются.
См. man expect
для более подробного описания команд spawn
, expect
, send
и interact
] и многие другие команды.
Необходимо добавить соединение, чтобы не изменять свойства устройства. Что-то вроде этого:
nmcli connection add con-name WiFi type wifi ifname wlan1 ipv4.method auto autoconnect yes wifi.ssid X wifi-sec.psk Y.
У меня нет интерфейса WiFi на компьютере, который я сейчас использую, поэтому я не могу его протестировать. Дайте мне знать, если это сработало для вас.