Cara Mengubah Raspberry Pi Anda Menjadi Megalit Pengunduhan yang Selalu Aktif

Cara Mengubah Raspberry Pi Anda Menjadi Megalit Pengunduhan yang Selalu Aktif

Lakukan bagian Anda untuk 'jaringan distribusi Linux' global dengan membangun megalit pengunduhan torrent yang berdedikasi, aman, yang hampir tidak menggunakan daya 10W. Itu mungkin, dan tentu saja, akan didasarkan pada Raspberry Pi.





Mengunduh dan menyemai (Anda melakukan seed, kan? Orang baik menyemai setidaknya dengan rasio 2.0) adalah tugas yang sulit untuk komputer biasa, dan berarti Anda menyedot listrik jauh lebih banyak daripada yang seharusnya dengan membiarkannya menyala semalaman. Bagaimana jika Anda dapat memindahkan tugas itu ke Raspberry Pi berdaya rendah, cukup kecil untuk diletakkan di bawah papan lantai dan hampir tidak merusak daya 10W untuk melakukan semuanya. Itulah tepatnya yang akan saya tunjukkan kepada Anda bagaimana melakukannya hari ini.





Berikut rencananya:





  • Siapkan Raspberry Pi dengan beberapa penyimpanan USB, dan pindahkan drive sistem ke USB untuk memperpanjang masa pakai kartu SD kami.
  • Bagikan itu melalui jaringan.
  • Konfigurasikan VPN sehingga semua lalu lintas dialihkan melalui VPN, dengan aman - dan semuanya berhenti jika koneksi gagal. Kami tidak ingin ISP mengetahui distro Linux mana yang kami sukai.
  • Instal klien torrent yang dapat dikelola dari jarak jauh, Transmisi.

Kedengarannya rumit, bukan? Tidak lebih dari beberapa ratus perintah Terminal, saya jamin. Banyak dari ini tumpang tindih dengan kami Raspberry Pi NAS tutorial, jadi jika Anda tidak begitu tertarik dengan torrent dan sisi VPN, Anda mungkin ingin memeriksanya.

Penyimpanan USB

Mulailah dengan menginstal Raspian baru dan hubungkan antarmuka Ethernet, dan colokkan penyimpanan USB Anda (melalui hub USB yang aktif, atau kemungkinan Anda akan menghadapi kesalahan nanti seperti yang saya lakukan) - itu belum perlu diformat. Masuk dari jarak jauh dengan kombinasi nama pengguna dan kata sandi pi /raspberry default, lalu jalankan:



sudo raspi-config

Ubah jumlah memori yang diberikan melalui grafik menjadi 16 megabita - kami akan menjalankan ini sepenuhnya tanpa kepala, jadi Anda tidak memerlukan memori grafis. Keluar, dan mari kita atur beberapa partisi di USB. Kami akan menyiapkan setidaknya dua - satu untuk digunakan pada sistem untuk mempertahankan masa pakai kartu SD kami, dan yang lainnya untuk unduhan yang akan disimpan. Cari tahu dulu drive mana yang merupakan USB Anda.

tail /var/log/messages

Dalam kasus saya, mudah untuk mengidentifikasi sebagai 'sda'. Dengan mengingat hal itu, sesuaikan perintah berikut untuk masuk ke fdisk utilitas pada perangkat yang sesuai.





sudo fdisk /dev/sda

tekan P untuk membuat daftar partisi saat ini. Untuk menghapus yang sudah ada, tekan D . Buat partisi primer baru, dengan n , kemudian P . Saat ditanya ukuran, masukkan + 8G . Sekarang lanjutkan dan buat partisi lain untuk data torrent Anda (sekali lagi, primer), atau lebih banyak partisi juga jika Anda mau. DI DALAM akan menulis peta partisi baru ke drive setelah Anda selesai.

pindahkan file dari satu google drive ke yang lain

Setelah tabel baru ditulis, gunakan perintah berikut untuk memformat drive sebagai: linux ext4 . Gunakan perintah tambahan jika Anda mempartisi drive Anda dengan lebih dari dua partisi.





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

Perintah terakhir akan mengonfirmasi bahwa Anda telah memasang partisi dengan benar. Selanjutnya, kami ingin menyalin data kartu SD ke drive - ini akan memperpanjang umurnya dengan menghindari operasi baca/tulis yang konstan ke cache, dll. Instal rsync untuk melakukan ini:

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

