J'ai toujours été curieux de savoir ce qui se passe pendant le processus de démarrage d'un système Linux et de connexion. En appuyant sur le bouton d'alimentation ou en lançant une machine virtuelle, vous initiez une chaîne d'événements qui vous mèneront à un système entièrement fonctionnel, parfois en moins d'une minute. La même chose est vraie lorsque vous vous déconnectez ou éteignez votre ordinateur.
J'ai toujours été curieux de savoir ce qui se passe pendant le processus de démarrage d'un système Linux et de connexion. En appuyant sur le bouton d'alimentation ou en lançant une machine virtuelle, vous initiez une chaîne d'événements qui vous mèneront à un système entièrement fonctionnel, parfois en moins d'une minute. La même chose est vraie lorsque vous vous déconnectez ou éteignez votre ordinateur.
Ce qui est plus intéressant, c'est que vous pouvez également demander au système d'effectuer des opérations spécifiques au démarrage du système et lorsque l'utilisateur se connecte ou se déconnecte.
Dans cet article, nous explorerons les méthodes traditionnelles pour atteindre ces objectifs dans le système d'exploitation Linux.
Remarque : Nous supposons que nous utilisons Bash comme shell principal pour la connexion et la déconnexion. Si vous utilisez un autre shell, certaines méthodes risquent de ne pas fonctionner. Si vous avez d'autres questions, veuillez vous référer à la documentation Shell correspondante.
Exécuter des scripts Linux au démarrage
Il existe deux manières traditionnelles d'exécuter des commandes ou des scripts au démarrage :
Méthode n°1 – Utiliser les tâches cron
En plus des formats courants (minute/heure/jour/mois/semaine), le planificateur cron prend également en charge la commande @reboot. Le paramètre après cette commande est le chemin absolu du script (le script à exécuter au démarrage). Il y a cependant deux points à noter avec cette approche :
Méthode n°2 – Utilisation de /etc/rc.d/rc.local
Cette méthode est également valable pour la distribution Linux basée sur systemd. Cependant, pour utiliser cette méthode, vous devez accorder l'autorisation d'exécution au fichier /etc/rc.d/rc.local :
# chmod +x /etc/rc.d/rc.local
Ajoutez ensuite le script en bas de ce fichier.
La figure ci-dessous illustre comment exécuter deux exemples de scripts (/etc/rc.d/rc.local/home/gacanepa/script1.sh et /home/gacanepa/script2.sh) à l'aide de tâches cron et rc.local respectivement.
script1.sh:
#!/bin/bash DATE=$(date +'%F %H:%M:%S') DIR=/home/gacanepa echo "Current date and time: $DATE" > $DIR/file1.txt
script2.sh :
#!/bin/bash SITE="Tecmint.com" DIR=/home/gacanepa echo "$SITE rocks... add us to your bookmarks." > $DIR/file2.txt
*Exécuter le script Linux au démarrage*
N'oubliez pas d'accorder à l'avance les autorisations d'exécution aux deux exemples de scripts :
$ chmod +x /home/gacanepa/script1.sh $ chmod +x /home/gacanepa/script2.sh
Exécuter des scripts Linux lors de la connexion ou de la déconnexion
Pour exécuter des scripts lors de la connexion ou de la déconnexion, vous devez utiliser respectivement les fichiers ~.bash_profile et ~.bash_profile. Dans la plupart des cas, ce dernier doit être créé manuellement. Au bas de chaque fichier, ajoutez le code du script appelant, comme indiqué dans l'exemple précédent, pour obtenir cette fonctionnalité.
Résumé
Cet article explique principalement comment exécuter des scripts lors du démarrage, de la connexion et de la déconnexion du système.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!