Outils pour utilisateurs

Outils du site


anthony_messe:banana_pi:lancement_script_au_demarrage

Lien vers 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

anthony_messe/banana_pi/lancement_script_au_demarrage.txt · Dernière modification: 2018/05/25 08:53 par Anthony Messé