Se non ti dispiace fare un po 'di scripting della shell, e hai trovato uno script che puoi eseguire dal terminale che passerà a windows, puoi creare uno script contenente quel comando (e forse un reboot
comando che lo segue). Chiamiamolo winreboot.sh
a titolo di argomento. Quindi modifica il proprietario di quello script in root
, contrassegnalo come eseguibile e inseriscilo in una posizione utile (ad esempio /usr/local/bin/
). Se lo esegui in questo modo:
sudo /usr/local/bin/winreboot.sh
Ti chiederà la password dell'amministratore, e quindi dovrebbe fare la sua cosa, dato che lo script viene eseguito come root. Tuttavia, sudo
mantiene un elenco di regole in base alle quali gli utenti possono eseguire quali comandi utilizzando sudo
e se è richiesta o meno una password. Questo set di regole è memorizzato in /etc/sudoers
- sfortunatamente la sintassi è molto confusa, motivo per cui non devi modificare direttamente il file, ma devi usare
sudo visudo
invece, che controlla la sintassi sul salvataggio. Nota che questo usa vim per la modifica, che potresti voler leggere prima di eseguirlo - può essere molto confuso se non ci sei abituato. (per uscire senza salvare, premere <ESC>
e digitare :q!
seguito dalla chiave <ENTER>
) Se non riesci ad andare avanti con vim, modifica una copia di sudoers con il tuo editor preferito e controlla la sintassi con visudo -f /path/to/sudoers-copy
. Se è OK, copialo di nuovo sull'originale.
Tornando al punto, la regola che vuoi aggiungere a sudoers è che vuoi che gli utenti nel gruppo admin
siano in grado di eseguire il tuo script come root senza una password. Sembra così:
%admin localhost=(ALL) NOPASSWD: /usr/local/bin/winreboot.sh
Aggiungilo come ultima riga di sudoers. Se ora provi a eseguire il tuo script con sudo
(devi farlo con path assoluto), NON chiederà una password e semplicemente la eseguirà. Avvolgi il comando sudo in un altro script di shell, collegalo ad esso dal desktop o dovunque, e il tuo bambino di 6 anni dovrebbe essere in grado di passare a Windows in qualsiasi momento.
Spero che questo aiuti, fammi sapere se qualcosa non è chiaro.