V některých případech je nutné skript spustit při startu systému. Mezi takové případy patří potřeba změnit rozlišení obrazovky, spustit určité aplikace a aktualizovat určitý nástroj. Spuštění skriptu lze realizovat několika způsoby. Lze tak učinit pomocí grafického shellu nebo inicializačního systému systemd, který je dnes používán téměř ve všech distribucích.
Nejprve je třeba na vhodném místě vytvořit skript a spustit jej:
$ sudo gedit /script_path/script_name.sh
#!/bin/bash
echo "Hello world"
Tento skript bude uživateli zobrazovat zprávy typu "Hello world". Jakmile je program připraven, je třeba jej spustit. K tomu slouží následující příkaz:
$ sudo chmod ugo+x /script_path/script_name.sh
Dále je třeba v hlavní nabídce systému spustit nástroj "Automatické spouštění aplikací".
Klikněte na tlačítko "Přidat" a do pole "Příkaz" zadejte úplnou cestu k souboru skriptu. Můžete stisknout tlačítko "Procházet", vyhledat a vybrat soubor skriptu a stisknout tlačítko "Přidat".
Od této chvíle se bude program spouštět při každém spuštění grafického prostředí Ubuntu.
K vytvoření souboru služby systemd použijte speciální příkaz
Jedná se o tento příkaz:
sudo systemctl edit --force myscript
You need to add the contents to this file:
[Unit]
Description=My Script Service
After=multi-user.target
[Service]
Type=idle
ExecStart=/full/path/to/script/script_name.sh
[Install]
WantedBy=multi-user.target
Dále je třeba v řádku nazvaném ExecStart splnit jeden z následujících požadavků: Zapište cestu ke skriptu nebo příkazu, který se má spustit. Poté se skript přidá do automatického spouštěče:
$ sudo systemctl daemon-reload
$ sudo systemctl enable mysrcipt
Program se spustí po inicializaci systému. Pro tento účel můžete použít "starou" metodu: pomocí rc.local
vytvoříte soubor /etc/rc.local
a cestu k němu zapíšete do řádku ExecStart servisního souboru.