So verwandeln Sie Ihren Raspberry Pi in einen Megalith, der ständig heruntergeladen wird

So verwandeln Sie Ihren Raspberry Pi in einen Megalith, der ständig heruntergeladen wird

Tragen Sie Ihren Teil zum globalen 'Linux-Verteilungsnetzwerk' bei, indem Sie einen dedizierten, sicheren Megalith zum Herunterladen von Torrents aufbauen, der kaum 10 W Leistung verbraucht. Es ist möglich und wird natürlich auf einem Raspberry Pi basieren.





Herunterladen und Seeding (Sie säen, oder? Gute Leute säen mindestens auf ein Verhältnis von 2,0) ist eine mühsame Aufgabe für jeden normalen Computer und bedeutet, dass Sie viel mehr Strom verbrauchen, als Sie sollten, wenn Sie ihn über Nacht eingeschaltet lassen müssen. Was wäre, wenn Sie diese Aufgabe auf einen stromsparenden Raspberry Pi übertragen könnten, der klein genug ist, um unter eine Bodenplatte zu stecken und kaum 10 W Leistung zu brechen, um alles zu tun. Genau das zeige ich dir heute.





Hier ist der Plan:





  • Richten Sie einen Raspberry Pi mit etwas USB-Speicher ein und verschieben Sie das Systemlaufwerk auf USB, um die Lebensdauer unserer SD-Karte zu verlängern.
  • Teilen Sie das über das Netzwerk.
  • Konfigurieren Sie ein VPN so, dass der gesamte Datenverkehr sicher über das VPN geleitet wird – und alles stoppt, wenn diese Verbindung fehlschlägt. Wir wollen nicht, dass der ISP weiß, welche Linux-Distribution wir bevorzugen.
  • Installieren Sie einen remote-verwaltbaren Torrent-Client, Transmission.

Klingt kompliziert, nicht wahr? Nicht mehr als ein paar hundert Terminalbefehle, das versichere ich Ihnen. Vieles davon überschneidet sich mit unserem Raspberry Pi NAS Tutorial, wenn Sie sich also nicht so für die Torrenting- und VPN-Seite der Dinge interessieren, sollten Sie sich stattdessen das ansehen.

USB Speicher

Beginnen Sie mit einer frischen Raspian-Installation und schließen Sie die Ethernet-Schnittstelle an, und schließen Sie Ihren USB-Speicher an (über einen USB-Hub mit eigener Stromversorgung, oder es ist wahrscheinlich, dass Sie später wie ich auf Fehler stoßen) - er muss noch nicht formatiert werden. Melden Sie sich remote mit der Standardkombination aus pi /raspberry-Benutzername und -Passwort an und führen Sie dann Folgendes aus:



sudo raspi-config

Ändern Sie die Speicherkapazität für die Grafik auf 16 Megabyte - wir werden dies vollständig ohne Kopf ausführen, sodass Sie keinen Grafikspeicher benötigen. Beenden Sie und lassen Sie uns einige Partitionen auf dem USB einrichten. Wir werden mindestens zwei einrichten - einen für das System, um die Lebensdauer unserer SD-Karte zu verlängern, und den anderen zum Speichern von Downloads. Finden Sie zuerst heraus, welches Laufwerk Ihr USB-Stick ist.

tail /var/log/messages

In meinem Fall war es leicht als 'sda' zu identifizieren. Passen Sie in diesem Sinne den folgenden Befehl an, um die einzugeben fdisk Dienstprogramm auf dem entsprechenden Gerät.





sudo fdisk /dev/sda

Drücken Sie P aktuelle Partitionen auflisten. Um vorhandene zu löschen, drücken Sie D . Erstellen Sie eine neue primäre Partition mit n , dann P . Wenn Sie nach der Größe gefragt werden, geben Sie ein + 8G . Machen Sie nun weiter und erstellen Sie eine weitere Partition für Ihre Torrent-Daten (wieder primär) oder auch weitere Partitionen, wenn Sie möchten. IN schreibt die neue Partitionszuordnung auf das Laufwerk, wenn Sie fertig sind.

Warum lädt mein Laptop-Akku nicht?

Nachdem die neue Tabelle geschrieben wurde, verwenden Sie die folgenden Befehle, um die Laufwerke wie folgt zu formatieren: Linux ext4 . Verwenden Sie zusätzliche Befehle, wenn Sie Ihr Laufwerk mit mehr als zwei Partitionen partitioniert haben.





