วิธีเปลี่ยน Raspberry Pi ของคุณให้กลายเป็น Megalith ที่ดาวน์โหลดตลอดเวลา

วิธีเปลี่ยน Raspberry Pi ของคุณให้กลายเป็น Megalith ที่ดาวน์โหลดตลอดเวลา

ทำหน้าที่ของคุณสำหรับ 'เครือข่ายการกระจาย Linux' ทั่วโลกด้วยการสร้างเมกะลิธที่ดาวน์โหลดทอร์เรนต์โดยเฉพาะ ปลอดภัย ซึ่งแทบจะไม่ใช้พลังงาน 10W เป็นไปได้และแน่นอนว่าจะใช้ Raspberry Pi





กำลังดาวน์โหลดและ seeding (คุณทำเมล็ดพันธุ์ใช่ไหมคนดีมีอัตราส่วน 2.0 เป็นอย่างน้อย) เป็นงานที่ยากลำบากสำหรับคอมพิวเตอร์ทั่วไป และหมายความว่าคุณกำลังดูดกลืนไฟฟ้ามากกว่าที่ควรจะเป็นโดยต้องปล่อยทิ้งไว้ข้ามคืน จะเกิดอะไรขึ้นถ้าคุณสามารถถ่ายโอนงานนั้นไปยัง Raspberry Pi ที่ใช้พลังงานต่ำ ซึ่งมีขนาดเล็กพอที่จะวางไว้ใต้กระดานปูพื้นและใช้พลังงานเพียง 10W แทบหมดเพื่อทำทุกอย่าง นั่นคือสิ่งที่ฉันจะแสดงให้คุณเห็นถึงวิธีการทำในวันนี้





นี่คือแผน:





  • ตั้งค่า Raspberry Pi ด้วยที่เก็บข้อมูล USB และย้ายไดรฟ์ระบบไปยัง USB เพื่อยืดอายุของการ์ด SD ของเรา
  • แบ่งปันผ่านเครือข่าย
  • กำหนดค่า VPN เพื่อให้การรับส่งข้อมูลทั้งหมดถูกส่งผ่าน VPN อย่างปลอดภัย - และทุกอย่างจะหยุดลงหากการเชื่อมต่อนั้นล้มเหลว เราไม่ต้องการให้ ISP รู้ว่า Linux distro ใดที่เราชอบ
  • ติดตั้งไคลเอนต์ทอร์เรนต์ที่จัดการได้จากระยะไกล Transmission

ฟังดูซับซ้อนใช่มั้ย ฉันรับรองได้ไม่เกินสองสามร้อยคำสั่งเทอร์มินัล หลายๆ อย่างมันทับซ้อนกับของเรา ราสเบอร์รี่ Pi NAS กวดวิชา ดังนั้นหากคุณไม่สนใจในด้าน torrenting และ VPN คุณอาจต้องการลองใช้แทน

ที่เก็บข้อมูล USB

เริ่มต้นด้วยการติดตั้ง Raspian ใหม่และเชื่อมต่ออินเทอร์เฟซอีเทอร์เน็ต และเสียบที่จัดเก็บข้อมูล USB ของคุณ (ผ่านฮับ USB ที่ได้รับพลังงาน มิฉะนั้น คุณอาจพบข้อผิดพลาดในภายหลังเหมือนที่ฉันทำ) ซึ่งยังไม่ได้รับการฟอร์แมต เข้าสู่ระบบจากระยะไกลด้วยชื่อผู้ใช้และรหัสผ่านเริ่มต้น pi /raspberry จากนั้นเรียกใช้:



sudo raspi-config

เปลี่ยนจำนวนหน่วยความจำที่กำหนดให้กับกราฟิกเป็น 16 เมกะไบต์ - เราจะดำเนินการนี้โดยไม่มีส่วนหัวทั้งหมด ดังนั้นคุณไม่จำเป็นต้องมีหน่วยความจำกราฟิก ออกแล้วมาตั้งค่าพาร์ติชั่นบน USB กัน เราจะตั้งค่าอย่างน้อยสองอย่าง อันแรกใช้สำหรับระบบเพื่อรักษาอายุการใช้งานของการ์ด SD ของเรา และอีกอันสำหรับเก็บการดาวน์โหลด พิจารณาก่อนว่าไดรฟ์ใดเป็น USB ของคุณ

tail /var/log/messages

