
Avez-vous déjà voulu exécuter un script au démarrage avec les privilèges root ? Si vous avez un serveur domestique, ou peut-être même juste un bureau Linux, cela vous a peut-être traversé l’esprit. Cela semble incertain, mais si vous comprenez les risques, la récompense pour cela peut être assez bonne.
Les principales raisons sont qu’il n’y aurait plus de démarrage du serveur, de connexion via ssh, de saisie d’un mot de passe, d’obtention d’un shell root, puis d’exécution manuelle de script après script. Au lieu de cela, exploitez la puissance de cron et configurez votre système pour qu’il exécute automatiquement ces scripts au démarrage ! Voici comment procéder.
Contenu
Configuration de Cron
La plupart des distributions Linux offrent la possibilité d’accéder à cron en entrant simplement crontab -e. Cependant, si vous avez entré cette commande et que rien du tout ne s’est passé, vous êtes sur une distribution Linux qui n’a aucun moyen d’interagir avec cron. Cela signifie que vous devrez installer un outil pour continuer. L’outil le plus populaire à utiliser dans cette situation est un démon connu sous le nom de « cronie ». C’est un outil très populaire et il réside dans les référentiels de distribution Linux les plus populaires.
Ouvrez un terminal et installez Cronie avec votre gestionnaire de paquets. Sinon, rendez-vous sur cette page et téléchargez un package pour votre distribution.
Configurer le script avec Cron
Ouvrir une crontab est très simple. Pour commencer, ouvrez une fenêtre de terminal et entrez la commande suivante :
Noter: le sudo est important si vous souhaitez exécuter le script en tant que root. Vous pouvez omettre le sudo si vous souhaitez simplement exécuter le script en tant qu’utilisateur normal.
Si le système n’a pas utilisé crontab auparavant, l’utilisateur devra spécifier un éditeur avec lequel travailler. Bien que tous les éditeurs soient bons à leur manière, choisissez « nano » car c’est l’éditeur de texte le plus simple et ne nécessite pas beaucoup d’efforts. Avec l’éditeur sélectionné, cron chargera un fichier par défaut avec des instructions détaillées sur le fonctionnement de tout.
Dans l’éditeur nano du terminal, faites défiler jusqu’en bas et commencez par écrire « @reboot ». La commande de redémarrage est la clé ici car elle indique au cron lors du redémarrage de cette commande de s’exécuter à chaque fois. Directement après le redémarrage, ajoutez le chemin complet du fichier au script bash.
Maintenant que la commande est configurée, la crontab peut être enregistrée. Appuyez sur « Ctrl + o » sur le clavier. Cela invitera l’utilisateur à « écrire le fichier ». Par défaut, cron nomme la crontab, donc ne changez rien. Appuyez sur la touche Entrée pour enregistrer le crontab.
Supprimer le script du démarrage
De la même manière que la commande a été ajoutée à la crontab, elle peut être supprimée. Pour ce faire, ouvrez un terminal et entrez sudo crontab -e. Cela chargera le fichier crontab. Supprimez simplement la commande qui a été ajoutée, enregistrez-la et redémarrez l’ordinateur (ou le serveur).
Dépannage de Cron
Parfois, cron n’exécute pas les commandes, ce qui peut poser problème. Le moyen le plus simple de résoudre les problèmes avec cron (s’il y en a) est de consulter le journal système. Pour ce faire, ouvrez la fenêtre du terminal et entrez cette commande :
Le journal système affiche tous les événements système et, en utilisant la commande grep, il est possible de filtrer ce que font cron et crontag. Cela devrait permettre aux utilisateurs de dépanner et de réparer facilement tout ce qui pourrait mal tourner.
Conclusion
Les scripts Bash sont une chose merveilleuse, et c’est l’une des grandes forces de Linux. Il facilite l’administration des serveurs et même des ordinateurs Linux classiques en raison de la possibilité de prendre de grandes quantités de commandes et de les automatiser. En ajoutant cron à l’image, ces scripts ont le pouvoir de devenir encore plus utiles. Plus besoin de bricoler après le démarrage de votre machine Linux. Il suffit de le configurer et de l’oublier !
Quels scripts root exécuteriez-vous au démarrage sur votre machine Linux ? Dites-nous ci-dessous!
Cet article est-il utile ? Oui Non