Ecco il contenuto di /etc/network/interfaces
:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
post-up /etc/network/if-up.d/sshstart
Ed sshstart
è uno script con al suo interno:
curl something something darkside send a file over ftps in the background &
/usr/bin/autossh -M 0 -f -N -o ServerAliveInterval=15 -o ServerAliveCountMax=3 -R 127.0.0.1:2005:127.0.0.1:22 -R 192.168.1.10:2006:192.168.2.110:1912 -L 127.0.0.1:5249:192.168.1.212:5249 username@17.16.15.2 -p 8080
Quando la macchina si riavvia, il curl
comando viene eseguito più volte, il file finisce 2 o 3 volte sul server ftp e quando guardo i processi sembra che ci siano più istanze di autossh in esecuzione ... Non sono sicuro se questo è come autossh fa le cose o no, ma sicuramente curl non dovrebbe caricare il file più volte.
La mia impressione è che l'intero sshstart
script venga eseguito più volte ma non capisco perché.
Ho provato a cercare i dettagli sul processo di configurazione della rete all'avvio, ma tutto quello che ho potuto trovare erano le informazioni sulla sintassi per il file delle interfacce.
Qualcuno può aiutare per favore?
Grazie.
--- Modifica ---
Come suggerito sotto ho modificato il mio file interfacce come segue (rimosso le righe vuote sopra il post-up):
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
post-up /etc/network/if-up.d/sshstart
E ha aggiunto la seguente riga a sshstart:
echo $(date)>>/run/shm/sshstart.log
Ecco il contenuto di /run/shm/sshstart.log
dopo un riavvio:
Wed Oct 29 08:07:00 EDT 2014
Wed Oct 29 08:07:07 EDT 2014
Wed Oct 29 08:07:07 EDT 2014
Wed Oct 29 08:07:07 EDT 2014
Quindi è stato eseguito 4 volte :( cosa sta succedendo?
echo $(date)
è un po 'imbarazzante e indiretto. Potrebbe anche solo dirlo date
. Simile a Useless Use of Cat Award .