[RISOLTO] Esecuzione automatica script in avvio

Bash, Perl, Python, Ruby, ...

[RISOLTO] Esecuzione automatica script in avvio

Messaggioda vagnu00 » 16/08/2016, 22:07

Salve a tutti. So che puo' essere una domanda gia fatta ma dopo una giornata di ricerche in internet e di prove, non so piu' come fare, non ho risolto!
ho creato uno script che in poche parole, all'avvio del pc controlla il mio IP esterno e, se diverso, mi cambia una impostazione del file di configurazione di qbitorrent. alla fine dello script lancia il qbittorrent.
questo script non ha problemi se lo lancio da terminale o se creo un lanciatore nella scrivania e lo eseguo a mano
il file e' eseguibile ma non va come provo ad inserirlo in APPLICAZIONI d'avvio (sh /percorso/script), non va se lo inserisco in /etc/rc.local, ho provato persino ad inserirlo in /etc/init.d come servizio di sistema.....
secondo voi ci sta che sia INESEGUIBILE in avvio automatico? a me sembra strano, un modo ci deve essere! :-(
grazie in anciticipo
Ultima modifica di vagnu00 il 27/08/2016, 21:57, modificato 1 volta in totale.
vagnu00
Jr. Member
Jr. Member
 
Messaggi: 60
Iscritto il: 08/11/2015, 9:50

Re: esecuzione automatica script in avvio

Messaggioda Aki » 17/08/2016, 7:44

Stai ovviamente sbagliando qualcosa. Potrebbe essere utile, comunque, prendere visione dello script.
Aki
Global Moderator
Global Moderator
 
Messaggi: 7766
Iscritto il: 27/12/2007, 16:59

Re: esecuzione automatica script in avvio

Messaggioda vagnu00 » 17/08/2016, 9:26

eccolo!
Codice: Seleziona tutto
#!/bin/bash
clear

QBIT="~/.config/qBittorrent/qBittorrent.conf"

if [ -e $QBIT ] ; then
>/dev/null
else
echo "ATTENZIONE, il file di configurazione qBittorrent non e' presente, esco!"; exit 2
fi

if [ -e /usr/bin/curl ]; then
>/dev/null
else
echo "ATTENZIONE!! Pacchetto CURL non è installato, lo installo subito, attendere..."
sudo apt install curl -y > /dev/null 2> /tmp/curlerr
   if [ $? = 0 ]; then
   $0
   else
   echo "ATTENZIONE, problemi con l'installazione di CURL, premere INVIO per vedere errore"; read
   cat /tmp/curlerr
   fi
fi

echo "CONTROLLO IP ESTERNO..."
curl icanhazip.com > /tmp/ipext 2> /tmp/ipexterr
if [ $? = 0 ]; then
echo "Connection\InetAddress=`cat /tmp/ipext`" > /tmp/ipext
echo `sed -n '104p' ~/.config/qBittorrent/qBittorrent.conf` > /tmp/ipqbit
   if [ `cat /tmp/ipext` = `cat /tmp/ipqbit` ]; then
   echo "L'IP ESTERNO NON E' CAMBIATO..."
   else
   echo "Connection\\\InetAddress=`cat /tmp/ipext`" > /tmp/ipext
   sed -i '104d' $QBIT; sed -i 104i`cat /tmp/ipext` $QBIT 2> /tmp/qbiterrore
      if [ $? = 0 ]; then
      echo "L'IP ESTERNO era CAMBIATO e ho aggiornato il file config di qbittorrent!"
      else
      echo "ATTENZIONE, l'IP e' cambiato ma qualcosa e' andato storno nell'aggiornamento del file config di qbittorrent.."
      echo ".. premi INVIO per vedere l'errore"; read
      cat /tmp/qbiterrore
      exit 2
      fi
   fi
else
echo "errore nel recupero IP esterno...premre INVIO per vedere l'errore"; read
cat /tmp/ipexterr
exit 2
fi

echo "avvio qbittorrent..."
qbittorrent &
vagnu00
Jr. Member
Jr. Member
 
Messaggi: 60
Iscritto il: 08/11/2015, 9:50

Re: esecuzione automatica script in avvio

Messaggioda desperados » 20/08/2016, 10:38

non sono esperto, ma così su due piedi mi vengono 2 dubbi:
~ (tilde) indica la home, nel caso di crontab credo /root, se invece qBittorrent.conf è nella tua cartella in /home/utente non lo trova
curl, sed ecc a me in un caso non funzionavano senza percorso completo ( /usr/bin o quel che è )
cmq per capire cosa non va' metti un paio di echo >> file_di_log.txt e vedi dove si ferma
- Potrebbe esser peggio. - E come? - Potrebbe piovere!
desperados
Hero Member
Hero Member
 
Messaggi: 772
Iscritto il: 22/02/2008, 8:55

Re: esecuzione automatica script in avvio

Messaggioda vagnu00 » 20/08/2016, 14:55

Grazie! Aggiornerò il post il prima possibile...
vagnu00
Jr. Member
Jr. Member
 
Messaggi: 60
Iscritto il: 08/11/2015, 9:50

Re: esecuzione automatica script in avvio

Messaggioda Aki » 21/08/2016, 9:43

vagnu00 ha scritto:secondo voi ci sta che sia INESEGUIBILE in avvio automatico?

Il programma che stai cercando di avviare automaticamente necessita della presenza in esecuzione quanto meno dell'ambiente grafico offerto dal server X: per tale motivo può essere eseguito solo dopo l'avvio dell'ambiente grafico, la login in tale ambiente e del desktop environment eventualmente richiesto dall'applicazione.

Se, al contrario, intendi utilizzare la versione "nox" del programma, puoi incaricare anche systemd dell'avvio dell'applicazione: vedi, ad esempio, https://github.com/qbittorrent/qBittorrent/wiki/Setting-up-qBittorrent-on-Ubuntu-server-as-daemon-with-Web-interface-(15.04-and-newer)
Aki
Global Moderator
Global Moderator
 
Messaggi: 7766
Iscritto il: 27/12/2007, 16:59

Re: Esecuzione automatica script in avvio

Messaggioda vagnu00 » 21/08/2016, 10:35

Grazie Aki! Capisco il problema ora ci studio un po'....
Ora che ci penso....visto che mi dici del login, ci sta che devo cambiare qualcosa nella configurazione del DM slim...per adesso è impostato che nn richiede pass ed entra subito cn il mio utente....magari gli fa problemi questa cosa.
Appena posso controllo e vi tengo aggiornati.
vagnu00
Jr. Member
Jr. Member
 
Messaggi: 60
Iscritto il: 08/11/2015, 9:50

Re: esecuzione automatica script in avvio

Messaggioda vagnu00 » 27/08/2016, 21:57

Aki ha scritto:
vagnu00 ha scritto:secondo voi ci sta che sia INESEGUIBILE in avvio automatico?

Il programma che stai cercando di avviare automaticamente necessita della presenza in esecuzione quanto meno dell'ambiente grafico offerto dal server X: per tale motivo può essere eseguito solo dopo l'avvio dell'ambiente grafico, la login in tale ambiente e del desktop environment eventualmente richiesto dall'applicazione.

Se, al contrario, intendi utilizzare la versione "nox" del programma, puoi incaricare anche systemd dell'avvio dell'applicazione: vedi, ad esempio, https://github.com/qbittorrent/qBittorrent/wiki/Setting-up-qBittorrent-on-Ubuntu-server-as-daemon-with-Web-interface-(15.04-and-newer)


allora eccomi ad aggiornare il post!
grazie a Aki, ho fatto una prova disabilitando in slim.conf l'autologin ed adesso tutto OK!!!

grazie a tutti!
vagnu00
Jr. Member
Jr. Member
 
Messaggi: 60
Iscritto il: 08/11/2015, 9:50


Torna a Scripting

Chi c’è in linea

Visitano il forum: Nessuno e 2 ospiti