Bài toán: Có 1 thư mục dữ liệu book muốn chia sẻ cho nhiều người, nhiều máy cùng sử dụng, đồng bộ dữ liệu.
Phương án triển khai: Cài đặt và sử dụng syncthing theo mô hình hub and spoke.
Website chính thức: syncthing.net
Sử dụng Raspberry PI cài syncthing làm Hub cài đặt chạy ở nhà 24/7
Các PC, Laptop cài đặt syncthing là spoke.
Các bước cài đặt:
1. Cài đặt trên Raspberry PI chạy OS debian
lsb_release -a
No LSB modules are available.
Distributor ID: Raspbian
Description: Raspbian GNU/Linux 12 (bookworm)
Release: 12
Codename: bookworm
Cài các gói phụ trợ
sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install ca-certificates
Thêm repo syncthing
sudo mkdir -p /etc/apt/keyrings
sudo curl -L -o /etc/apt/keyrings/syncthing-archive-keyring.gpg https://syncthing.net/release-key.gpg
echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing stable" | sudo tee /etc/apt/sources.list.d/syncthing.list
echo "deb [signed-by=/etc/apt/keyrings/syncthing-archive-keyring.gpg] https://apt.syncthing.net/ syncthing candidate" | sudo tee /etc/apt/sources.list.d/syncthing.list
Cập nhật apt và cài syncthing
sudo apt-get update
sudo apt-get install syncthing
sudo apt-get install -u syncthing
Khởi động
systemctl start syncthing@<tên người dung đang chạy>.service
systemctl stop syncthing@<tên người dung đang chạy>.service
systemctl status syncthing@<tên người dung đang chạy>.service
ví dụ:
systemctl stop syncthing@chint.service
systemctl start syncthing@chint.service
systemctl status syncthing@chint.service
Đến đây ta đã cài và khởi động được syncthing.
Mở trình duyệt truy cập đến địa chỉ IP của syncthing port 8384 để kiểm tra
Mở firewall cho phép truy cập port quản lý 8384
Mở firewall để cho phép truy cập port syncthing:
TCP: 22000
UDP: 21027, 22000
Thực hiện theo hướng dẫn: https://docs.syncthing.net/intro/getting-started.html để cấu hình và chia sẻ thư mục.
2. Cài đặt trên windows
Truy cập vào đây để lấy bộ cài phiên bản mới nhất:
https://docs.syncthing.net/users/contrib.html#contributions
https://github.com/Bill-Stewart/SyncthingWindowsSetup
https://github.com/Bill-Stewart/SyncthingWindowsSetup/releases/
Download file exe về và thực hiện cài đặt.
Sau cài đặt xong thì vào http://localhost:8384 hoặc theo địa chỉ IP để thiết lập cấu hình ban đầu.
3. Thiết lập chia sẻ folder giữa các máy
Mở port trên thiết bị router của nhà mạng
Trỏ port 22000 vào máy Raspberry PI.
Sau khi mở port có thể thử bằng trang ping.eu phần check port.
Thiết lập mạng trên các máy cài Syncthing
Vào Settings chọn các tùy chọn như bên dưới.
Để xem ID thiết bị của mình nhấn vào Actions/ Show ID như bên dưới
Thêm máy để chia sẻ: Nhấn vào Add remote device để thêm máy
Nhập vào deviceID của máy mình muốn chia sẻ, đặt tên và nhần save.
Thêm thư mục chia sẻ:
Ở góc trái bên dưới nhấn vào nút Add Folder
Đến đây là ta đã có thể chia sẻ file giữa các máy dùng PI làm Hub là nơi lưu trữ tập trung.
Máy PI sẽ add trust share với tất cả các máy.
Các máy khác chỉ cần trust, share với máy PI.
Nếu bị quên password trên gui thì vào console thực hiện lệnh
sudo syncthing generate --gui-password=myNewPassword --gui-user=newUserName
Sau đó khởi động lại ứng dụng
sudo systemctl restart syncthing@tên user.service