Πώς να μετατρέψετε το βατόμουρο Pi σας σε μια πάντα-On Downloading Megalith

Κάντε το κομμάτι σας για το παγκόσμιο δίκτυο διανομής Linux κατασκευάζοντας ένα ειδικό, ασφαλές, μαγικό downloading megalith που χρησιμοποιεί μόλις 10W ισχύος. Φυσικά, θα βασίζεται σε ένα Raspberry Pi.

Κάντε το κομμάτι σας για το παγκόσμιο δίκτυο διανομής Linux κατασκευάζοντας ένα ειδικό, ασφαλές, μαγικό downloading megalith που χρησιμοποιεί μόλις 10W ισχύος.  Φυσικά, θα βασίζεται σε ένα Raspberry Pi.
Διαφήμιση

Κάντε το κομμάτι σας για το παγκόσμιο δίκτυο διανομής του Linux, δημιουργώντας ένα ειδικό, ασφαλές, μαγικό downloading megalith που χρησιμοποιεί μόλις 10W ενέργειας. Είναι δυνατόν, και φυσικά, θα βασίζεται σε ένα Raspberry Pi.

Λήψη και σπορά (κάνετε σπόρους, σωστά; καλός σπόρος προς τουλάχιστον 2, 0 λόγο) είναι ένα δύσκολο έργο για κάθε κανονικό υπολογιστή, και σημαίνει ότι απορροφάτε πολύ περισσότερη ηλεκτρική ενέργεια από ό, τι θα έπρεπε να είναι, πρέπει να το αφήσετε διανυκτέρευση. Τι γίνεται αν θα μπορούσατε να αποφορτώσετε το έργο αυτό σε ένα χαμηλής ισχύος Raspberry Pi, αρκετά μικρό για να γεμίσει κάτω από μια σανίδα δαπέδου και μόλις σπάσει 10W δύναμη για να κάνει όλα. Αυτό ακριβώς θα σας δείξω πώς να το κάνετε σήμερα.

Εδώ είναι το σχέδιο:

  • Ρυθμίστε ένα Raspberry Pi με κάποια θύρα USB και μετακινήστε τη μονάδα συστήματος σε USB για να παρατείνετε τη διάρκεια ζωής της κάρτας SD.
  • Μοιραστείτε αυτό μέσω του δικτύου.
  • Διαμορφώστε ένα VPN έτσι ώστε όλη η κυκλοφορία να δρομολογείται μέσω του VPN, με ασφάλεια - και όλα σταματούν εάν η σύνδεση αυτή αποτύχει. Δεν θέλουμε ο ISP να γνωρίζει ποια Linux διανομή προτιμούμε.
  • Εγκαταστήστε ένα remote-managed torrent client, μετάδοση.

Ακούγεται περίπλοκο, έτσι δεν είναι; Δεν υπάρχουν περισσότερες από μερικές εκατοντάδες εντολές τερματικού, σας διαβεβαιώνω. Πολλά από αυτά επικαλύπτονται με το Raspberry Pi NAS Γυρίστε το Raspberry Pi σε ένα κουτί NAS Γυρίστε το Raspberry Pi σε ένα κουτί NAS Έχετε δύο εξωτερικούς σκληρούς δίσκους που βρίσκονται γύρω και ένα Raspberry Pi; Κάντε μια φτηνή, χαμηλής ισχύος δικτυακή συσκευή αποθήκευσης που προσαρτάται σε αυτά. Ενώ το τελικό αποτέλεσμα σίγουρα δεν θα είναι όπως ... Read More tutorial, οπότε αν δεν ενδιαφέρεστε τόσο πολύ για το torrenting και VPN πλευρά των πραγμάτων, ίσως θελήσετε να το ελέγξετε.

Αποθήκευση USB