ในกรณีของฉัน การระบุว่าเป็น 'sda' เป็นเรื่องง่าย ให้ปรับคำสั่งต่อไปนี้เพื่อเข้าสู่ fdisk ยูทิลิตี้บนอุปกรณ์ที่เหมาะสม





sudo fdisk /dev/sda

กด NS เพื่อแสดงรายการพาร์ติชั่นปัจจุบัน หากต้องการลบรายการที่มีอยู่ ให้กด NS . สร้างพาร์ติชันหลักใหม่ด้วย NS , แล้ว NS . เมื่อระบบถามถึงขนาด ให้ป้อน + 8G . ตอนนี้ ไปข้างหน้าและสร้างพาร์ติชั่นอื่นสำหรับข้อมูลทอร์เรนต์ของคุณ (อีกครั้ง, พาร์ติชั่นหลัก) หรือพาร์ติชั่นอื่นๆ ด้วยเช่นกัน หากคุณต้องการ ใน จะเขียนแมปพาร์ติชั่นใหม่ไปยังไดรฟ์เมื่อคุณทำเสร็จแล้ว

วิธีส่งต่อข้อความบน iphone

เมื่อเขียนตารางใหม่แล้ว ให้ใช้คำสั่งต่อไปนี้เพื่อฟอร์แมตไดรฟ์เป็น 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 ของคุณ

Share The Drive: แซมบ้า

ตรวจสอบให้แน่ใจว่าเราได้อัปเดตก่อน ลบแพ็คเกจ Wolfram Mathematica ที่ทำให้ฉันมีปัญหาเสมอเมื่อทำทุกอย่างบน Pi (บางอย่างที่เกี่ยวข้องกับเคอร์เนลคณิตศาสตร์) จากนั้นติดตั้งแพ็คเกจที่จำเป็น

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 และพิมพ์ 'ความปลอดภัย' เพื่อค้นหาบรรทัดต่อไปนี้และ NS แสดงความคิดเห็นมัน

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 ด้วย ลส จากภายใน / mnt / torrents โฟลเดอร์

ตั้งค่า VPN

ติดตั้งแพ็คเกจที่จำเป็น

sudo apt-get install openvpn resolvconf

ดาวน์โหลดไฟล์กำหนดค่า OpenVPN จากผู้ให้บริการของคุณ คุณสามารถตรวจสอบรายชื่อ VPN ที่ดีที่สุด ที่นี่ แต่อย่าลืมหาอันที่เป็นมิตรกับ torrent ฉันใช้ ความเป็นส่วนตัว.io ตัวฉันเอง แต่ อินเทอร์เน็ตส่วนตัว เป็นอีกตัวเลือกหนึ่งที่ได้รับความนิยมในชุมชน torrent ไม่ว่าจะด้วยวิธีใด คุณควรจะสามารถคว้าไฟล์ ZIP ของการกำหนดค่าและใบรับรองได้ ใส่สิ่งเหล่านี้ลงในโฟลเดอร์ torrents ของคุณภายในไดเร็กทอรีชื่อ openvpn . แก้ไขคำสั่งต่อไปนี้ให้ชี้ไปที่ไฟล์ปรับแต่งของคุณ ซึ่งเกือบจะแตกต่างจาก ความเป็นส่วนตัวIO.ovpn

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

ถ้าได้ผลลัพธ์แบบนี้ก็ดีสิ ตี 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 --script-security 2

คุณไม่ควรถูกดักฟังในการเข้าสู่ระบบในครั้งนี้ เย้! ถัดไป เปิดไฟล์กำหนดค่าอีกครั้ง และเพิ่มบรรทัดต่อไปนี้:

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

ถัดไป สร้างสคริปต์ 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

ตอนนี้ ทำให้สคริปต์ทั้งหมดสามารถเรียกใช้งานได้ และเปิดใช้สคริปต์ 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

สุดท้าย รีบูตระบบของคุณอีกครั้ง

เข้าสู่ระบบอีกครั้งและเรียกใช้ ifconfig . คุณจะรู้ว่ามันใช้งานได้ถ้าคุณเห็นรายการสำหรับ tap0 (หรือ tun0) และสามารถม้วนหน้าเว็บได้สำเร็จ:

curl https://www.makeuseof.com

ไคลเอนต์ทอร์เรนต์

ใกล้ถึงแล้ว. สุดท้าย เราจะติดตั้ง Transmission ซึ่งมีน้ำหนักเบาและมีเว็บ GUI ที่ดี คำสั่งต่อไปนี้ ติดตั้ง จากนั้นหยุด daemon - เนื่องจากเราต้องกำหนดค่าก่อน - จากนั้นเปิดไฟล์การตั้งค่าเพื่อแก้ไข

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

