Vorrei eseguire un sudo
comando ( sudo service smbd restart
) dopo 1 minuto di accesso. Come potrei fare per fare questo?
PS Questo è un sistema senza monitor, mouse, tastiera o altoparlanti collegati: è una stampante e un file server.
Vorrei eseguire un sudo
comando ( sudo service smbd restart
) dopo 1 minuto di accesso. Come potrei fare per fare questo?
PS Questo è un sistema senza monitor, mouse, tastiera o altoparlanti collegati: è una stampante e un file server.
Risposte:
A) Se è all'avvio del sistema , aggiungilo alla fine del tuo /etc/rc.local
(1): (prima del exit 0
, ovviamente):
( sleep 60 && service smbd restart )&
Nota:
()
è necessario in modo che il comando complesso si stacchi da solo e passi in background, consentendo il completamento del processo di avvio;sudo
non è necessario lì, /etc/rc.local
viene eseguito da root
;B) se è al login dell'utente , sono necessari due passaggi:
configura il tuo in sudo
modo che non richieda una password per il service smbd restart
comando (vedi Come posso eseguire specifici comandi sudo senza una password? );
preparare uno script con i seguenti contenuti e aggiungerlo al programma di avvio / avvio automatico (varia in base all'ambiente desktop in uso).
script:
#!/bin/bash
( sleep 60 && service smbd restart )&
Le note
(1) controlla se /etc/rc.local
è eseguibile. Altrimenti, fallo cosìsudo chmod +x /etc/rc.local
Prova man sleep
:
sleep 60 && sudo service smbd restart
Inseriscilo nei programmi di esecuzione automatica o negli script eseguiti al momento dell'accesso.
sudoers
file non viene configurato in modo appropriato , non funzionerà (smetterà di chiedere una password). Vedi askubuntu.com/questions/159007/…