Shell-Skript beim starten automatisch ausführen..? [Gelöst]

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
jmar83
Beiträge: 962
Registriert: 20.06.2013 20:20:15
Wohnort: CH
Kontaktdaten:

Shell-Skript beim starten automatisch ausführen..? [Gelöst]

Beitrag von jmar83 » 11.09.2018 00:22:43

Hallo zusammen

Wie kann man ein Shell-Skript beim starten automatisch ausführen? Irgendwie funktioniert das nicht, einfach nach /etc/init.d/ kopieren mit mit chmod +x flaggen..?
Zuletzt geändert von jmar83 am 09.12.2019 16:35:56, insgesamt 1-mal geändert.
Freundliche Grüsse, Jan

jmar83
Beiträge: 962
Registriert: 20.06.2013 20:20:15
Wohnort: CH
Kontaktdaten:

Re: Shell-Skript beim starten automatisch ausführen..?

Beitrag von jmar83 » 11.09.2018 01:32:43

Es geht um folgendes Script:

Code: Alles auswählen

  GNU nano 2.9.8                         ./iptables_custrules.sh

#!/bin/sh /etc/rc.common

START=10
STOP=15

start() {
set -x && sleep 30 && rm /etc/init.d/public_ip.txt > /dev/null 2>&1
wget -qO- https://api.ipify.org > /etc/init.d/public_ip.txt
for IP in $(cat /etc/init.d/public_ip.txt); do iptables -t nat -A PREROUTING -d $IP -m tcp -p tcp -$
iptables -t nat -A POSTROUTING -d 192.168.1.21 -s 192.168.1.0/24 -j SNAT --to-source 192.168.1.1
# rm -f /etc/init.d/public_ip.txt
}

stop() {
rm /etc/init.d/public_ip.txt > /dev/null 2>&1
}




...mit dem Dienst hat es zwar nun geklappt, aber zum Zeitpunkt der Ausführung scheint das System auf einem niedrigen Runlevel zu sein, ohne Netzwerk etc. Wie sollt also curl die URL in die Datei ineinschreiben?

Wüsste jemand eine Lösung?
Freundliche Grüsse, Jan

cronoik
Beiträge: 2049
Registriert: 18.03.2012 21:13:42
Lizenz eigener Beiträge: GNU Free Documentation License

Re: Shell-Skript beim starten automatisch ausführen..?

Beitrag von cronoik » 11.09.2018 02:04:41

Du koenntest einen Eintrag in die /etc/crontab mit @reboot setzen.
Hilf mit unser Wiki zu verbessern!

jmar83
Beiträge: 962
Registriert: 20.06.2013 20:20:15
Wohnort: CH
Kontaktdaten:

Re: Shell-Skript beim starten automatisch ausführen..?

Beitrag von jmar83 » 11.09.2018 02:50:44

habe es nun so gelöst, wird erst ab runlevel 5 ausgeführt. Das ist sicher genug spät...

Code: Alles auswählen

#!/bin/sh /etc/rc.common
# chkconfig: 5 9999 9999

START=9999
STOP=9999

start() {
set -x
# sleep 30
rm /etc/init.d/public_ip.txt > /dev/null 2>&1
wget -qO- https://api.ipify.org > /etc/init.d/public_ip.txt
for IP in $(cat /etc/init.d/public_ip.txt); do iptables -t nat -A PREROUTING -d $IP -m tcp -p tcp --
dport 80 -j DNAT --to-destination 192.168.1.21; done
iptables -t nat -A POSTROUTING -d 192.168.1.21 -s 192.168.1.0/24 -j SNAT --to-source 192.168.1.1
# rm -f /etc/init.d/public_ip.txt
}

stop() {
rm /etc/init.d/public_ip.txt > /dev/null 2>&1
}

Das Skript dient übrigens dazu, "NAT Loopback" auf dem Router vom Provider zu umgehen...
Freundliche Grüsse, Jan

Antworten