在CentOS 8 / CentOS 7上安裝和配置Syncthing

同步是一種開源的連續文件同步,用於在網絡中兩台或更多台計算機之間同步文件。本教程旨在幫助您在CentOS 8 / CentOS 7 Linux機器上安裝和配置Syncthing。同步易於安裝和維護,並允許您輕鬆地在本地網絡或Internet上的計算機之間同步文件。

同步核心設計原則

同步基於以下主要目標:

  • 防止數據丟失 –通過防止用戶文件損壞來保護用戶數據。
  • 使用方便 –同步必須友好,可理解且全面。
  • 抵禦攻擊者的安全 –禁止未經授權的人士竊聽或更改您的數據。
  • 對於個人 –同步主要是為個人用戶提供安全可靠的易於使用的文件同步。
  • 自動的 –僅在絕對必要時才需要與用戶進行交互。
  • 普遍可用 –必須在所有流行的計算機上運行同步。

在CentOS 8 / CentOS 7上安裝Syncthing

CentOS和其他RHEL Linux發行系列沒有正式支持的存儲庫,這些存儲庫提供用於安裝的RPM軟件包。因此,請從官方源檔案下載並在Centthing 8 / CentOS 7上安裝並安裝Syncthing。

最新版本 操作系統同步示例:

curl -s https://api.github.com/repos/syncthing/syncthing/releases/latest | grep browser_download_url | grep linux-amd64 | cut -d '"' -f 4 | wget -qi -

解壓縮下載的檔案。

tar xvf syncthing-linux-amd64*.tar.gz

有一個叫做 同步處理 在從解壓縮創建的文件夾中。將二進制文件複製到 / usr /本地/ bin 目錄。

sudo cp syncthing-linux-amd64-*/syncthing  /usr/local/bin/

檢查Syncthing的版本,以確保二進制文件已被複制。

$ syncthing --version
syncthing v1.3.4 "Fermium Flea" (go1.13.7 linux-amd64) [email protected] 2020-01-14 07:01:03 UTC

將同步設置為在啟動時自動啟動

使用Linux Systemd管理同步服務-允許用戶啟動,停止,啟用和禁用服務單元。

讓我們創建一個新文件。

sudo vi /etc/systemd/system/[email protected]

將以下內容粘貼到文件中。

[Unit]
Description=Syncthing - Open Source Continuous File Synchronization for %I
Documentation=man:syncthing(1)
After=network.target

[Service]
User=%i
ExecStart=/usr/local/bin/syncthing -no-browser -gui-address="0.0.0.0:8384" -no-restart -logflags=0
Restart=on-failure
SuccessExitStatus=3 4
RestartForceExitStatus=3 4

# Hardening
ProtectSystem=full
PrivateTmp=true
SystemCallArchitectures=native
MemoryDenyWriteExecute=true
NoNewPrivileges=true

[Install]
WantedBy=multi-user.target

更新系統服務列表。

sudo systemctl daemon-reload

啟用並啟動服務。

sudo systemctl start [email protected]$USER
sudo systemctl enable [email protected]$USER

檢查服務狀態。

$ sudo systemctl status [email protected]$USER
● s[email protected] - Syncthing - Open Source Continuous File Synchronization for cloud/user
   Loaded: loaded (/etc/systemd/system/[email protected]; disabled; vendor preset: disabled)
   Active: active (running) since Sun 2020-03-08 21:19:04 EAT; 1min 7s ago
     Docs: man:syncthing(1)
 Main PID: 7739 (syncthing)
    Tasks: 9 (limit: 11512)
   Memory: 29.1M
   CGroup: /system.slice/system-syncthing.slice/[email protected]
           └─7739 /usr/local/bin/syncthing -no-browser -no-restart -logflags=0

Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: Loading HTTPS certificate: open /home/cloud-user/.config/syncthing/https-cert.pem: no su>
Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: Creating new HTTPS certificate
Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: TCP listener ([::]:22000) starting
Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: Relay listener (dynamic+https://relays.syncthing.net/endpoint) starting
Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: GUI and API listening on 127.0.0.1:8384
Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: Access the GUI via the following URL: http://127.0.0.1:8384/
Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: My name is "cent8.novalocal"
Mar 08 21:19:05 cent8.novalocal syncthing[7739]: [BAMMV] INFO: Completed initial scan of sendreceive folder "Default Folder" (default)
Mar 08 21:19:20 cent8.novalocal syncthing[7739]: [BAMMV] INFO: Detected 1 NAT service
Mar 08 21:19:36 cent8.novalocal syncthing[7739]: [BAMMV] INFO: Joined relay relay://85.10.202.70:22067

您也可以使用其他用戶帳戶啟動服務。 $ USER 用戶名。

訪問同步界面

同步管理GUI由systemd自動啟動,並在已配置的監聽地址和端口上可用 8384。 如果 -gui-address="ip:port" 沒有提供選項。服務是 https://localhost:8384/

$ sudo ss -tunelp | grep 8134
udp     UNCONN   0    0   [::]:35129  [::]:* users:(("syncthing",pid=260527,fd=16)) uid:1000 ino:4508134 sk:38 v6only:1 <-> 

默認情況下,同步管理界面設置為允許無需密碼即可進行遠程訪問。

打開設置並設置密碼。 設置> GUI

在CentOS 8 / CentOS 7上安裝和配置Syncthing

然後,將要求您進行身份驗證。

在CentOS 8 / CentOS 7上安裝和配置Syncthing

當您訪問Syncthing GUI時,將看到以下界面。

在CentOS 8 / CentOS 7上安裝和配置Syncthing

使用同步在兩個設備之間同步數據

為了能夠在兩台或多台計算機之間同步數據
同步,確保所有內容均已安裝並配置
系統。設置完成後,您需要通知每個設備其他設備
終端。

同步設備ID

這是裝置編號“。
設備ID是受密碼保護的唯一標識符,
在首次啟動時作為密鑰生成的一部分生成
同步。這兩個設備僅在連接時才相互通信。
兩者都配置有彼此的設備ID。從獲取設備ID 操作>顯示ID

添加同步設備ID

為了使兩個設備能夠相互通信,添加遠程設備兩者的右下角 輸入相反的設備ID

在CentOS 8 / CentOS 7上安裝和配置Syncthing

還有 選擇一個文件夾 您想分享什麼。設備名稱是可選的,只是外觀。如果需要,您可以稍後進行更改。 ”保存到“新設備將顯示在GUI的右側(但 斷線),並提示您重新啟動。

注意事項: 默認共享文件夾為 〜同步。 確保在進行更改(例如添加同步目錄)後重新啟動Syncthing 操作>重新啟動。

祝你好運,玩得開心!還有更多 文獻資料 如果您有任何問題,請隨時發表您的問題 支持論壇

類似指南:

如何為Ceph對象網關存儲配置AWS S3 CLI

使用虛擬數據優化器(VDO)進行存儲壓縮和重複數據刪除

在CentOS 8 / CentOS 7上使用Heketi設置GlusterFS存儲

Sidebar