Recherche sur le site Web

Comment exécuter le script au démarrage sur Ubuntu 20.04 Focal Fossa Server/Desktop


Dans cet article, vous apprendrez à exécuter le script (Python, bash, etc.) au démarrage sur Ubuntu 20.04 Server/Desktop.

Dans ce tutoriel, vous apprendrez:

  • Comment créer unité de service Systemd
  • Comment créer un script de vérification de l'espace disque simple
  • Comment définir les autorisations sur le fichier de l'unité de service SystemD
  • Comment définir les autorisations de script
  • Comment permettre à Systemd Service Unit d'exécuter au démarrage du système

Comment exécuter le script sur le démarrage sur Ubuntu 20.04 focal fossa kDE Server/Desktop

Exigences et conventions logicielles utilisées

CatégorieExigences, conventions ou version logicielle utilisée
SystèmeInstallé Ubuntu 20.04 ou mis à niveau Ubuntu 20.04 Focal Fossa
LogicielN/A
AutreAccès privilégié à votre système Linux en tant que racine ou via la commande sudo .

Comment exécuter le script au démarrage sur Ubuntu 20.04 Instructions étape par étape

L'Ubuntu 20.04 est basé sur SystemD, donc le moyen le plus simple et recommandé d'exécuter un script au démarrage est de créer un fichier de service SystemD et d'exécuter n'importe quel script tel que Bash, Python, etc., via ce service pendant le démarrage du système.

The below steps will show you to run an example bash script which reports disk space usage of the /home directory and saves the report in the /root directory every time the Ubuntu system bottes.

  1. Tout d'abord, créez un fichier de service Systemd comme dans un exemple ci-dessous:

    [Unit]
    After=network.target
    
    [Service]
    ExecStart=/usr/local/bin/disk-space-check.sh
    
    [Install]
    WantedBy=default.target
    

    After: instruit Systemd sur le moment où le script doit être exécuté. Dans notre cas, le script s'exécutera après la connexion réseau. Un autre exemple pourrait être mysql.target etc.
    execStart: Ce champ fournit un chemin complet vers le script réel à exécuter sur le démarrage
    recherché: dans quelle cible de démarrage L'unité Systemd doit être installée

  2. Remarque
    Pour plus d'informations sur la façon de créer l'unité de service Systemd Exécutez la commande man systemd.unit .

  3. Créez un script à exécuter sur le démarrage du système Ubuntu. Comme spécifié dans l'étape ci-dessus 1, le chemin et le nom du nouveau script sont /usr/local/bin/disk-space-check.sh .

    Ci-dessous est un exemple d'un tel script:

    #!/bin/bash
    
    date > /root/disk_space_report.txt
    du -sh /home/ >> /root/disk_space_report.txt
  4. Définissez les autorisations appropriées pour les deux, l'unité de service Systemd et le script:

    
    sudo chmod 744 /usr/local/bin/disk-space-check.sh
    sudo chmod 664 /etc/systemd/system/disk-space-check.service
    
  5. Ensuite, activez l'unité de service:

    
    sudo systemctl daemon-reload
    sudo systemctl enable disk-space-check.service
    
  6. 
    sudo ls /root/
    disk_space_report.txt
    

Articles connexes: