Bittorrent da riga di comando – Mac e Linux

Un’altro post dedicato alla nobile arte di scaricare materiale assolutamente LEGALE da internet mediante il sistema torrent; nel precedente post sull’argomento ho spiegato cosa sono i torrent e come scaricarli con un semplice programmino da interfaccia grafica; adesso voglio provare qualcosa di più: utilizzare un client da riga di comando.

Prima di tutto la domanda fondamentale: perchè? Presto detto: l’utilizzo della riga di comando offre vantaggi che l’interfaccia grafica non ha; ne cito giusto un paio, i primi che mi vengono in mente:

  • Automatizzazione: con dei semplici script in bash e/o righe di Cron è possibile automatizzare a piacimento qualunque operazione svolta mediante riga di comando; con l’interfaccia grafica non sempre è possibile;
  • Utilizzo su server: spesso task di una certa durata (come un download) conviene farli svolgere da una macchina che rimanga sempre accesa e connessa in rete; naturalmente il massimo è un server linux.
  • Disponibilità da remoto: per comandare un’applicazione da riga di comando su un computer in rete è sufficiente un qualunque altro computer in rete (in qualunque altra parte del mondo) con un client ssh (incluso di default nei sistemi civili, come linux e macos, e disponibile come applicazione gratuita Putty su sistemi primitivi, come winzoz).

Ops.. dovevano essere un paio, e invece sono 3.. beh, poco male😀. Innanzitutto provvediamo a procurarci un client testuale: io mi sono trovato bene con BitTornado. Ne spiegherò l’utilizzo su Linux, dato che a mio avviso la sua destinazione più interessante è proprio l’utilizzo su un server casalingo, che si occupi di scaricare da internet giorno e notte lasciando libero il laptop. In particolare lavorerò su Ubuntu Linux, ma non credo ci siano differenze sostanziali con le altre distribuzioni. Comunque se proprio vi interessa so che questo software è disponibile anche tra i DarwinPorts, e quindi dovrebbe essere possibile installarlo anche su mac.

Per prima cosa dunque procuriamoci il programma. O ce lo scarichiamo dal sito sotto forma di sorgente da compilare (chebbello!!!) oppure lo installiamo usando il sistema di pacchettizzazione di Ubuntu. Se non ricordo male è qualcosa del tipo:

sudo apt-get install bittornado

Una volta installato, ci procuriamo il torrent da scaricare e iniziamo immediatamente il download; abbiamo 2 opportunità:

  • il comando btdownloadheadless, che avvia il download liberando poi la console; tale metodo a mio avviso è scomodo, in quanto i continui messaggi d’avviso dello stato del download rendono comunque inutilizzabile la console stessa. E’ vero, è possibile tarare la frequenza di tali messaggi con delle opzioni al comando (vedi il man del comando per ulteriori dettagli), ma il metodo successivo è secondo me più bello e comodo.
  • il comando btdownloadcurses, che avvia il download fornendo una sorta di interfaccia grafica realizzata con ncurses, attraverso la quale è possibile esaminare lo stato del download.

Volendo utilizzare quindi il secondo metodo, il comando è il seguente:

btdownloadcurses nomefile.torrent

La console utilizzata (o il monitor, se lavoriamo in locale) verrà coperta dall’interfaccia del programma:

btdownloadcurses console

A questo punto non ci resta che aspettare che il download termini.. E anche allora, come ho spiegato in precedenza, tenere comunque aperta l’applicazione il più a lungo possibile, per favorire la diffusione del torrent. Ma i più acuti di voi si saranno già accorti di un problema: se mi sono preso la briga di scaricare usando un server per tenere il mio computer libero, che senso ha poi dover tenere l’applicazione aperta sul mio suddetto computer pena l’annullamento dell’operazione? In effetti, chiudendo la console (o disconnettendosi in qualunque altro modo dal server) il download viene interrotto! Che fare?

Per fortuna linux offre una soluzione a questo problema: è sufficiente eseguire l’applicazione dentro uno screen; uno screen è un’istanza indipendente di console, che può essere a piacimento “detached” (ovvero “sganciata, liberata”) e poi recuperata, e per tutto il tempo questa continua a far girare il programma attivo in essa.

Quindi innanzitutto dovrò avviare il download dentro uno screen:

screen btdownloadcurses nomefile.torrent

A prima vista l’effetto sarà uguale al caso precedente. Ora, però, premendo la combinazione di tasti “Ctrl+a” seguita dal tasto “d” potrò sganciare lo screen, che continuerà a girare in backgroud indipendentemente da quello che farò con la console.

screen detached

In ogni momento successivo (anche dopo aver chiuso la console ed essermi riconnesso) potrò recuperare la finestra semplicemente scrivendo:

screen -r

Et voilà! Il mio download funziona ancora! Se per caso ho attivato più screen (cosa possibile, se voglio attivare più download in contemporanea) mi verrà presentato un elenco degli screen attivi con relativi PID, e io potrò recuperarne uno con il comando:

screen -r numeroPID

Ultima cosa: per chi non lo sapesse, per chiudere il programma attivo nella console basta la combinazione di tasti Ctrl+C.

Ultimissima nota: scaricare con bittorrent (qualunque client e qualunque sistema) come già detto in precedenza prevede anche l’accettazione del compito di condividere quello che si sta scaricando, durate e se possibile anche dopo il termine del download. La velocità alla quale si condivide quanto si ha scaricato può raggiungere quote sufficientemente elevate, tali da piantare la rete di casa (specie con più istanze di BitTornado attive in contemporanea). Per aggirare questo problema è possibile con un’opzione da riga di comando limitare questa banda. Ad esempio, per scaricare limitando la banda in UP a 5 KB/s, è sufficiente modificare come segue il comando:

screen btdownloadcurses – -max_upload_rate 5 nomefile.torrent

Esistono moltissime altre opzioni da riga di comando che permettono di customizzare il funzionamento del programma, ma per quelle potete benissimo studiare sul manuale, disponibile con il comando:

man btdownloadcurses

Con questo ho concluso. Spero di essermi spiegato bene, e spero che questa piccola guida possa essere utile a qualcuno. Se avete problemi come sempre scrivetemi e vedrò cosa posso fare.. ciao a tutti!

Questa voce è stata pubblicata in Uncategorized e contrassegnata con , , , . Contrassegna il permalink.

3 risposte a Bittorrent da riga di comando – Mac e Linux

  1. Pedro ha detto:

    Ci voleva una guida così ben fatta! Grande Mario!

  2. pedez ha detto:

    io personalmente ti consiglio rtorrent rtorrent

    ciao😀

  3. RooldCoro ha detto:

    Hello!
    Nice site😉
    Bye

Lascia un commento

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...