Lien vers [[anthony_messe:anthony_messe|l'accueil]] ====== Exécution d'un script au démarrage de la BPi M1+ ====== ===== Prérequis ===== Premièrement il faut vérifier que le script iptables s'exécute bien manuellement. Pour cela, placez-vous dans le répertoire contenant ce dernier et exécutez-le : ./nom_du_script.sh N'oubliez pas non-plus de donner les droits d'exécution chmod +x nom_du_script.sh La première ligne du script doit être #!/bin/sh Pour la suite on suppose que le script se trouve dans ///root// root@debian:~/Documents# pwd /root ===== Automatisation ===== ==== Avec systemd (fonctionne) ==== On crée un fichier .service cd /etc/systemd/system/ nano iptables_access_point.service Qui contient les lignes suivantes : [Unit] Description=Setup firewall After=network.target local-fs.target [Service] RemainAfterExit=true ExecStart=/root/iptables_access_point.sh [Install] WantedBy=multi-user.target > Veillez bien à ce que //ExecStart// mène à votre fichier > //iptables_access_point.sh// étant le nom que vous lui avez donné On active le service systemctl enable iptables_access_point.service On redémarre reboot Le fichier contenant des commandes iptables, on vérifie avec la commande : iptables -L Et on constate que le script a bien été exécuté au démarrage. ==== Avec la crontab (ne fonctionne pas) ==== Éditez la crontab crontab -e Choisissez l'éditeur que vous souhaitez utiliser (nano étant le plus simple). Placez-vous tout en bas du fichier (ctrl +v). Ajoutez la ligne suivante : @reboot /chemin/vers/le/script.sh Ce qui donne dans notre cas : @reboot /root/Documents/iptables_access_point.sh ==== Avec init.d (ne fonctionne pas) ==== On copie le fichier dans ///etc/init.d/// cp /root/iptables_access_point.sh /etc/init.d/ On crée un lien symbolique ln -s /etc/init.d/iptables_access_point.sh /etc/rc.d/ ===== Ressources ===== * https://stackoverflow.com/questions/12973777/how-to-run-a-shell-script-at-startup * http://lea-linux.org/documentations/Systemd * https://linuxfr.org/users/coren/journaux/creer-un-service-sous-systemd