I vissa fall är det nödvändigt att exekvera ditt skript när systemet startar. Det kan till exempel vara nödvändigt att ändra skärmupplösning, starta vissa program och uppdatera ett visst verktyg. Att köra ett skript kan genomföras på ett antal olika sätt. Det kan göras med hjälp av ett grafiskt skal eller initialiseringssystemet systemd, som nu används i nästan alla distributioner.
Det första du ska göra är att skapa ett skript på en lämplig plats och köra det:
$ sudo gedit /script_path/script_name.sh
#!/bin/bash
echo "Hello world"
Det här skriptet kommer att visa "Hello world"-meddelanden för användaren. När programmet är klart måste det göras körbart. För detta ändamål används följande kommando:
$ sudo chmod ugo+x /script_path/script_name.sh
Därefter måste du i systemets huvudmeny starta verktyget "Kör automatiskt applikationer".
Klicka på knappen "Lägg till" och ange den fullständiga sökvägen till skriptfilen i fältet "Kommando". Du kan trycka på "Bläddra" -knappen, hitta och välja skriptfilen och trycka på "Lägg till".
Från och med nu kommer programmet att köras varje gång du startar det grafiska skalet i Ubuntu.
Använd ett speciellt kommando för att skapa en systemd-servicefil
Detta är kommandot:
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
På raden som heter ExecStart måste du sedan uppfylla något av följande krav: skriv sökvägen till det skript eller kommando som ska köras. Därefter läggs skriptet till i autoladdaren:
$ sudo systemctl daemon-reload
$ sudo systemctl enable mysrcipt
Programmet startar efter att systemet har initialiserats. För detta ändamål kan du använda den "gamla" metoden: du kan använda rc.local
för att skapa filen /etc/rc.local
och skriva sökvägen till den i ExecStart-raden i servicefilen.