Blog (4)
Komentarze (1.9k)
Recenzje (0)

Raspberry Pi – torrentowy serwer – część 2, czyli treść właściwa

@edmunRaspberry Pi – torrentowy serwer – część 2, czyli treść właściwa01.04.2016 11:53

Witam ponownie - część druga - bardziej treściwa niż poprzednia.

Dyski USB podłączone do Raspberry Pi działają? Mają się dobrze? Prędkości po sieci pewnie tragiczne, ale cóż poradzić. Na to pomysłu wciąż nie mam, chyba że inwestujemy w jakiś dobre pudełko NAS, ale coś czuję że przy moich obecnych i przyszłych wydatkach to zupełnie nie przejdzie.

No chyba, że wygram na loterii :)

Wracając do Raspberry Pi jako serwera dla torrentów. Jeśli już mamy gdzie przechowywać te nasze wszystkie linuxy, to może zainstalujemy w końcu i serwer?

Lista wymagań

Będziemy potrzebować Raspberry Pi z zainstalowanym system Raspbian (w moim przypadku dystrybucja wheezy), statyczny adres IP w sieci LAN i jeśli chcemy mieć dostęp z zewnątrz (np. z pracy, ze szkoły, z internetu mobilnego) to warto byłoby mieć stały zewnętrzny adres IP lub chociaż dynamiczną nazwę domeny. Większość (jak nie wszystko) wykonywaliśmy już w poprzedniej części poradnika Raspberry Pi jako serwer VPN już działa? (link tutaj). oraz w poprzedniej części Raspberry Pi jako serwer torrentów (część 1)

Instalacja deluge

Instalujemy daemona Deluge wraz z interfejsem webowym:

W konsoli:

sudo apt-get install deluged deluge-webui

Następnie uruchamiamy program deluged oraz zamykamy go, aby móc edytować plik konfiguracyjny (uruchomienie programu tworzy plik konfiguracyjny, ale edytowanie go w trakcie pracy programu mija się z celem, stąd musimy program zamknąć)

deluged
pkill deluged

Następnie musimy dodać "użytkownika" do konfiguracji serwera deluge:

sudo nano ~/.config/deluge/auth

W otwartym pliku wpisujemy nazwę użytkownika: hasło oraz poziom użytkownika.

Na początek polecam skorzystać z praw admina (poziom 10). Poszczególne poziomy (np. tylko dla ograniczonych użytkowników) możemy ustawić później.

Przykładowy wpis:

Uwaga: Należy się upewnić, że nie przeskoczyliśmy do "następnej" linii po wpisaniu tych danych. Deluge ma trochę bugów i jednym z nich jest błąd odczytywania pustej linii z tego pliku. Podobno poprawili to w którejś wersji ale nie jestem 100% pewny.

Przydałoby się też dorzucić skrypt autostartu:

wget http://quidsup.net/sh/init-deluge.sh
nano init-deluge.sh

W otwartym pliku należy zmienić nazwę użytkownika w 16-tej linii:

Wychodzimy z edytora za pomocą CTRL+X i potwierdzamy zapis pliku.

Kopia/treść pliku init-deluge.sh (na wypadek gdyby link powyżej był nieaktywny):


#! /bin/sh
### BEGIN INIT INFO
# Provides:          deluged
# Required-Start:    $network $remote_fs $syslog
# Required-Stop:     $network $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Start deluged at boot time
# Description:       Start DelugeD and Deluge-Web.
### END INIT INFO

#Author              QuidsUp
#Last Modified	     26 Jan 2013

#Required -- To be changed!
USER=username        #Set Username here.
PORT=8112            #Set port number for web interface (default 8112)
PIDFileDeluge=/var/run/deluged.pid
PIDFileWeb=/var/run/deluge-web.pid

case "$1" in
  start)
    echo "Starting Deluge"
    start-stop-daemon --start --chuid $USER --name deluged --pidfile $PIDFileDeluge \
     --background --make-pidfile --exec /usr/bin/deluged -- --do-not-daemonize 
    start-stop-daemon --start --chuid $USER --name deluge-web --pidfile $PIDFileWeb \
     --background --make-pidfile --exec /usr/bin/deluge-web -- --port $PORT
  ;;

  stop)
    echo "Stopping Deluge"
    start-stop-daemon --stop --chuid $USER --name deluged --pidfile $PIDFileDeluge
    start-stop-daemon --stop --chuid $USER --name deluge-web --pidfile $PIDFileWeb
  ;;

  restart|force-reload)
    echo "Stopping Deluge for Restart"
    start-stop-daemon --stop --chuid $USER --name deluged --pidfile $PIDFileDeluge
    start-stop-daemon --stop --chuid $USER --name deluge-web --pidfile $PIDFileWeb
    sleep 5s
    echo "Restarting Deluge"
    start-stop-daemon --start --chuid $USER --name deluged --pidfile $PIDFileDeluge \
      --background --make-pidfile --exec /usr/bin/deluged -- --do-not-daemonize 
    start-stop-daemon --start --chuid $USER --name deluge-web --pidfile $PIDFileWeb \
      --background --make-pidfile --exec /usr/bin/deluge-web -- --port $PORT
  ;;
  status)
    echo "Checking Status of Deluge"
    if (test -f $PIDFileDeluge); then
      PIDVal=$(head -1 $PIDFileDeluge)
      if [ -e /proc/$PIDVal ]; then
        echo -n "DelugeD Running on Process ID: "
        echo $PIDVal
        echo
        ps -H $PIDVal
      else
        echo "DelugeD Not Running but PID File Exists"
        exit 1
      fi
    else
      echo "No PID File found for DelugeD"      
    fi
  ;;
  *)
     echo "Usage: deluge {start|stop|restart|force-reload|status}" >&2
     exit 1
  ;;
