Sửa xe đạp

Lên Google Drive với Raspberry Pi + rclone + screen

Vậy là cuộc đời xô đẩy khiến anh phải dùng đến G Suite Business cực kì tốn kém. Bù lại anh sẽ có dịch vụ lưu trữ đám mây không giới hạn nhanh hàng đầu thế giới.

“Đã đến lúc đưa 20TB dữ liệu lên mây”. Anh tự nhủ.

Nhưng nghĩ vậy thôi chứ đấy không phải là một việc đơn giản như người ta kéo thả một thư mục lên Google Drive. Thậm chí dùng Google Backup and Sync cũng không khả thi.

Dùng NAS thì dễ. Nhưng xem nào. Cứ cho tốc độ tải lên trung bình là 5MB/s, nhân với 86400 giây thì một ngày sẽ tải lên khoảng 400GB (thấp hơn giới hạn băng thông tối đa của Google Drive, nghe đâu là 700GB/ngày). Tức là cái NAS sẽ phải hoạt động liên tục trong khoảng 50 ngày mới tải xong.

Anh chỉ sợ với cường độ hoạt động như vậy thì cái NAS sẽ nát trước khi xong việc.

Tiết kiệm điện với Raspberry Pi và ổ cứng gắn ngoài

Ngoài NAS thì anh còn lưu một bản sao trên các ổ cứng rời. Dung lượng mỗi cái từ 1 đến 3TB.

Giải pháp chính là đây: Nối ổ cứng rời vào RaspberryPi rồi dùng rclone để đồng bộ dữ liệu lên Google Drive.

Mấy cái ổ cách đây chục năm dùng định dạng NTFS nên trước tiên anh phải cài NTFS cho Raspberry cho chắc ăn. Dù hình như không cài vẫn đọc được.

sudo apt-get install ntfs-3g

Tiếp theo là chạy fdisk để xem ổ ngoài là cái phân vùng nào và tạo thư mục /media/Photos để gắn ổ đó vào:

sudo fdisk -l
sudo mkdir /media/Photos
sudo mount -t ntfs /dev/sda1 /media/Photos/

Vì đã cài sẵn rclone nên anh không phải cài mới. Giờ chỉ việc chạy rclone config để kết nối với Google Drive. Cái này khá dễ, cứ làm theo hướng dẫn của ứng dụng là xong. Ở đây anh tạo kết nối có tên là GDriveBackup.

Để tiện theo dõi, trên Google Drive, anh tạo một thư mục là Pi để đồng bộ từ cái Raspberry này.

rclone -P sync /media/Photos/2010/ GDriveBackup:/Pi/2010/

Anh chạy lệnh trên để đồng bộ (sync) thư mục 2010 trong ổ ngoài (/media/Photos/) với thư mục /Pi/2010/ trên Google Drive.

rclone chỉ thay đổi dữ liệu ở trên Google Drive chứ không thêm bớt gì vào nguồn nên yên tâm không bị mất dữ liệu gốc nếu có cấu hình sai 🙂

Tuỳ chọn -P dùng để hiện thị tiến trình thực: tốc độ tải, tỉ lệ hoàn thành, thời gian còn lại, danh sách 4 tập tin đang được đồng bộ v.v.

Phải dùng screen nếu kết nối từ xa

Cái Raspberry Pi của anh không có màn hình, bàn phím gì cả. Anh toàn kết nối qua ssh từ iMac.

Giờ chạy rclone rồi thì phải đợi nó đồng bộ cho xong. Tức là phải giữ kết nối ssh. Ơ thế thì cứ phải để iMac chạy theo à? Hay giờ phải đi mua bàn phím, cắm màn hình tivi để truy cập trực tiếp?

Thật may là có vị cứu tinh screen. Ứng dụng này không có sẵn, nhưng cài vèo cái là xong.

Anh chạy screen rồi chạy lại cái lệnh rclone trên. Giờ thì có thể yên tâm đóng cửa sổ terminal hoặc gõ Ctrl + A d để ẩn màn hình mà rclone vẫn tiếp tục chạy. Nếu muốn xem rclone chạy đến đâu rồi thì anh lại cho hiện cái màn hình đó ra bằng lệnh:

screen -r

Ứng dụng báo là còn khoảng 10 tiếng nữa thì đồng bộ xong. Thế là có thể yên tâm cho iMac đi ngủ.