Cách biến Raspberry Pi của bạn thành Megalith tải xuống luôn bật

Cách biến Raspberry Pi của bạn thành Megalith tải xuống luôn bật

Làm phần việc của bạn cho 'mạng phân phối Linux' toàn cầu bằng cách xây dựng một megalith tải torrent chuyên dụng, an toàn, hầu như không sử dụng 10W điện năng. Nó có thể, và tất nhiên, nó sẽ dựa trên Raspberry Pi.





Tải xuống và gieo hạt (bạn làm hạt giống, phải không? Người tốt gieo hạt theo tỷ lệ ít nhất là 2,0) là một nhiệm vụ khó khăn đối với bất kỳ máy tính thông thường nào và có nghĩa là bạn đang hút nhiều điện hơn mức đáng lẽ phải để máy hoạt động qua đêm. Điều gì sẽ xảy ra nếu bạn có thể tải nhiệm vụ đó xuống một Raspberry Pi có công suất thấp, đủ nhỏ để nhét dưới ván sàn và chỉ cần phá vỡ 10W điện năng để thực hiện tất cả. Đó chính xác là những gì tôi sẽ chỉ cho bạn cách làm hôm nay.





Đây là kế hoạch:





  • Thiết lập Raspberry Pi với một số bộ lưu trữ USB và di chuyển ổ đĩa hệ thống sang USB để kéo dài tuổi thọ của thẻ SD của chúng tôi.
  • Chia sẻ điều đó qua mạng.
  • Định cấu hình VPN để tất cả lưu lượng được định tuyến qua VPN một cách an toàn - và mọi thứ sẽ dừng nếu kết nối đó không thành công. Chúng tôi không muốn ISP biết bản phân phối Linux nào mà chúng tôi ưa thích.
  • Cài đặt ứng dụng khách torrent có thể quản lý từ xa, Truyền.

Nghe có vẻ phức tạp phải không? Tôi đảm bảo với bạn rằng không quá vài trăm lệnh Terminal. Rất nhiều điều này trùng lặp với Raspberry Pi NAS hướng dẫn, vì vậy nếu bạn không quá quan tâm đến khía cạnh torrent và VPN, bạn có thể muốn xem điều đó thay thế.

Bộ nhớ USB

Bắt đầu với cài đặt Raspian mới và kết nối giao diện Ethernet, đồng thời cắm bộ lưu trữ USB của bạn (thông qua bộ chia USB được cấp nguồn, nếu không bạn sẽ gặp lỗi sau này như tôi đã làm) - nó chưa được định dạng. Đăng nhập từ xa bằng tổ hợp tên người dùng và mật khẩu pi / raspberry mặc định, sau đó chạy:



sudo raspi-config

Thay đổi dung lượng bộ nhớ được cung cấp cho đồ họa thành 16 megabyte - chúng tôi sẽ chạy điều này hoàn toàn không cần đầu, vì vậy bạn không cần bộ nhớ đồ họa. Thoát và thiết lập một số phân vùng trên USB. Chúng tôi sẽ thiết lập ít nhất hai - một để sử dụng cho hệ thống nhằm duy trì tuổi thọ của thẻ SD của chúng tôi và một để lưu trữ các bản tải xuống. Đầu tiên hãy tìm ra ổ đĩa nào là USB của bạn.

tail /var/log/messages

Trong trường hợp của tôi, nó dễ dàng được xác định là 'sda'. Với ý nghĩ đó, hãy điều chỉnh lệnh sau để nhập fdisk tiện ích trên thiết bị thích hợp.





sudo fdisk /dev/sda

nhấn P để liệt kê các phân vùng hiện tại. Để xóa bất kỳ cái nào hiện có, hãy nhấn NS . Tạo một phân vùng chính mới, với n , sau đó P . Khi nó hỏi bạn về kích thước, hãy nhập + 8G . Bây giờ, hãy tiếp tục và tạo một phân vùng khác cho dữ liệu torrent của bạn (một lần nữa, chính) hoặc nhiều phân vùng khác nếu bạn muốn. TRONG sẽ ghi bản đồ phân vùng mới vào ổ đĩa khi bạn hoàn tất.

tại sao video chính không hoạt động

Khi bảng mới đã được ghi, hãy sử dụng các lệnh sau để định dạng ổ đĩa dưới dạng linux ext4 . Sử dụng các lệnh bổ sung nếu bạn đã phân vùng ổ đĩa của mình với nhiều hơn hai phân vùng.





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

Lệnh cuối cùng sẽ xác nhận rằng bạn đã gắn các phân vùng một cách chính xác. Tiếp theo, chúng tôi muốn sao chép dữ liệu thẻ SD vào ổ đĩa - điều này sẽ kéo dài tuổi thọ của nó bằng cách tránh các hoạt động đọc / ghi liên tục vào bộ nhớ đệm, v.v. Cài đặt rsync để làm điều này:

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

