Nous nous retrouvons souvent à lancer certains programmes immédiatement après nous être connectés à nos systèmes. Rechercher et lancer manuellement chacun de ces programmes à chaque démarrage d'Ubuntu est un processus qui prend du temps.
Certains des programmes Linux sont configurés pour se lancer au démarrage. Cependant, il est également possible de configurer vos programmes, scripts ou commandes préférés pour qu'ils s'exécutent automatiquement au démarrage d'Ubuntu.
Lancer des programmes au démarrage à l'aide de systemd
systemd, également connu sous le nom de gestionnaire de système ou de service, est le premier processus qui démarre au démarrage d'Ubuntu. Un service systemd est généralement inclus par défaut avec la plupart des programmes Linux.
Avec systemd, vous pouvez également configurer vos programmes pour qu'ils se lancent automatiquement au démarrage de votre système. Vous pouvez utiliser la commande systemctl pour
gérer les services systemd.Pour vérifier si le fichier d'unité systemd existe pour votre programme, utilisez la commande suivante :
systemctl list-unit-files | grep
Supposons que vous souhaitiez démarrer automatiquement Apache au démarrage du système. Utilisez la commande suivante pour vérifier s'il existe un fichier d'unité systemd :
systemctl list-unit-files | grep apache2
S'il existe, vous verrez une sortie comme celle-ci:
Maintenant, pour qu'Apache se lance automatiquement au démarrage, exécutez :
sudo systemctl activer apache2
Pour vérifier si le service Apache est activé pour s'exécuter au démarrage, utilisez la commande suivante :
sudo systemctl est activé apache2
La sortie doit retourner activé si le service est configuré pour s'exécuter automatiquement au démarrage du système.
Pour empêcher un programme de s'exécuter automatiquement au démarrage d'Ubuntu, désactivez son service en utilisant :
sudo systemctl désactiver apache2
Si un certain programme n'est pas livré avec une unité systemd (service système), vous pouvez créer son fichier d'unité systemd pour l'exécuter au démarrage du système. Pour créer un fichier unité, disons test.service, exécutez la commande suivante :
sudo nano /lib/systemd/system/test.service
Ensuite, ajoutez les lignes de code suivantes dans le fichier unité. Assurez-vous de modifier la valeur de ExecStart directive en ajoutant le chemin du programme que vous souhaitez exécuter au démarrage.
En plus d'un programme, vous pouvez également exécuter une commande ou un script au démarrage en spécifiant son chemin dans le ExecStart directif.
[Unité]
Description=Ceci est un fichier de service de test.[Service]
Genre=simple
ExecStart=
[Installer]
WantedBy=multi-utilisateur.cible
Une fois terminé, enregistrez et fermez le fichier unité.
Ensuite, attribuez à ce fichier d'unité les autorisations nécessaires :
sudo chmod 644 /etc/systemd/system/test.service
Maintenant, le fichier d'unité systemd est créé et vous êtes prêt à gérer votre programme au démarrage en utilisant les commandes décrites ci-dessus.
Utilisation des applications de démarrage de GNOME sur Ubuntu
Une autre façon de lancer des programmes fréquemment utilisés au démarrage consiste à utiliser les applications de démarrage de GNOME. Vous pouvez le lancer depuis le menu des applications en appuyant sur Super et en tapant "applications de démarrage." Ou vous pouvez le lancer en appuyant sur Alt + F2 et en tapant la commande suivante dans le Exécuter une commande boite de dialogue:
gnome-session-properties
Cela lancera le Préférences des applications de démarrage fenêtre où vous verrez une liste de programmes déjà configurés pour s'exécuter au démarrage.
Pour ajouter un nouveau programme à la liste, cliquez sur Ajouter. Cela ouvrira le Ajouter un programme de démarrage fenêtre.
Dans le Nom champ, tapez un nom pour le programme que vous souhaitez ajouter. Puis dans le Commande, fournissez le chemin complet vers le binaire exécutable du programme.
Pour trouver le chemin complet du programme, utilisez la commande which suivie du nom du programme. Par exemple, pour trouver le binaire exécutable pour Slack, la commande serait :
qui lâche
Alternativement, vous pouvez cliquer sur Parcourir et localisez l'exécutable du programme. Vous pouvez également ajouter tout commentaire lié au programme, bien que ce soit facultatif. Une fois terminé, cliquez sur Ajouter.
Vous verrez maintenant le programme répertorié dans la liste des programmes de démarrage. Les programmes sélectionnés démarreront automatiquement lorsque vous vous connecterez à votre machine Ubuntu.
Retarder les programmes de démarrage sur Ubuntu
Certaines applications peuvent être lancées automatiquement au démarrage, mais vous n'en avez pas besoin immédiatement après la connexion. Vous pouvez ajouter un délai au lancement de ces applications afin qu'elles ne démarrent pas toutes en même temps. Cela réduira également la charge sur votre ordinateur.
Dans la fenêtre Préférences des applications de démarrage, sélectionnez le programme que vous souhaitez retarder et cliquez sur Modifier. Dans le champ Commande, ajoutez dormir x avant la commande, où X est le temps (en secondes) à attendre avant d'ouvrir l'application.
Disons que vous voulez démarrer Slack 120 secondes après le démarrage du système, vous ajouteriez donc :
dormir 120; mou
Pour supprimer un programme de la liste des programmes de démarrage, lancez Préférences des applications de démarrage fenêtre, sélectionnez l'application et cliquez sur Retirer.
Lancer des programmes au démarrage d'Ubuntu à l'aide de tâches cron
Une tâche cron sous Linux permet de programmer des programmes, des commandes ou des scripts pour qu'ils s'exécutent automatiquement à des heures ou à des intervalles spécifiés. À l'aide de tâches cron, vous pouvez également exécuter automatiquement un programme Ubuntu au démarrage du système sans aucune interaction manuelle.
Les tâches cron sont définies comme des entrées dans le fichier crontab. Ne modifiez pas le fichier crontab directement à l'aide d'un éditeur de texte. Utilisez plutôt la commande suivante pour le modifier :
crontab -e
Choisissez l'éditeur dans lequel vous souhaitez modifier le fichier crontab. Ensuite, pour ajouter la tâche cron qui s'exécute après le démarrage, utilisez la syntaxe suivante :
@redémarrer
Par exemple, la tâche cron suivante indique au système de vérifier l'espace disque et enregistrez la sortie dans le ~/disk-space.txt fichier après le démarrage du système :
@reboot df -h >> ~/disk-space.txt
Enregistrez le fichier crontab et quittez.
Pour supprimer l'exécution d'un programme au démarrage d'Ubuntu, supprimez simplement son entrée de travail cron du fichier crontab.
Activer les programmes nécessaires à lancer au démarrage sur Ubuntu
Avoir vos programmes préférés déjà ouverts au démarrage peut être très pratique car vous pouvez commencer à les utiliser immédiatement après vous être connecté à votre système. Cependant, trop de programmes de démarrage peuvent prolonger le processus de démarrage.
Par conséquent, il est recommandé d'activer uniquement les programmes nécessaires au démarrage et de désactiver les programmes utilisés occasionnellement qui sont activés par défaut.