Come avviare, arrestare e riavviare rtorrent?


22

Ho appena installato rtorrentsul mio computer Ubuntu Server 12.04 tramite apt-get.

Come inizio | fermare | riavviare il servizio?


hai provato sudo service start rtorrent?
BiggJJ,

sudo service rtorrent startcioè, ma sì, ci ho provato. Emette solo rtorrent: unrecognized service. Se scrivo sudo service rtoe premo il tasto Tab si completa a rtorrentInit.sh. Non so cosa sia, ma ricordo (da una guida ormai lontana nelle interwebs) che ho scritto rtorrente stop, ma non in quale ordine e se c'è un'altra parola in mezzo. Non ho scritto rtorrentInit.shquella prima volta.
Lindhe,

Sì, questo è quello che volevo dire. Dai un'occhiata qui: Ubuntu 12.04 LTS Server dedicato rTorrent . Gli ultimi 7-8 passaggi riguardano l'installazione e l'avvio di rtorrent. Forse può far luce.
BiggJJ,

L'ho già letto dall'alto verso il basso. Ma grazie comunque. Per il momento posso andare in giro con lo schermo e saltare in rtorrent e uscire da lì, ma lascerò questo thread aperto se qualcuno capisce la risposta.
Lindhe,

Risposte:


22

Per avviare rtorrent, basta premere Ctrl+ Alt+ Tsulla tastiera per aprire Terminale. Quando si apre, esegui i seguenti comandi:

rtorrent

Per interrompere Ctrl+ D Per uscire Ctrl+q

I comandi precedenti vengono Entereseguiti dopo aver premuto , nella finestra di rtorrent.

Per ulteriori informazioni, vedere l'output di:

rtorrent -h

e / o vedi Usare rtorrent come un professionista


Questa è la risposta corretta Temo di aver confuso le istruzioni per questo programma con qualche altro programma, quindi probabilmente non esiste esattamente ciò che stavo cercando. Chiedo scusa per il problema, ma spero che qualcun altro possa usare questo thread.
Lindhe,

Vale la pena ricordare che può volerci un po 'di tempo per rtorrentchiudere tutti i file e uscire dopo Ctrl+ q- non significa che non fosse la combinazione giusta.
Skippy le Grand Gourou,

4

La risposta accettata è corretta ma non specifica come eseguire un arresto "sicuro" del rtorrentservizio con uno systemctlscript di servizio.

La maggior parte delle risposte o degli script esistenti "uccide" la sessione dello schermo o il rtorrentprocesso stesso. In tal modo, inviano un segnale SIGINT (2)o SIGQUIT (3)che interrompe / uccide il rtorrentprocesso. Lo svantaggio è che in genere il file di blocco di rtorrentnon viene eliminato perché rtorrentnon è stato chiuso correttamente. Di conseguenza, il successivo avvio di rtorrentfallirebbe a causa del file di blocco persistente.

Dando un'occhiata al codice sorgente dirtorrent spettacoli che si aspetta a SIGTERM (15). Quindi, considerando uno systemctlscript di servizio il comando stop potrebbe apparire come:

ExecStop=/usr/bin/kill -s 15 \`pidof rtorrent`

Se pidofnon è disponibile puoi anche usare qualcosa come:

ps -A | grep "rtorrent" | awk '{print $1}'
  • ps elencare i processi correnti
  • grep estrae i particolari del processo rtorrent
  • awk seleziona il pid e lo visualizza su stdout

Nel caso in cui sia necessario attendere il completamento dell'arresto, è possibile utilizzare killall -w. Nota che:

killallpuò attendere per sempre se il segnale è stato ignorato, non ha avuto alcun effetto o se il processo rimane nello stato di zombi (fonte:) man killall.


1
kill -s 15 `pidof rtorrent`potrebbe essere più semplicemente killall rtorrent(15 o SIGTERMè il segnale predefinito inviato da kille killall).
David Foerster,

1
Inoltre, dove signal_handler.ccvedi che rtorrent si aspetta che SIGTERM si concluda con grazia? Vedo solo il codice di gestione del gestore del segnale generico del segnale ma nessun gestore del segnale effettivo.
David Foerster,

Non dovrebbe essere: /usr/bin/kill -n 15 `pidof rtorrent` o /usr/bin/kill -s SIGTERM \$(pidof rtorrent)? Stai mescolando nomi e numeri dei segnali. - Da man kill, kill -lti darà effettivamente l'elenco dei nomi dei segnali e dei corrispondenti codici dei segnali. - Si noti inoltre che sebbene le zecche posteriori, come in `cmd`, non siano ufficialmente deprecate, ho letto che in $(cmd)realtà è preferito come più chiaro.
Cbhihe,

Non dimenticare pgrep:) Il comando pgrep rtorrentrestituisce solo il PID, quindi non è necessario eseguire il piping o l'analisi
Zanna
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.