sudo mkfs.ext4 /dev/sda1
sudo mkfs.ext4 /dev/sda2
sudo mkdir /mnt/systemdrive
sudo mkdir /mnt/torrents
sudo mount /dev/sda1 /mnt/systemdrive
sudo mount /dev/sda2 /mnt/torrents
df -h

Der letzte Befehl bestätigt, dass Sie die Partitionen richtig gemountet haben. Als nächstes möchten wir die Daten der SD-Karte auf das Laufwerk kopieren - dies verlängert die Lebensdauer, indem ständige Lese-/Schreibvorgänge in Caches usw. vermieden werden rsync um dies zu tun:

sudo apt-get install rsync
sudo rsync -axv / /mnt/systemdrive

Dies wird eine lange Reihe von Dateikopien initiieren, also drehen Sie ein wenig mit den Fingern.

sudo cp /boot/cmdline.txt /boot/cmdline.orig
sudo nano /boot/cmdline.txt

Passen Sie dies an, um Folgendes zu lesen:

dwc_otg.lpm_enable=0 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/sda1 rootfstype=ext4 elevator=deadline rootwait rootdelay=5

Als nächstes modifizieren fstab um sie beim Start zu montieren.

sudo nano /etc/fstab

Fügen Sie die folgenden Zeilen hinzu:

/dev/sda1 / ext4 defaults,noatime 0 1
/dev/sda2 /mnt/torrents ext4 defaults 0 2

Kommentieren Sie die folgende Zeile aus, die sich auf die SD-Karte bezieht:

#/dev/mmcblk0p2 / ext4 defaults,noatime 0 1

Starten Sie den Pi neu mit

sudo reboot

Sortiert! Ihr Pi wird nun sowohl eine Root-Datenpartition als auch Ihre Torrents-Partition mounten

Share The Drive: Samba

Stellen Sie sicher, dass wir zuerst aktualisiert sind, entfernen Sie Wolfram Mathematica-Pakete, die mir immer Probleme bereitet haben, wenn ich absolut alles auf dem Pi mache (etwas mit Mathe-Kernel), dann installieren Sie die erforderlichen Pakete

sudo apt-get update
sudo apt-get dist-upgrade
sudo apt-get remove wolfram-engine
sudo apt-get install samba samba-common-bin
sudo nano /etc/samba/smb.conf

Schlag STRG-W und geben Sie 'security' ein, um die folgende Zeile zu finden, und ein kommentiere es.

security = user

Fügen Sie Folgendes hinzu, um unseren freigegebenen Ordner für Torrents zu definieren:

[torrents]
comment = torrents
path = /mnt/torrents
valid users = @users
force group = users
create mask = 0775
force create mode = 0775
security mask = 0775
force security mode = 0775
directory mask = 2775
force directory mode = 2775
directory security mask = 2775
force directory security mode = 2775
browseable = yes
writeable = yes
guest ok = no
read only = no

Starten Sie den Samba-Dienst neu:

sudo service samba restart

Als nächstes müssen wir dem System einen Benutzer hinzufügen. Ersetzen Sie 'jamie' durch Ihren gewünschten Benutzernamen, mit dem Sie sich anmelden, um auf den freigegebenen Ordner zuzugreifen. Die folgenden Befehle fordern Sie dann auf, Ihre Passwörter zu erstellen, das erste auf Systemebene und das nächste für Samba. Ändern Sie die letzten Befehle, wenn Sie Ihr Datenlaufwerk anders genannt haben (und hier ist eine Einführung in Dateieigentum unter Linux ).

sudo useradd jamie -m -G users
sudo passwd jamie
sudo smbpasswd -a jamie
sudo chown pi:users /mnt/torrents
chmod g+w /mnt/torrents

Test - Sie sollten in der Lage sein, eine Verbindung von einem anderen Computer in Ihrem Netzwerk herzustellen und Dateien auf der neuen Freigabe zu lesen/schreiben. Überprüfen Sie, ob sie auch auf dem Pi erscheinen mit ls aus dem / mnt / torrents Mappe.

VPN-Einrichtung

Installieren Sie die erforderlichen Pakete

sudo apt-get install openvpn resolvconf

Laden Sie die OpenVPN-Konfigurationsdateien von Ihrem Provider herunter. Sie können eine Liste der beste VPNs hier, aber stellen Sie sicher, dass Sie einen Torrent-freundlichen finden. ich benutze datenschutz.io ich selbst, aber Privater Internetzugang ist eine weitere beliebte Option in Torrent-Communitys. In jedem Fall sollten Sie in der Lage sein, eine ZIP-Datei mit Konfigurationen und ein Zertifikat zu erhalten. Legen Sie diese in Ihren Torrents-Ordner in einem Verzeichnis namens openvpn . Ändern Sie den folgenden Befehl so, dass er auf Ihre Konfigurationsdatei verweist, die sich mit ziemlicher Sicherheit von unterscheidet DatenschutzIO.ovpn

sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --script-security 2

Wenn Sie eine solche Ausgabe erhalten, sind Sie gut. Schlag STRG-C es zu beenden. Es ist jedoch ärgerlich, das Passwort eingeben zu müssen, und wir benötigen ein paar Änderungen, um Start- und Stoppskripte hinzuzufügen. Bearbeiten Sie die Konfigurationsdatei (ersetzen Sie erneut privacyIO.ovpn durch die .ovpn-Datei, die Ihnen Ihr Provider gegeben hat)

nano /mnt/torrents/openvpn/privacyIO.ovpn

Ändern Sie zuerst die folgende Zeile. Grundsätzlich sagen wir, dass wir den Benutzernamen und das Passwort in einer Datei namens . speichern pass.txt

auth-user-pass /mnt/torrents/openvpn/pass.txt

Speichern Sie und geben Sie Folgendes ein:

nano /mnt/torrents/pass.txt

Geben Sie in der ersten Zeile Ihren Benutzernamen und in der nächsten das Passwort ein. Speichern Sie und versuchen Sie erneut, eine Verbindung herzustellen:

sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --script-security 2

Sie sollten nicht verwanzt werden, sich diesmal anzumelden. Yay! Öffnen Sie als Nächstes die Konfigurationsdatei erneut und fügen Sie die folgenden Zeilen hinzu:

route-up /mnt/torrents/openvpn/route-up.sh
down-pre
down /mnt/torrents/openvpn/down.sh

Dies gibt einige Skripte an, die wir später erstellen werden, um Aufgaben auszuführen, wenn die Verbindung entweder erfolgreich hergestellt wird oder unterbrochen wird. Stellen Sie sicher, dass Sie im . sind mnt/torrents/openvpn Verzeichnis und führen Sie dann Folgendes aus:

nano route-up.sh

Fügen Sie Folgendes hinzu, um sicherzustellen, dass der Datenverkehr über das VPN gesendet wird:

#!/bin/sh
iptables -t nat -I POSTROUTING -o tun0 -j MASQUERADE

Als nächstes erstellen Sie das down.sh-Skript

nano down.sh

Hinzufügen:

#!/bin/sh
iptables -t nat -D POSTROUTING -o tun0 -j MASQUERADE

Schließlich möchten wir, dass ein Skript die Verbindung öffnet, anstatt sie wie zuvor von der Befehlszeile aus zu starten.

nano vpn.sh

Fügen Sie den VPN-Startbefehl von zuvor ein. Falls Sie es vergessen haben:

sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt --script-security 2

Machen Sie nun alle diese Skripte ausführbar und starten Sie das VPN-Skript beim Start.

chmod +x down.sh
chmod +x route-up.sh
chmod +x vpn.sh
sudo nano /etc/rc.local

Fügen Sie die folgende Zeile vor dem . hinzu Ausgang 0 Leitung. Wir sagen ihm nur, dass es dieses Skript beim Start starten soll.

/mnt/torrents/openvpn/vpn.sh

Zum Schluss starten Sie Ihr System erneut neu.

Melden Sie sich erneut an und führen Sie aus ifconfig . Sie wissen, dass es funktioniert, wenn Sie einen Eintrag für . sehen tippen0 (oder tun0) , und sind in der Lage, eine Webseite erfolgreich zu kräuseln:

curl https://www.makeuseof.com

Der Torrent-Client

Jetzt fast da. Schließlich werden wir Transmission installieren, das leicht ist und eine schöne Web-GUI hat. Die folgenden Befehle installieren, stoppen dann den Daemon - da wir ihn zuerst konfigurieren müssen - und öffnet dann die Einstellungsdatei zum Bearbeiten.