esac

exit 0

------------------------------------------------------------

Następnie jedna komenda po drugiej, każda zatwierdzana enterem:

sudo su
mv init-deluge.sh /etc/init.d
cd /etc/init.d
mv init-deluge.sh deluge
chmod 755 deluge
update-rc.d deluge defaults
service deluge start

Podstawowy serwer powinien teraz już działać.

Możemy sprawdzić poprzez komendę:

sudo service --status-all

lub otworzyć deluge z linii poleceń za pomocą komendy:

deluge-console

Na liście usług powinniśmy odnaleźć deluge z symbolem plusika jeśli sprawdzaliśmy usługi za pomocą service status-all

Polecam dodać możliwość zdalnego zalogowania się poprzez zmianę konfiguracji: W przeglądarce wpisujemy adres IP Raspberry na porcie 8112

Domyślne hasło to deluge Po zalogowaniu się otwieramy ustawienia:

aby w zakładce "Inne" zaznaczyć "Allow remote connections".

W ten sposób będziemy mogli dodawać źródła czy łączyć się z serwerem z zewnętrznych źródeł. Jak już tu jesteśmy to polecam zmienić hasło do interfejsu webowego poprzez zakładkę "Interface"

Restartujemy serwer deluge z okna terminalu:

sudo service deluge restart

Instalujemy klienta w systemie Windows

Ze strony http://deluge-torrent.org/ pobieramy klienta dla systemów Windows.

Po instalacji uruchamiamy program i od razu otwieramy ustawienia (Edit > Preferences > Interface), odznaczamy "Classic Mode".

Zamykamy i uruchamiamy program ponownie. W oknie wpisujemy adres naszego raspberry pi oraz nazwę i hasło użytkownika.

Jeśli wszystko działa super poprawnie, polecam na chwilę wyłączyć deluge na raspberry pi i dodatkowo edytować jeden plik, aby interfejs webowy automatycznie łączył się do serwera deluge w przypadku jeśli restartujemy raspberry pi.

sudo service deluge stop
pkill deluged
sudo nano ~/.config/deluge/web.conf

W linii default hostname należy wpisać po prostu IP localhosta (127.0.0.1) aby webowy interfejs domyślnie podłączał się pod serwer deluge pracujący na tej samej maszynie.

Zapisujemy CTRL+X i odpalamy ponownie serwer:

sudo service deluge start

No teoretycznie serwer już działa ale pozostaje jeden malutki problem. Domyślne ustawienia serwera deluge wskazują miejsce zapisu plików na kartę SD naszego Raspberry. Ja raczej polecam zapisywać to co ściągamy na podłączonym dysku twardym (po to przecież podłączaliśmy te wszystkie dyski co nie?).

Deluge domyślnie używa tylko trzech katalogów jednakże pełna opcja to 4 foldery/katalogi na:

pliki pobierane pliki pobrane katalog obserwujący pliki backup

Jeśli mamy nasz dysk dostępny w /media/Samsung to za pomocą komendy mkdir tworzymy wystarczającą ilość podkatalogów które ustawimy w konfiguracji deluge

sudo mkdir /media/Samsung/Deluge/pobrane
sudo mkdir /media/Samsung/Deluge/pobierane
sudo mkdir /media/Samsung/Deluge/obserwowane
sudo mkdir /media/Samsung/Deluge/kopia

Następnie otwieramy klienta i w ustawieniach (Edit>Preferences>Downloads) wpisujemy po kolei te same foldery jakie przed chwilą stworzyliśmy.

Na koniec pozostaje nam jeszcze zainstalować klienta na Androidzie

Ze sklepu Play Store pobieramy Transdrone

Po uruchomieniu wchodzimy w kreatora dodawania serwera.

Wybieramy nowy serwer (Add server):

Następnie, zwykły własny serwer (pierwsza opcja, custom server)

Wybieramy typ serwera: Deluge 1.2+

Po czym wypełniamy następujące pola. Nazwa serwera: Wedle własnego uznania Adres IP: Wpisujemy adres IP Raspberry Pi Nazwa użytkownika i hasło (to samo co podawaliśmy w pliku "auth.conf") Hasło deluge web: czyli takie jak ustawiliśmy przy konfiguracji interfejsu webowego

Jeśli wszystko zrobiliśmy poprawnie to na telefonie możemy odwiedzić np. Ubuntu - Pobieranie Alternatywne i wybrać plik torrentowy

W Transdrone pojawi się stan pobierania.

I tak prawdę mówiąc to wszystko. Oczywiście polecam przekierować sobie na routerze porty 58846 oraz 8112 abyśmy mogli też korzystać z serwera będąc z dala od domu.

Coś jeszcze? Tak - jeśli mamy plik o rozszerzeniu .torrent - to można taki plik umieścić w katalogu /media/Samsung/obserwowane a Deluge automatycznie doda plik do pobierania

Gdybyśmy chcieli pobawić się w dodatkowe funkcje lub sprawdzić jak rzeczy wyglądają z poziomu konsoli, to w terminalu wpisujemu deluge-console

W razie pytań lub gdyby ktoś miał problemy to zapraszam to kontaktu.

Oryginalna instrukcja jak to zrobić oraz źródła, bez których nigdy bym nic nie zrobił: Dostępna tutaj filmik na youtubie (wymagana znajomość języka angielskiego

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.