Får ikke, under noen omstendigheter til å starte rtorrent fra scriptet.
Kan kjøre kommandoene i et shell uten problem, men i scriptetet dør screen samtidig som scriptet avslutter.
Noen som er smartere enn meg på dette?
Det jeg plages med er
har prøvd mange variasjoner av denne, med og uten -s har prøvd å starte screen og deretter sende en kommando inn i forrige screen med rtorrent.. det bare DØR.
Jeg frykter det har en sammenheng med exit i slutten av koden der, men jeg MÅ exite scritpet der, hvis ikke vil den kjøre en haug med andre funksjoner som den ikke skal.
Hele hensikten med scriptet er å starte opp rtorrent som en helt egen prosess for å deretter avslutte scriptet og stenge sesjonen.
Holy shit. Fikk til..
Etter 2 timer med prøving og feiling.
Måtte rett og slett spesifisere en screenrc, resultatet ble dette:
Kan kjøre kommandoene i et shell uten problem, men i scriptetet dør screen samtidig som scriptet avslutter.
Noen som er smartere enn meg på dette?
Kode
force_update() { client_id=`head -n 100 /dev/urandom | md5sum | tr -d " -"` json=`wget -q --post-data="user=$username&pass=$password&client_id=$client_id&local_ip=$local_ip" -O - 'https://www.privateinternetaccess.com/vpninfo/port_forward_assignment' | head -1 |tee /tmp/vpn_ip` echo -n "updating ip and ports: " new_port="`echo $json |awk -F : '{print $2}' |sed 's/}//'`" cat $conf | sed "s/bind = $old_ip/bind = $local_ip/" | sed "s/port_range = $old_port-$old_port/port_range = $new_port-$new_port/" >/tmp/$rpid.conf echo "ok: $old_ip -> $local_ip: $old_port -> $new_port" mv /tmp/$rpid.conf $conf echo -n "Restarting client.. " kill $rpid sleep 2s screen -dmS rutorrent -s /usr/local/bin/rtorrent ps u > /tmp/tmpfil rpid_new="`cat /tmp/tmpfil |grep rtorrent |awk '{print $2}'`" rm -rf /tmp/tmpfil echo "$rpid killed. New proc: $rpid_new" exit
Kode
screen -dmS rutorrent -s /usr/local/bin/rtorrent
Jeg frykter det har en sammenheng med exit i slutten av koden der, men jeg MÅ exite scritpet der, hvis ikke vil den kjøre en haug med andre funksjoner som den ikke skal.
Hele hensikten med scriptet er å starte opp rtorrent som en helt egen prosess for å deretter avslutte scriptet og stenge sesjonen.
Holy shit. Fikk til..
Etter 2 timer med prøving og feiling.
Måtte rett og slett spesifisere en screenrc, resultatet ble dette:
Kode
echo -n "Restarting client.. " kill -9 $rpid #instakill echo "screen /usr/local/bin/rtorrent" > /tmp/rtorrentrun sleep 1s screen -dmS rtorrent -c /tmp/rtorrentrun rm /tmp/rtorrentrun
Sist endret av RandomiZed; 17. februar 2016 kl. 01:19.
Grunn: Automatisk sammenslåing med etterfølgende innlegg.