In questo articolo imparerai come eseguire script (python, bash ecc.) all'avvio su Ubuntu 20.04 Server/Desktop.
In questo tutorial imparerai:
- Come creare un'unità di servizio Systemd
- Come creare un semplice script per il controllo dello spazio su disco
- Come impostare le autorizzazioni per il file dell'unità di servizio Systemd
- Come impostare i permessi degli script
- Come abilitare l'unità di servizio Systemd per l'esecuzione all'avvio del sistema
Come eseguire lo script all'avvio su Ubuntu 20.04 Focal Fossa KDE Server/Desktop
Requisiti e convenzioni software utilizzati
Categoria | Requisiti, convenzioni o versione del software utilizzata |
---|---|
Sistema | Installato Ubuntu 20.04 o aggiornato Ubuntu 20.04 Focal Fossa |
Software | N/D |
Altro | Accesso privilegiato al tuo sistema Linux come root o tramite sudo comando. |
Convenzioni | # – richiede che i comandi linux dati vengano eseguiti con i privilegi di root direttamente come utente root o usando sudo comando$ – richiede che i comandi linux dati vengano eseguiti come un normale utente non privilegiato |
Come eseguire lo script all'avvio su Ubuntu 20.04 istruzioni passo passo
Ubuntu 20.04 è basato su Systemd, quindi il modo più semplice e consigliato per eseguire uno script all'avvio è creare un file di servizio Systemd ed eseguire qualsiasi script come bash, python ecc., tramite questo servizio durante l'avvio del sistema.
I passaggi seguenti ti mostreranno come eseguire uno script bash di esempio che riporta l'utilizzo dello spazio su disco di /home
directory e salva il rapporto nella directory /root
directory ogni volta che il sistema Ubuntu si avvia.
- Per prima cosa, crea un file di servizio Systemd come nell'esempio seguente:
[Unit] After=network.service [Service] ExecStart=/usr/local/bin/disk-space-check.sh [Install] WantedBy=default.target
Dopo: Indica a systemd quando deve essere eseguito lo script. Nel nostro caso lo script verrà eseguito dopo la connessione di rete. Un altro esempio potrebbe essere mysql.target ecc.
ExecStart: Questo campo fornisce un percorso completo per lo script effettivo da eseguire all'avvio
WantedBy: In quale destinazione di avvio dovrebbe essere installata l'unità systemdNOTA
Per ulteriori informazioni su come creare un'unità di servizio Systemd, eseguireman systemd.unit
comando. - Crea uno script da eseguire all'avvio del sistema Ubuntu. Come specificato nel precedente Passaggio 1, il percorso e il nome del nuovo script è
/usr/local/bin/disk-space-check.sh
.Quello che segue è un esempio di tale script:
#!/bin/bash date > /root/disk_space_report.txt du -sh /home/ >> /root/disk_space_report.txt
- Imposta le autorizzazioni appropriate per entrambi, l'unità di servizio Systemd e lo script:
$ sudo chmod 744 /usr/local/bin/disk-space-check.sh $ sudo chmod 664 /etc/systemd/system/disk-space-check.service
- Avanti abilita l'unità di servizio:
$ sudo systemctl daemon-reload $ sudo systemctl enable disk-space-check.service
- Ora sei pronto per riavviare il tuo sistema. Una volta avviato il sistema, dovresti vedere il seguente file contenente l'utilizzo dello spazio su disco all'interno del tuo
/root
directory:$ sudo ls /root/ disk_space_report.txt