Ini akan memulai serangkaian penyalinan file yang panjang, jadi putar jari Anda sebentar.

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

Sesuaikan ini untuk membaca:

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

Selanjutnya, modifikasi fstab untuk memasangnya saat start up.

sudo nano /etc/fstab

Tambahkan baris berikut:

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

Komentari baris berikut yang mengacu pada kartu SD:

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

Nyalakan ulang Pi dengan

sudo reboot

Diurutkan! Pi Anda sekarang akan memasang partisi data root dan partisi torrent Anda

Bagikan Drive: Samba

Pastikan kami memperbarui terlebih dahulu, hapus paket Wolfram Mathematica yang selalu membuat saya kesulitan ketika melakukan apa pun di Pi (sesuatu yang berkaitan dengan matematika-kernel), lalu instal paket yang diperlukan

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

Memukul CTRL-W dan ketik 'keamanan' untuk menemukan baris berikut, dan A komentar itu.

security = user

Tambahkan berikut ini untuk menentukan folder bersama torrent kami:

[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

Mulai ulang layanan Samba:

sudo service samba restart

Selanjutnya kita perlu menambahkan pengguna ke sistem. Ganti 'jamie' dengan nama pengguna yang Anda inginkan yang akan digunakan untuk masuk untuk mengakses folder bersama. Perintah berikut kemudian meminta Anda untuk membuat kata sandi Anda, yang pertama di tingkat sistem dan yang berikutnya untuk Samba. Ubah perintah terakhir jika Anda memanggil drive data Anda dengan sesuatu yang lain (dan inilah primer tentang kepemilikan file di 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

Uji - Anda harus dapat terhubung dari komputer lain di jaringan Anda, dan membaca/menulis file ke share baru. Periksa mereka muncul di Pi juga dengan ls dari dalam / mnt / torrents map.

Pengaturan VPN

Instal paket yang diperlukan

sudo apt-get install openvpn resolvconf

Unduh file konfigurasi OpenVPN dari penyedia Anda. Anda dapat melihat daftar VPN terbaik di sini, tetapi pastikan untuk menemukan yang ramah terhadap torrent. saya menggunakan privasi.io sendiri, tapi Akses Internet Pribadi adalah pilihan populer lainnya dalam komunitas torrent. Either way, Anda harus dapat mengambil file konfigurasi ZIP dan sertifikat. Masukkan ini ke folder torrent Anda, di dalam direktori bernama openvpn . Ubah perintah berikut sehingga menunjuk ke file konfigurasi Anda, yang hampir pasti akan berbeda dari privasiIO.ovpn

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

Jika Anda mendapatkan output seperti ini, Anda baik-baik saja. Memukul CTRL-C untuk mengakhirinya. Sangat menjengkelkan harus mengetikkan kata sandi, dan kami memerlukan beberapa modifikasi untuk menambahkan skrip mulai dan berhenti. Edit file konfigurasi (sekali lagi, ganti privacyIO.ovpn dengan file .ovpn yang diberikan penyedia Anda)

nano /mnt/torrents/openvpn/privacyIO.ovpn

Ubah baris berikut terlebih dahulu. Pada dasarnya kami mengatakan kami akan menyimpan nama pengguna dan kata sandi dalam file bernama pass.txt

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

Simpan, dan ketik:

nano /mnt/torrents/pass.txt

Masukkan nama pengguna Anda di baris pertama, dan kata sandi di baris berikutnya. Simpan, dan coba sambungkan lagi:

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

Anda seharusnya tidak disadap untuk masuk saat ini. Ya! Selanjutnya, buka file konfigurasi lagi, dan tambahkan baris berikut:

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

Ini menentukan beberapa skrip yang akan kita buat nanti untuk melakukan tugas ketika koneksi berhasil, atau terputus. Pastikan Anda berada di mnt/torrent/openvpn direktori, lalu jalankan yang berikut ini:

nano route-up.sh

Tambahkan yang berikut yang memastikan lalu lintas dikirim melalui VPN:

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

Selanjutnya, buat skrip down.sh

nano down.sh

Menambahkan:

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

Terakhir, kami ingin skrip membuka koneksi, alih-alih memulainya dari baris perintah seperti yang baru saja kami lakukan.

nano vpn.sh

Rekatkan perintah peluncuran VPN dari sebelumnya. Jika Anda lupa:

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

Sekarang, buat semua skrip itu dapat dieksekusi, dan luncurkan skrip VPN saat startup.

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

Tambahkan baris berikut sebelum keluar 0 garis. Kami hanya menyuruhnya untuk memulai skrip ini saat startup.

/mnt/torrents/openvpn/vpn.sh

Terakhir, reboot sistem Anda lagi.

Masuk lagi, dan jalankan ifconfig . Anda akan tahu itu berfungsi jika Anda melihat entri untuk ketuk0 (atau tun0) , dan berhasil menggulung halaman web:

curl https://www.makeuseof.com

Klien Torrent

Hampir sampai sekarang. Terakhir, kita akan menginstal Transmisi, yang ringan dan memiliki GUI web yang bagus. Perintah berikut menginstal, lalu menghentikan daemon - karena kita perlu mengonfigurasinya terlebih dahulu - lalu membuka file pengaturan untuk diedit.

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

Ubah 'rpc-authentication-required' menjadi false; ubah 'rpc-whitelist' untuk memasukkan subnet lokal Anda - misalnya:

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

Tambahkan atau sesuaikan yang berikut ini jika sudah ada:

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

Selanjutnya, edit file startup daemon itu sendiri untuk menangani beberapa masalah izin.

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

Mengubah USER=transmisi-daemon ke PENGGUNA = root . Muat ulang daemon.

sudo service transmission-daemon reload

Akhirnya, kami akan menginstal avahi-daemon untuk mengatur jaringan bonjour/zeroconf, yang berarti kita tidak perlu menggunakan alamat IP Pi untuk mengaksesnya dari browser - sebagai gantinya kita dapat menggunakan raspberrypi.local alamat.

sudo apt-get install avahi-daemon

Dengan asumsi nama host Anda adalah default (raspberrypi, tetapi dapat diubah menggunakan raspi-config) , navigasi ke:

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

Pertama, periksa IP torrent Anda disamarkan dengan benar melalui VPN. Unduh file torrent uji dari Penjaga Tor - grafik unduhan terlihat seperti iklan, tetapi sebenarnya tidak - dan letakkan di folder bersama torrent.

Kami telah mengonfigurasi Transmisi untuk menonton folder ini untuk torrent baru, jadi itu harus segera ditambahkan. Silakan dan jatuhkan beberapa torrent distro Linux legal di sana juga.

Torrent pemeriksaan IP akan mengembalikan kesalahan, bersama dengan alamat IP yang terdeteksi. Pastikan itu bukan IP rumah Anda - jika ya, VPN belum disetel dengan benar. Secara default, setiap torrent yang Anda masukkan ke dalam folder akan diganti namanya menjadi .added, dan file .part harus dibuat hingga transfer selesai. Pastikan hal ini terjadi di folder bersama Anda.

Itu dia! Anda sekarang memiliki Pi yang bertenaga super rendah, aman, pengunduhan torrent - membuat workstation Anda tersedia untuk hal-hal yang lebih baik. Sekarang Anda mungkin ingin melihat menambahkan server UPnP untuk streaming media di sekitar jaringan, atau menggunakan BitTorrent Sync untuk membuat penyimpanan cloud Anda sendiri . Fitur apa yang akan Anda tambahkan?

Membagikan Membagikan Menciak Surel 8 Situs Web Terbaik untuk Mengunduh Buku Audio Gratis

Buku audio adalah sumber hiburan yang hebat, dan lebih mudah dicerna. Berikut adalah delapan situs web terbaik tempat Anda dapat mengunduhnya secara gratis.

Baca Selanjutnya
Topik-topik yang berkaitan
  • buatan sendiri
  • BitTorrent
  • Raspberry Pi
Tentang Penulis James Bruce(707 Artikel Diterbitkan)

James memiliki gelar BSc dalam Artificial Intelligence dan bersertifikat CompTIA A+ dan Network+. Ketika dia tidak sibuk sebagai Editor Ulasan Perangkat Keras, dia menikmati LEGO, VR, dan permainan papan. Sebelum bergabung dengan MakeUseOf, ia adalah seorang teknisi pencahayaan, guru bahasa Inggris, dan insinyur pusat data.

More From James Bruce

Berlangganan newsletter kami

Bergabunglah dengan buletin kami untuk kiat teknologi, ulasan, ebook gratis, dan penawaran eksklusif!

Klik di sini untuk berlangganan