Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

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

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ąć)

delugedpkill 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.shnano 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 sumv init-deluge.sh /etc/init.dcd /etc/init.dmv init-deluge.sh delugechmod 755 delugeupdate-rc.d deluge defaultsservice 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 stoppkill delugedsudo 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/pobranesudo mkdir /media/Samsung/Deluge/pobieranesudo mkdir /media/Samsung/Deluge/obserwowanesudo 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 tutajfilmik na youtubie (wymagana znajomość języka angielskiego 

linux programowanie serwery

Komentarze

0 nowych
Nikt nie napisał jeszcze komentarza, możesz być pierwszy!