sudo apt-get install transmission-daemon
sudo /etc/init.d/transmission-daemon stop
sudo nano /etc/transmission-daemon/settings.json

Ändern Sie 'rpc-authentication-required' in false; ändern Sie 'rpc-whitelist', um Ihr lokales Subnetz einzuschließen - zum Beispiel:

'rpc-whitelist': '127.0.0.1,10.0.1.*',

Folgendes hinzufügen oder anpassen, falls bereits vorhanden:

'download-dir': '/mnt/torrents',
'watch-dir': '/mnt/torrents/',
'watch-dir-enabled': true,
'umask': 2,

Bearbeiten Sie als Nächstes die Daemon-Startdatei selbst, um einige Berechtigungsprobleme zu beheben.

sudo nano /etc/init.d/transmission-daemon

Ändere das USER=Übertragungs-Daemon zu BENUTZER=root . Laden Sie den Daemon neu.

sudo service transmission-daemon reload

Zum Schluss installieren wir Avahi-Daemon um das Bonjour/Zeroconf-Netzwerk einzurichten, was bedeutet, dass wir nicht die IP-Adresse des Pi verwenden müssen, um von einem Browser darauf zuzugreifen - stattdessen können wir die verwenden raspberrypi.local die Anschrift.

sudo apt-get install avahi-daemon

Angenommen, Ihr Hostname ist der Standard (raspberrypi, kann aber mit raspi-config geändert werden) , navigieren Sie zu:

http://raspberrypi.local:9091/transmission/web/

Überprüfen Sie zunächst, ob Ihre Torrent-IP durch das VPN korrekt getarnt ist. Laden Sie die Test-Torrent-Datei herunter von TorGuard - die Download-Grafik sieht aus wie eine Werbung, ist es aber nicht - und legen Sie sie im freigegebenen Ordner Torrents ab.

Wir haben Transmission bereits so konfiguriert, dass dieser Ordner auf neue Torrents überwacht wird, daher sollte er sofort hinzugefügt werden. Legen Sie dort auch einige legale Linux-Distributions-Torrents ab.

Der Torrent zur IP-Überprüfung sollte einen Fehler zusammen mit der erkannten IP-Adresse zurückgeben. Stellen Sie sicher, dass dies nicht Ihre Heim-IP ist - wenn dies der Fall ist, wurde das VPN nicht richtig eingerichtet. Standardmäßig werden alle Torrents, die Sie im Ordner ablegen, in .added umbenannt und eine .part-Datei sollte erstellt werden, bis die Übertragung abgeschlossen ist. Überprüfen Sie, ob dies in Ihrem freigegebenen Ordner der Fall ist.

Das ist es! Sie haben jetzt einen sehr stromsparenden, sicheren Pi, der Torrents herunterlädt und Ihre Workstation für bessere Dinge verfügbar macht. Vielleicht möchten Sie jetzt einen UPnP-Server zum Streamen von Medien im Netzwerk hinzufügen oder BitTorrent Sync verwenden, um Ihren eigenen Cloud-Speicher zu erstellen. Welche Funktionen werden Sie hinzufügen?

Teilen Teilen Tweet Email Die 8 besten Websites zum kostenlosen Herunterladen von Hörbüchern

Hörbücher sind eine großartige Quelle der Unterhaltung und viel leichter zu verdauen. Hier sind die acht besten Websites, auf denen Sie sie kostenlos herunterladen können.

Weiter lesen
Verwandte Themen
  • Heimwerken
  • BitTorrent
  • Himbeer-Pi
Über den Autor James Bruce(707 veröffentlichte Artikel)

James hat einen BSc in Künstlicher Intelligenz und ist CompTIA A+ und Network+ zertifiziert. Wenn er nicht als Hardware-Review-Editor beschäftigt ist, genießt er LEGO, VR und Brettspiele. Bevor er zu MakeUseOf kam, war er Lichttechniker, Englischlehrer und Rechenzentrumsingenieur.

Mehr von James Bruce

Abonniere unseren Newsletter

Abonnieren Sie unseren Newsletter für technische Tipps, Rezensionen, kostenlose E-Books und exklusive Angebote!

Klicken Sie hier, um zu abonnieren