L’une des fonctionnalités fantastiques des systèmes Linux est la possibilité de les modifier et de les configurer à votre guise. L’utilitaire de ligne de commande, communément appelé Terminal, permet aux utilisateurs de transmettre des commandes au noyau et d’exécuter des tâches cruciales. C’est l’une des nombreuses fonctionnalités qui font la différence entre Linux et les autres systèmes d’exploitation.
Dans cet article, nous allons exploiter l’une des puissantes fonctionnalités de Linux: la possibilité d’exécuter automatiquement des scripts / commandes et des applications au démarrage. Ce processus est fait pour réaliser plusieurs choses. Cela peut aller d’une tâche amusante et simple comme changer le fond d’écran à des choses compliquées comme la sauvegarde de données ou le cryptage de fichiers.
Exécution de scripts Linux au démarrage
Commençons et examinons les différentes méthodes que nous pouvons utiliser pour automatiser les scripts et les commandes de démarrage Linux.
Méthode 1: Utilisez l’application GUI ‘Applications de démarrage’
La plupart des méthodes que nous examinerons nécessitent la ligne de commande. Cependant, les distributions basées sur GNOME ont un utilitaire graphique simple que vous pouvez utiliser. Les Applications de démarrage. »Il est préinstallé et constitue un outil fiable pour les utilisateurs qui n’aiment pas se salir les mains sur le terminal.
1. Lancez » Applications de démarrage » dans le menu applications.
2. Dans la fenêtre principale « Applications de démarrage », vous verrez trois options à droite; Ajouter, Supprimer et Modifier. Pour créer notre premier script automatisé, cliquez sur le bouton » Ajouter ».
3. Une fenêtre pop s’ouvrira. Entrez le nom de votre script ou programme de démarrage. Dans la section commande, entrez la commande que vous souhaitez exécuter – dites ‘sudo mkdir/home/tuts/Desktop/My-Test-Script. Vous pouvez également saisir le chemin d’accès complet à votre script bash ou à votre commande système exécutable dans les différents répertoires « bin « .
La commande ci-dessus me donnera toujours une notification sur mon écran pour mettre à jour mon système après chaque démarrage. Ce n’est qu’un exemple simple. Vous pouvez écrire des scripts bash avancés pour effectuer diverses tâches. Si vous commencez tout juste avec le script bash, regardez quelques exemples de boucle Bash For ici.
Méthode 2 : Utiliser la tâche Cron
Cron est un démon Linux qui exécute les tâches éditées par l’utilisateur comme spécifié par l’utilisateur. Ces tâches planifiées sont écrites dans le fichier crontab. Il indique au Cron quels travaux exécuter à quelle heure et sous quels événements.
Le format de base d’un fichier crontab est :
.
Cependant, pour exécuter des scripts au démarrage, nous utiliserons le paramètre @reboot. Si tout cela vous semble nouveau, veuillez lire notre article sur Crontab sous Linux Expliqué Avec des exemples.
Pour commencer, ajoutez une nouvelle tâche cron, exécutez la commande ci-dessous sur le Terminal.
$ crontab -e
Si vous n’avez jamais fait cela auparavant, vous verrez une option pour choisir votre éditeur par défaut, comme indiqué ci-dessous. Je recommanderais nano car c’est très simple et direct. Dans mon cas ici, je vais entrer ‘1.’
Nous allons écrire un script simple qui créera un nouveau répertoire sur le bureau au démarrage.
SHELL=/bin/bash@reboot sleep 30 && DISPLAY=:0 My-Test-Directory
Méthode 3: Utilisez le / rc.local
Une autre méthode pour exécuter des scripts et des commandes au démarrage consiste à utiliser le /rc.fichier local. Pour commencer, exécutez la commande ci-dessous sur le Terminal.
sudo nano /etc/rc.local
Cette commande ouvrira le rc.fichier local sur l’éditeur nano. S’il n’était pas présent, il en créerait un. Entrez vos commandes entre le #! / bin/bash et sortie 0 lignes. Vous pouvez également donner le chemin complet de votre script bash ici.
#! /bin/bash//path-to-your-bash-scriptexit 0
Maintenant, nous devons faire le /rc.exécutable de fichier local. Exécutez la commande ci-dessous :
sudo chmod +x /etc/rc.local
Une fois terminé, redémarrez votre PC et voyez les modifications prendre effet.
Méthode 4: Systemd
Systemd est une suite logicielle qui contient divers utilitaires pour gérer les services système et les processus du système d’exploitation. Le systemd démarre les services et les processus au démarrage.
Nous pouvons utiliser le Systemd pour automatiser nos scripts et commandes au démarrage. Créons et automatisons un programme pour nous avertir de mettre à jour le système à l’aide de Systemd.
Pour commencer, passons au dossier et au fichier requis où nous écrirons nos commandes. Exécutez les commandes ci-dessous :
$ mkdir -p ~/.config/systemd/user$ nano ~/.config/systemd/user/update-notifier.service
Après la deuxième commande , l’éditeur nano s’ouvrira, collez les commandes ci-dessous ici.
Description=Reminder to Update SystemPartOf=graphical-session-targetExecStart=bash -c 'sleep 10; notify-send "Please, Update your System Now"Type=oneshotWantedBy=graphical-session.target
Ces commandes sont assez simples. Le système enverra le « Rappel de mise à jour” 10 secondes après le chargement de la session graphique après le démarrage.
Maintenant, pour nous assurer que le script est chargé après chaque démarrage, nous devons le rendre exécutable. Exécutez les commandes ci-dessous.
$ chmod 644 ~/.config/systemd/user/update-notifier.service$ systemctl --user enable update-notifier.service$ systemctl --user daemon-reload$ reboot
C’est un moyen simple sur la façon dont nous peut automatiser les scripts avec Systemd au démarrage. La méthode ci-dessus exécute des scripts qui ne nécessitent pas d’accès root. Si vous souhaitez créer un script nécessitant un accès root, créez un service systemd dans le dossier ”/etc/systemd/system » au lieu de « ~/.répertoire « config/systemd/user ». En outre, vous devrez omettre le mot « utilisateur » inclus dans la commande ci-dessus.
Conclusion
Voici quatre méthodes que vous pouvez utiliser pour Exécuter automatiquement des Scripts et des commandes de démarrage Linux au démarrage. Si vous créez des scripts simples qui ne nécessitent pas d’autorisations élevées pour s’exécuter, je vous recommande d’utiliser l’application graphique ‘Application de démarrage’ ou un simple travail cron. Si vos scripts ont besoin d’un accès root, envisagez de créer un service Systemd.