Thao tác này sẽ bắt đầu một chuỗi dài sao chép tệp, vì vậy hãy xoay ngón tay của bạn một chút.

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

Điều chỉnh cái này để đọc:

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

Tiếp theo, sửa đổi fstab để gắn chúng khi khởi động.

sudo nano /etc/fstab

Thêm các dòng sau:

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

Nhận xét dòng sau đề cập đến thẻ SD:

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

Khởi động lại Pi với

sudo reboot

Đã sắp xếp! Pi của bạn bây giờ sẽ gắn kết cả phân vùng dữ liệu gốc và phân vùng torrent của bạn

Chia sẻ ổ đĩa: Samba

Đảm bảo rằng chúng tôi đã cập nhật trước, xóa các gói Wolfram Mathematica luôn khiến tôi gặp rắc rối khi thực hiện hoàn toàn bất kỳ điều gì trên Pi (điều gì đó liên quan đến toán học-kernel), sau đó cài đặt các gói bắt buộc

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

Đánh CTRL-W và gõ 'security' để tìm dòng sau và Một bình luận nó.

security = user

Thêm phần sau để xác định thư mục chia sẻ torrent của chúng tôi:

[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

Khởi động lại dịch vụ Samba:

sudo service samba restart

Tiếp theo, chúng ta cần thêm một người dùng vào hệ thống. Thay thế 'jamie' bằng tên người dùng mong muốn của bạn mà bạn sẽ đăng nhập để truy cập vào thư mục được chia sẻ. Các lệnh sau sẽ yêu cầu bạn tạo mật khẩu của mình, lệnh đầu tiên ở cấp hệ thống và lệnh tiếp theo dành cho Samba. Sửa đổi các lệnh cuối cùng nếu bạn đã gọi ổ đĩa dữ liệu của mình bằng một thứ gì đó khác (và đây là phần mở đầu về quyền sở hữu tệp trong 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

Kiểm tra - bạn sẽ có thể kết nối từ một máy khác trên mạng của mình và đọc / ghi tệp vào phần chia sẻ mới. Kiểm tra xem chúng cũng xuất hiện trên Pi với ls từ bên trong / mnt / torrents thư mục.

Thiết lập VPN

Cài đặt các gói bắt buộc

sudo apt-get install openvpn resolvconf

Tải xuống tệp cấu hình OpenVPN từ nhà cung cấp của bạn. Bạn có thể xem danh sách các VPN tốt nhất ở đây, nhưng hãy nhớ tìm một cái thân thiện với torrent. tôi sử dụng privacy.io bản thân tôi, nhưng Truy cập Internet Riêng tư là một lựa chọn phổ biến khác trong các cộng đồng torrent. Dù bằng cách nào, bạn sẽ có thể lấy một tệp ZIP gồm các cấu hình và chứng chỉ. Đặt những thứ này vào thư mục torrent của bạn, trong một thư mục có tên openvpn . Sửa đổi lệnh sau để nó trỏ đến tệp cấu hình của bạn, gần như chắc chắn sẽ khác với privacyIO.ovpn

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

Nếu bạn nhận được một đầu ra như thế này, bạn tốt. Đánh CTRL-C để chấm dứt nó. Tuy nhiên, thật khó chịu khi phải nhập mật khẩu và chúng tôi cần một vài sửa đổi để thêm tập lệnh bắt đầu và dừng. Chỉnh sửa tệp cấu hình (một lần nữa, thay thế privacyIO.ovpn bằng tệp .ovpn mà nhà cung cấp của bạn đã cung cấp cho bạn)

nano /mnt/torrents/openvpn/privacyIO.ovpn

Sửa đổi dòng sau trước. Về cơ bản, chúng tôi đang nói rằng chúng tôi sẽ lưu trữ tên người dùng và mật khẩu trong một tệp có tên pass.txt

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

Lưu và nhập:

nano /mnt/torrents/pass.txt

Nhập tên người dùng của bạn vào dòng đầu tiên và mật khẩu ở dòng tiếp theo. Lưu và thử kết nối lại:

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

Bạn không nên đăng nhập vào thời điểm này. Yay! Tiếp theo, mở lại tệp cấu hình và thêm các dòng sau:

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

Điều này chỉ định một số tập lệnh mà chúng ta sẽ tạo sau này để thực hiện các tác vụ khi kết nối xuất hiện thành công hoặc gặp trục trặc. Đảm bảo rằng bạn đang ở mnt / torrents / openvpn thư mục, sau đó chạy như sau:

nano route-up.sh

Thêm phần sau để đảm bảo lưu lượng truy cập được gửi qua VPN:

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

Tiếp theo, tạo tập lệnh down.sh

nano down.sh

Thêm vào:

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

Cuối cùng, chúng tôi muốn một tập lệnh để mở kết nối, thay vì bắt đầu nó từ dòng lệnh như chúng tôi vừa làm.

nano vpn.sh

Dán vào lệnh khởi chạy VPN từ trước đó. Trong trường hợp bạn quên:

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

Bây giờ, làm cho tất cả các tập lệnh đó có thể thực thi được và khởi chạy tập lệnh VPN khi khởi động.

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

Thêm dòng sau trước thoát 0 hàng. Chúng tôi chỉ yêu cầu nó bắt đầu tập lệnh này khi khởi động.

/mnt/torrents/openvpn/vpn.sh

Cuối cùng, khởi động lại hệ thống của bạn một lần nữa.

Đăng nhập lại và chạy ifconfig . Bạn sẽ biết nó đang hoạt động nếu bạn thấy mục nhập cho tap0 (hoặc tun0) và có thể cuộn thành công một trang web:

curl https://www.makeuseof.com

Ứng dụng khách Torrent

Gần đó bây giờ. Cuối cùng, chúng tôi sẽ cài đặt Transmission, có dung lượng nhẹ và có GUI web đẹp. Các lệnh sau cài đặt, sau đó dừng daemon - vì chúng ta cần cấu hình nó trước - sau đó mở tệp cài đặt để chỉnh sửa.

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

Thay đổi 'rpc -hentication-Required' thành false; thay đổi 'rpc-whitelist' để bao gồm mạng con cục bộ của bạn - ví dụ:

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

Thêm hoặc điều chỉnh những điều sau nếu đã có:

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

Tiếp theo, chỉnh sửa chính tệp khởi động daemon để giải quyết một số vấn đề về quyền.

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

Thay đổi USER = truyền-daemon đến USER = root . Tải lại daemon.

sudo service transmission-daemon reload

Cuối cùng, chúng tôi sẽ cài đặt avahi-daemon để thiết lập mạng bonjour / zeroconf, có nghĩa là chúng tôi sẽ không cần sử dụng địa chỉ IP của Pi để truy cập nó từ trình duyệt - thay vào đó chúng tôi có thể sử dụng raspberrypi.local Địa chỉ.

sudo apt-get install avahi-daemon

Giả sử tên máy chủ của bạn là mặc định (raspberrypi, nhưng có thể được thay đổi bằng raspi-config) , hướng đến:

http: //raspberrypi.local: 9091 / truyền / web /

Trước tiên, hãy kiểm tra IP torrent của bạn có được ngụy trang chính xác thông qua VPN hay không. Tải xuống tệp torrent thử nghiệm từ TorGuard - hình ảnh tải xuống trông giống như một quảng cáo, nhưng không phải vậy - và thả nó vào thư mục chia sẻ torrent.

Chúng tôi đã định cấu hình Transmission để xem thư mục này cho torrent mới, vì vậy nó sẽ được thêm ngay lập tức. Tiếp tục và thả một số torrent hợp pháp của Linux vào đó.

Torrent kiểm tra IP sẽ trả về một lỗi, cùng với địa chỉ IP mà nó phát hiện được. Đảm bảo rằng đó không phải là IP nhà của bạn - nếu đúng thì VPN chưa được thiết lập đúng. Theo mặc định, bất kỳ torrent nào bạn thả vào thư mục sẽ được đổi tên thành .added và tệp .part sẽ được tạo cho đến khi quá trình truyền hoàn tất. Xác minh đây là trường hợp trong thư mục được chia sẻ của bạn.

Đó là nó! Giờ đây, bạn có một Pi tải xuống torrent, bảo mật, siêu tiết kiệm năng lượng - hãy để máy trạm của bạn luôn sẵn sàng cho những thứ tốt hơn. Bây giờ bạn có thể muốn xem xét thêm một máy chủ UPnP để phát trực tuyến phương tiện trên mạng hoặc sử dụng BitTorrent Sync để tạo bộ nhớ đám mây của riêng bạn. Bạn sẽ thêm những tính năng nào vào?

Đăng lại Đăng lại tiếng riu ríu E-mail 8 trang web tốt nhất để tải xuống sách nói miễn phí

Sách nói là một nguồn giải trí tuyệt vời và dễ đọc hơn nhiều. Dưới đây là tám trang web tốt nhất mà bạn có thể tải chúng xuống miễn phí.

Đọc tiếp
Chủ đề liên quan
  • DIY
  • BitTorrent
  • Raspberry Pi
Giới thiệu về tác giả James Bruce(707 bài báo đã xuất bản)

James có bằng Cử nhân về Trí tuệ nhân tạo và được chứng nhận CompTIA A + và Network +. Khi không bận rộn với tư cách là Biên tập viên đánh giá phần cứng, anh ấy thích LEGO, VR và các trò chơi trên bàn. Trước khi gia nhập MakeUseOf, anh ấy là kỹ thuật viên ánh sáng, giáo viên tiếng Anh và kỹ sư trung tâm dữ liệu.

Xem thêm từ James Bruce

Theo dõi bản tin của chúng tôi

Tham gia bản tin của chúng tôi để biết các mẹo công nghệ, đánh giá, sách điện tử miễn phí và các ưu đãi độc quyền!

Bấm vào đây để đăng ký
Thể LoạI Diy