เปลี่ยน 'rpc-authentication-required' เป็นเท็จ เปลี่ยน '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,

ถัดไป แก้ไขไฟล์เริ่มต้น daemon เพื่อจัดการกับปัญหาการอนุญาตบางอย่าง

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

เปลี่ยน USER=transmission-daemon ถึง USER=รูท . โหลด daemon ใหม่

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/transmission/web/

ขั้นแรก ให้ตรวจสอบว่า IP ของ torrent ของคุณถูกปลอมแปลงอย่างถูกต้องผ่าน VPN ดาวน์โหลดไฟล์ torrent ทดสอบจาก TorGuard - กราฟิกดาวน์โหลดดูเหมือนโฆษณา แต่ไม่ใช่ - แล้ววางลงในโฟลเดอร์แชร์ของ torrents

เราได้กำหนดค่า Transmission ให้ดูโฟลเดอร์นี้สำหรับ torrents ใหม่ ดังนั้นควรเพิ่มโฟลเดอร์นี้ทันที ไปข้างหน้าและวางทอร์เรนต์ลินุกซ์ distro ที่ถูกกฎหมายไว้ที่นั่นเช่นกัน

ทอร์เรนต์การตรวจสอบ IP ควรส่งคืนข้อผิดพลาดพร้อมกับที่อยู่ IP ที่ตรวจพบ ตรวจสอบให้แน่ใจว่าไม่ใช่ IP ที่บ้านของคุณ หากใช่ แสดงว่าไม่ได้ตั้งค่า VPN อย่างถูกต้อง ตามค่าเริ่มต้น torrents ใดๆ ที่คุณวางในโฟลเดอร์จะถูกเปลี่ยนชื่อเป็น .added และไฟล์ .part ควรถูกสร้างขึ้นจนกว่าการถ่ายโอนจะเสร็จสิ้น ตรวจสอบว่าเป็นกรณีนี้ในโฟลเดอร์ที่ใช้ร่วมกันของคุณ

แค่นั้นแหละ! ตอนนี้คุณมี Pi ที่ใช้พลังงานต่ำ ปลอดภัย และดาวน์โหลดทอร์เรนต์ได้ ปล่อยให้เวิร์กสเตชันของคุณพร้อมใช้งานสำหรับสิ่งที่ดีกว่า ตอนนี้คุณอาจต้องการดูการเพิ่มเซิร์ฟเวอร์ UPnP เพื่อสตรีมสื่อรอบเครือข่าย หรือใช้ BitTorrent Sync เพื่อสร้างที่เก็บข้อมูลบนคลาวด์ของคุณเอง คุณจะเพิ่มคุณสมบัติอะไรบ้าง?

แบ่งปัน แบ่งปัน ทวีต อีเมล 8 เว็บไซต์ที่ดีที่สุดในการดาวน์โหลดหนังสือเสียงฟรี

หนังสือเสียงเป็นแหล่งความบันเทิงชั้นเยี่ยมและเข้าใจง่ายกว่ามาก นี่คือเว็บไซต์ที่ดีที่สุดแปดแห่งที่คุณสามารถดาวน์โหลดได้ฟรี

อ่านต่อไป
หัวข้อที่เกี่ยวข้อง
  • DIY
  • BitTorrent
  • ราสเบอร์รี่ปี่
เกี่ยวกับผู้เขียน เจมส์ บรูซ(เผยแพร่บทความ 707 ฉบับ)

James มี BSc ในด้านปัญญาประดิษฐ์และได้รับการรับรองจาก CompTIA A+ และ Network+ เมื่อเขาไม่ได้ยุ่งในฐานะ Hardware Review Editor เขาสนุกกับ LEGO, VR และเกมกระดาน ก่อนร่วมงานกับ MakeUseOf เขาเป็นช่างเทคนิคแสงสว่าง ครูสอนภาษาอังกฤษ และวิศวกรศูนย์ข้อมูล

เพิ่มเติมจาก James Bruce

สมัครรับจดหมายข่าวของเรา

เข้าร่วมจดหมายข่าวของเราสำหรับเคล็ดลับทางเทคนิค บทวิจารณ์ eBook ฟรี และดีลพิเศษ!

คลิกที่นี่เพื่อสมัครสมาชิก
หมวดหมู่ Diy