Ξεκινήστε με μια νέα εγκατάσταση Raspian και συνδέστε τη διασύνδεση Ethernet και συνδέστε το αποθηκευτικό χώρο USB (μέσω ενός τροφοδοτούμενου διανομέα USB ή πιθανότατα θα αντιμετωπίσετε σφάλματα αργότερα όπως έκανα) - δεν χρειάζεται να μορφοποιηθεί ακόμα. Συνδεθείτε απομακρυσμένα με τον προεπιλεγμένο συνδυασμό ονόματος χρήστη και κωδικού πρόσβασης pi / raspberry, στη συνέχεια εκτελέστε:

sudo raspi-config 

Αλλαγή της ποσότητας μνήμης που δίνεται στα γραφικά στα 16 megabytes - θα τρέξουμε αυτό εντελώς ακέφαλο, έτσι δεν χρειάζεστε γραφική μνήμη. Έξοδος και ας ρυθμίσουμε κάποια διαμερίσματα στο USB. Θα εγκαταστήσουμε τουλάχιστον δύο - ένα για να το χρησιμοποιήσουμε για το σύστημα έτσι ώστε να διαφυλάξουμε τη ζωή της κάρτας SD μας, και το άλλο για την αποθήκευση των λήψεων. Καταγράψτε πρώτα ποια είναι η μονάδα USB σας.

 tail /var/log/messages 

Στην περίπτωσή μου, ήταν εύκολο να αναγνωριστεί ως "sda". Έχοντας αυτό υπόψη, προσαρμόστε την ακόλουθη εντολή για να μπείτε στο βοηθητικό πρόγραμμα fdisk στην κατάλληλη συσκευή.

 sudo fdisk /dev/sda 

Πατήστε p για να ορίσετε τα τρέχοντα διαμερίσματα. Για να διαγράψετε τυχόν υπάρχοντες, πιέστε d . Δημιουργήστε ένα νέο πρωτεύον διαμέρισμα, με n, στη συνέχεια p . Όταν σας ζητάει μέγεθος, πληκτρολογήστε + 8G . Τώρα προχωρήστε και δημιουργήστε ένα άλλο διαμέρισμα για τα δεδομένα σας torrent (και πάλι, πρωτεύον) ή και περισσότερα διαμερίσματα, αν θέλετε. Το W θα γράψει τον νέο χάρτη διαμερίσματος στη μονάδα δίσκου όταν τελειώσετε.

Μόλις γράψετε τον νέο πίνακα, χρησιμοποιήστε τις ακόλουθες εντολές για να διαμορφώσετε τις μονάδες δίσκου ως linux ext4 . Χρησιμοποιήστε πρόσθετες εντολές εάν έχετε χωρίσει τη μονάδα σας με περισσότερα από δύο διαμερίσματα.

 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 

Η τελευταία εντολή θα επιβεβαιώσει ότι έχετε τοποθετήσει σωστά τα διαμερίσματα. Στη συνέχεια, θέλουμε να αντιγράψουμε τα δεδομένα της κάρτας SD στη μονάδα - αυτό θα επεκτείνει τη ζωή της, αποφεύγοντας τις συνεχείς λειτουργίες ανάγνωσης / εγγραφής στις προσωρινές μνήμες κλπ. Εγκαταστήστε το rsync για να το κάνετε αυτό:

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

Αυτό θα προκαλέσει μια μακρά σειρά αντιγραφής αρχείων, ώστε να αναποδογυρίσετε τα δάχτυλά σας για λίγο.

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

Ρυθμίστε αυτό για να διαβάσετε:

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

Στη συνέχεια, τροποποιήστε το fstab για να τα τοποθετήσετε κατά την εκκίνηση.

 sudo nano /etc/fstab 

Προσθέστε τις ακόλουθες γραμμές:

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

Σχολιάστε την παρακάτω γραμμή που αναφέρεται στην κάρτα SD:

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

Επανεκκινήστε το Pi με

 sudo reboot 

Ταξινόμηση! Το Pi σας τώρα θα τοποθετήσει τόσο ένα διαμέρισμα δεδομένων ρίζας όσο και ένα διαμέρισμα torrents σας

Μοιραστείτε τη μονάδα δίσκου: Samba

Βεβαιωθείτε ότι είμαστε ενημερωμένοι πρώτα, αφαιρέστε τα πακέτα Wolfram Mathematica τα οποία πάντα μου προκαλούσαν προβλήματα όταν κάνατε απολύτως τίποτα στο Pi (κάτι που σχετίζονταν με το math-kernel), εγκαταστήστε τα απαιτούμενα πακέτα

 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 

Πιέστε CTRL-W και πληκτρολογήστε "security" για να βρείτε την ακόλουθη γραμμή και να την σχολιάσετε.

 security = user 

Προσθέστε τα παρακάτω για να ορίσετε τον κοινόχρηστο φάκελο torrents:

 [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 

Επανεκκινήστε την υπηρεσία Samba:

 sudo service samba restart 

Στη συνέχεια πρέπει να προσθέσετε χρήστη στο σύστημα. Αντικαταστήστε το "jamie" με το επιθυμητό όνομα χρήστη με το οποίο θα συνδεθείτε για πρόσβαση στον κοινόχρηστο φάκελο. Οι παρακάτω εντολές σας ζητούν να δημιουργήσετε τους κωδικούς πρόσβασής σας, τον πρώτο σε επίπεδο συστήματος και τον επόμενο για τη Samba. Τροποποιήστε τις τελευταίες εντολές εάν κάνατε κλήση της μονάδας δεδομένων σας κάτι άλλο (και εδώ πρόκειται για ένα πρωτότυπο για την ιδιοκτησία αρχείων στο 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 

Δοκιμή - θα πρέπει να είστε σε θέση να συνδεθείτε από άλλο μηχάνημα στο δίκτυό σας και να διαβάσετε / γράψετε αρχεία στο νέο κοινόχρηστο στοιχείο. Ελέγξτε ότι εμφανίζονται στο Pi επίσης με το ls μέσα στο φάκελο / mnt / torrents .

Εγκατάσταση VPN

Εγκαταστήστε τα απαιτούμενα πακέτα

 sudo apt-get install openvpn resolvconf 

Κατεβάστε τα αρχεία ρυθμίσεων OpenVPN από τον παροχέα σας. Μπορείτε να δείτε μια λίστα με τα καλύτερα δίκτυα VPN εδώ, αλλά βεβαιωθείτε ότι βρίσκετε μια λίστα που είναι φιλική προς το torrent. Χρησιμοποιώ τον εαυτό μου privacy.io, αλλά η Private Internet Access είναι μια άλλη δημοφιλής επιλογή μέσα στις κοινότητες torrent. Είτε έτσι είτε αλλιώς, θα πρέπει να είστε σε θέση να αρπάξετε ένα αρχείο ZIP των διαμορφώσεων και ενός πιστοποιητικού. Βάλτε τους στο φάκελο torrents σας, μέσα σε ένα κατάλογο που ονομάζεται openvpn . Τροποποιήστε την ακόλουθη εντολή, ώστε να δείχνει στο αρχείο ρυθμίσεών σας, το οποίο σχεδόν σίγουρα θα διαφέρει από το privacyIO.ovpn

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

openvpn-connection-output

Εάν έχετε μια τέτοια έξοδο, είστε καλοί. Πιέστε το πλήκτρο CTRL-C για να το τερματίσετε. Είναι ενοχλητικό να χρειάζεται να πληκτρολογήσετε τον κωδικό πρόσβασης αν και, χρειαζόμαστε κάποιες τροποποιήσεις για να προσθέσουμε γραφήματα έναρξης και λήξης. Επεξεργαστείτε το αρχείο ρυθμίσεων (και πάλι, αντικαταστήστε το privacyIO.ovpn με το αρχείο .ovpn που σας έδωσε ο πάροχος)

 nano /mnt/torrents/openvpn/privacyIO.ovpn 

Τροποποιήστε πρώτα την παρακάτω γραμμή. Βασικά λέμε ότι θα αποθηκεύσουμε το όνομα χρήστη και τον κωδικό πρόσβασης σε ένα αρχείο που ονομάζεται pass.txt

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

Αποθηκεύστε και πληκτρολογήστε:

 nano /mnt/torrents/pass.txt 

Εισαγάγετε το όνομα χρήστη σας στην πρώτη γραμμή και τον κωδικό πρόσβασης στην επόμενη γραμμή. Αποθηκεύστε και δοκιμάστε να συνδεθείτε ξανά:

 sudo openvpn --client --config /mnt/torrents/openvpn/privacyIO.ovpn --ca /mnt/torrents/openvpn/privacy.ca.crt /mnt/torrents/openvpn/privacy.ca.crt - ασφάλεια σφαλμάτων 2 

Δεν πρέπει να είστε bugged να συνδεθείτε αυτή τη φορά. Ναι! Στη συνέχεια, ανοίξτε ξανά το αρχείο ρυθμίσεων και προσθέστε τις ακόλουθες γραμμές:

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

Αυτό καθορίζει ορισμένα σενάρια που πρόκειται να δημιουργήσουμε αργότερα για να εκτελέσουμε εργασίες όταν η σύνδεση είτε εμφανίζεται με επιτυχία είτε μειώνεται. Βεβαιωθείτε ότι βρίσκεστε στον κατάλογο mnt / torrents / openvpn και εκτελέστε τα εξής:

 nano route-up.sh 

Προσθέστε τα παρακάτω που διασφαλίζουν ότι η κυκλοφορία στέλνεται μέσω του VPN:

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

Στη συνέχεια, δημιουργήστε το script down.sh

 nano down.sh 

Προσθέτω:

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

Τέλος, θέλουμε μια δέσμη ενεργειών να ανοίξει τη σύνδεση, αντί να την ξεκινήσει από τη γραμμή εντολών όπως ακριβώς κάναμε.

 nano vpn.sh 

Επικολλήστε την εντολή εκκίνησης VPN από πριν. Σε περίπτωση που έχετε ξεχάσει:

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

Τώρα, κάντε όλα αυτά τα scripts εκτελέσιμα και ξεκινήστε το σενάριο VPN κατά την εκκίνηση.

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

Προσθέστε την ακόλουθη γραμμή πριν τη γραμμή εξόδου 0 . Το λέμε μόνο για να ξεκινήσει αυτό το σενάριο κατά την εκκίνηση.

 /mnt/torrents/openvpn/vpn.sh 

Τέλος, επανεκκινήστε ξανά το σύστημά σας.

ifocnfig-check-vpn

Συνδεθείτε ξανά και εκτελέστε ifconfig . Θα γνωρίζετε ότι λειτουργεί όταν βλέπετε μια καταχώρηση για το tap0 (ή το tun0) και είναι σε θέση να επιτυγχάνει την επιτυχή κάθοδο μιας ιστοσελίδας:

 curl //www.makeuseof.com 

Το πρόγραμμα-πελάτη Torrent

Σχεδόν εκεί τώρα. Τέλος, πρόκειται να εγκαταστήσουμε το Transmission, το οποίο είναι ελαφρύ και έχει ωραίο GUI στο web. Οι παρακάτω εντολές εγκαθιστούν και στη συνέχεια σταματούν τον δαίμονα - αφού πρέπει πρώτα να τις ρυθμίσουμε - τότε ανοίγει το αρχείο ρυθμίσεων για επεξεργασία.

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

Αλλάξτε το "rpc-authentication-required" στο false. αλλάξτε το "rpc-whitelist" για να συμπεριλάβετε το τοπικό σας υποδίκτυο - για παράδειγμα:

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

Προσθέστε ή προσαρμόστε τα παρακάτω, εάν υπάρχουν ήδη:

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

Στη συνέχεια, επεξεργαστείτε το ίδιο το αρχείο εκκίνησης του δαίμονα για να αντιμετωπίσετε ορισμένα προβλήματα αδειοδότησης.

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

Αλλάξτε το USER = μετάδοση-δαίμονα στη USER = root . Επαναφόρτωση του δαίμονα.

 sudo service transmission-daemon reload 

Τέλος, θα εγκαταστήσουμε το avahi-daemon για να ρυθμίσετε τη δικτύωση bonjour / zeroconf, πράγμα που σημαίνει ότι δεν θα χρειαστεί να χρησιμοποιήσουμε τη διεύθυνση IP του Pi για να την αποκτήσουμε από ένα πρόγραμμα περιήγησης - αντ 'αυτού θα μπορέσουμε να χρησιμοποιήσουμε το raspberrypi.local διεύθυνση.

 sudo apt-get install avahi-daemon 

Υποθέτοντας ότι το όνομα του υπολογιστή σας είναι το προεπιλεγμένο (raspberrypi, αλλά μπορεί να αλλάξει χρησιμοποιώντας το raspi-config), μεταβείτε στο:

http: //raspberrypi.local: 9091 / μετάδοση / web /

Κατ 'αρχάς, ελέγξτε ότι το IP torrent σας είναι σωστά μεταμφιεσμένο μέσω του VPN. Κάντε λήψη του αρχείου torrent δοκιμής από το TorGuard - το γραφικό λήψης μοιάζει με μια διαφήμιση, αλλά δεν είναι - και αφήστε το στον κοινόχρηστο φάκελο torrents.

check-torrent-ip

Έχουμε ήδη ρυθμίσει τη μετάδοση για να παρακολουθήσετε αυτόν τον φάκελο για νέα torrents, οπότε πρέπει να προστεθεί αμέσως. Προχωρήστε και αποθέστε και κάποια νομικά torrents του Linux.

μετάδοση-torrent-ip-check-αποτελέσματα

Ο torrent έλεγχος IP θα πρέπει να επιστρέψει ένα σφάλμα μαζί με τη διεύθυνση IP που ανίχνευσε. Βεβαιωθείτε ότι δεν είναι η IP σας στο σπίτι - αν είναι, το VPN δεν έχει ρυθμιστεί σωστά. Από προεπιλογή, όλα τα torrents που ρίχνετε στο φάκελο θα μετονομαστούν σε .added και ένα αρχείο .part θα πρέπει να δημιουργηθεί μέχρι να ολοκληρωθεί η μεταφορά. Βεβαιωθείτε ότι αυτό συμβαίνει στον κοινόχρηστο φάκελο.

κοινόχρηστος δίσκος

Αυτό είναι! Τώρα έχετε μια εξαιρετικά χαμηλής ισχύος, ασφαλή, torrent-download Pi - αφήνοντας το σταθμό εργασίας σας διαθέσιμο για καλύτερα πράγματα. Ίσως θελήσετε τώρα να εξετάσετε την προσθήκη ενός διακομιστή UPnP για streaming media γύρω από το δίκτυο ή χρησιμοποιώντας το BitTorrent Sync για να δημιουργήσετε το δικό σας αποθηκευτικό χώρο στο cloud Δημιουργήστε το δικό σας Cloud Storage με Raspberry Pi και BitTorrent Sync Δημιουργήστε το δικό σας Cloud Storage με Raspberry Pi και BitTorrent Συγχρονισμός Μην πιστεύετε στη διαφημιστική εκστρατεία: το σύννεφο απέχει πολύ από την ασφάλεια. Αλλά δεν έχετε κανένα φόβο - τώρα μπορείτε να αναπτύξετε τη δική σας ιδιωτική, απεριόριστη και ασφαλή πλατφόρμα αποθήκευσης cloud. Διαβάστε περισσότερα . Με ποια χαρακτηριστικά θα προσθέσετε;

In this article