資料同步工具-4 一些有用的syncthing設定

資料同步工具-4 一些有用的syncthing設定

經過多年的打磨,syncthing已經比我第一次用它的時候穩定很多,可以控制的選項也變得比較簡單直覺,
有些選項旁邊還能看到簡單扼要的說明,所以這篇不是syncthing的使用手冊,而是分享一些我覺得比較常用的設定。
當你想要調整syncthing的設定的時候,如果忘記那個設定放在哪裡,就可以看看這篇的介紹!

三個主要調整設定的地方

syncthing有三個可以調整設定的地方,分別是→

  • syncthing網頁中→操作→設定
    控制的是關於syncthing該如何運作的全局選項,
    例如是否使用中繼、是否使用nat穿透、設定syncthing網頁登入密碼、修改當前裝置的顯示名稱、限制上下傳速度等等
  • 資料夾的設定,展開某個資料夾→編輯
    控制資料夾顯示在syncthing網頁上的名稱、要共享給哪個遠端裝置、檔案版本控制、要忽略哪些檔案、移除資料夾等等
  • 遠端裝置的設定,展開某個遠端裝置→編輯
    用來控制某個裝置顯示在syncthing的名稱、限制裝置的上下傳速度、要共享哪些資料夾給該裝置、移除裝置等等

記得使用ctrl+f5

ctrl+f5是在瀏覽器中強制刷新網頁的快速鍵,功能就像是你關掉網頁,再重新打開網頁一樣,
由於在syncthing修改設定的時候,無論你做什麼操作都是在相同頁面中,所以很常會有各種設定ui互相疊加,導致找不到想找的東西,或按tab切不動的問題,
這個時候就可以按一下
ctrl+f5
所有的ui就會被清掉,重新加載syncthing的頁面,你就可以重新打開需要的設定,或順利的按tab瀏覽了。

全局設定

在syncthing頁面中,點開操作,找到設定,按enter。
接下來按tab會看到幾個類別,我會以每個類別來介紹常用的設定。
當你調整完設定,記得按最後面的儲存按鈕來保存修改。

一般
  • 裝置名稱 編輯區 我的pc
    這個是當前裝置要顯示的名字,可以改個你喜歡的名字,例如我的windows電腦
  • 匿名數據回報 下拉式方塊 折疊 停用
    如果一開始你亂點成分享匿名數據,可以在這裡把它關掉,也就是改為(停用)
gui
  • GUI 監聽位址 編輯區 127.0.0.1:8384
    這就是syncthing網頁的預設連接位置,
    之前有提到過127.0.0.1,代表的是本地網路,也代表著只有syncthing所在的這台電腦才能訪問syncthing網頁。
    8384是syncthing監聽的端口,就像你家大門,要找對門才能進到syncthing的網頁,
    端口可以隨便改,但是之後連線的時候也需要輸入跟這裡一樣的端口,才能打開syncthing的網頁,
    建議的端口範圍是8384到65535之間的任一數字。
    另外,如果你有固定IP,且此IP可以被外部訪問,你也想讓自己的syncthing能被任何其他裝置訪問,那可以改為
    0.0.0.0:8384
    這裡的0.0.0.0 代表開放給任何裝置都能連線,
    p.s 如果你改為了0.0.0.0,強烈建議你需要設定syncthing的登入密碼,且syncthing的這台電腦也要開啟對應的防火牆端口,這樣才能在其他裝置成功連線
  • GUI 驗證使用者名稱 編輯區 子功能表 有自動完成
    用來登入syncthing的帳號
  • GUI 驗證密碼 編輯區 受保護
    用來登入syncthing的密碼
  • 為 GUI 使用 HTTPS 核取方塊 沒勾選
    一般用戶千萬別打勾這個選項,因為沒有ssl證書,以及正確的配置,那你將無法連線到syncthing網頁,
    最壞的結果是你需要完全移除syncthing相關設定,全部重來
連線
  • 傳入速率限制 (KiB/s) 調整按鈕 可編輯 0
    整個syncthing在當前裝置上的下載速度限制,預設為0,0代表不限速。
    單位是kib,它跟儲存設備的kb是八倍的關係,
    例如1000kb,就是8000kib,
    假設要限制下載速度為10mb,公式就是:
    10 * 1024 * 8 = 81,920
    所以你在這個編輯框裡就要輸入81,920,如果不限制的話就輸入0即可
  • 連出速率限制 (KiB/s) 調整按鈕 可編輯 0
    整個syncthing在當前裝置上的上傳速度限制,預設值和計算方法同上
  • Limit Bandwidth in LAN 核取方塊 沒勾選
    p.s 發現簡體中文有翻譯這個功能,譯為(在局域网内限制带宽)
    控制是否要把速度限制也應用在局域網中,例如你當前裝置是連家裡的WiFi,還有另一台電腦也是連到家裡的WiFi,
    而這兩台裝置要透過syncthing傳輸資料的時候,如果你沒勾選這個選項,那是不限速的,勾選之後才會套用前面的速度限制
  • 啟用 NAT 穿透 核取方塊 已勾選
    當兩台沒有對外IP的裝置的syncthing要互相連線的時候,透過nat穿透有時候也可以做到點對點連接,所以這個選項通常要勾選
    不過我有遇到一種狀況,假設a裝置跟b裝置可以點對點連線,但是因為網路線路問題,連線可能不穩定或很慢,
    此時想讓它盡可能走中繼server而不是點對點,舊可以把這個選項取消勾選,然後把中繼打勾,
    這個小技巧特別適合用於有自架中繼server的用戶,且那台作為中繼的server剛好a、b兩台裝置連過去都很快,在這種場景反而用中繼更加穩定高校!
  • 啟用中繼 核取方塊 勾選
    當兩台裝置無法點對點連線的時候,是否要透過中繼來轉發網路流量,會使用syncthing社區的中繼server來做轉發,
    取消打勾的話只要裝置之間無法點對點連線,很可能就會變成斷線狀態,
    如果你前面取消勾選了nat穿透,這個選項建議勾選。
其他類別

除了上面比較重要的幾個類別外,還有這兩個,當你想把之前忽略的資料夾或裝置,重新新增的時候可以到這裡面找:

  • 已忽略的資料夾
  • 已忽略的裝置

資料夾設定

每個共享資料夾都有自己的設定,你可以對不同的資料夾做不同的設定,
下面我會以用途來做介紹,不會介紹所有設定類別,
打開資料夾設定的方法是:
找到某資料夾按enter切換成展開狀態→按b在按鈕間跳轉,來找到編輯按鈕

移除共享資料夾
  1. 在點擊了共享資料夾的編輯按鈕之後只要按
    ctrl+end(行尾鍵)
    跳到網頁最下面,再往上就能看到
    移除 按鈕
  2. 直接點擊這個移除按鈕,會彈出是否確認移除的對話框,選擇是就能移除了!
略過不需要同步的檔案或資料夾
  1. 打開資料夾的編輯介面後,tab找
    忽略樣式
    按enter
  2. tab可以看到一個編輯框,裡面每行代表一個規則,如果有好幾個規則,就每行寫一種
    • 例如我想忽略共享資料夾的根目錄中,副檔名為.log的檔案,那就在編輯框中輸入
      .log
      這裡的
      代表匹配任何文字的檔名,只要後面的副檔名是.log都會被忽略。
    • 如果想要忽略共享資料夾中的子目錄,那可以用斜線來分隔,理論上/或\應該都可以,例如
      music/*.mp3

      music*.mp3
    • 除此之外,還可以讓要匹配的開頭和結尾都是*,只要有符合的文字都會被忽略,例如
      output
      這樣只要檔名有output的都會被忽略
    • 最傳統的方式就是明確指定完整的資料夾名稱或檔名,例如
      所有前任的電話號碼.txt

      我的神祕影片收藏
  3. 有多個規則的話編輯框內看起來類似這樣
    .log
    筆記.txt
    output/
    .mp3
    確認修改後記得要按編輯框下面的儲存按鈕
其他資料夾設定

另外一些資料夾設定,因為我很少用,只簡單介紹一下

  1. 修改資料夾在syncthing顯示的名稱
    在一般裡面,修改資料夾標籤
  2. 把資料夾共享給其他裝置
    在正在共享裡面,勾選其他遠端裝置
  3. 檔案版本控制
    同樣在檔案版本控制的分類中,預設是不啟用,有各種檔案版本控制類型,在選擇的下拉框旁邊有簡單說明
    我自己沒有使用syncthing的檔案版本控制功能,其實檔案版本控制的目的就是讓你的檔案在變更後,還有反悔的餘地,讓你可以從以前的檔案版本中找回之前的舊檔案,
    但這可能也意味著需要更多的儲存空間來保留舊版本,當你選擇某種檔案版本控制類型後,下拉框後面會多出一些選項

遠端裝置的設定

找到某裝置按enter把它展開→按b在按鈕之間跳轉,找到編輯按鈕按enter

移除遠端裝置
  1. 在點擊某個遠端裝置的編輯按鈕之後,只要按
    ctrl+end(行尾鍵)
    跳到網頁最下面,再往上就能看到
    移除 按鈕
  2. 直接點擊這個移除按鈕,會彈出是否確認移除的對話框,選擇是就能移除了!
一次設定多個共享資料夾給遠端裝置,以及其他幾個方便的選項

在正在共享裡面,勾選要共享給這台裝置的資料夾,
在這裡的修改,跟你直接在syncthing網頁中從某個資料夾選擇共享給某個遠端裝置的結果是相同的,
只不過這裡可以讓你一次共享好幾個資料夾,而不用編輯每個資料夾的設定來指定共享給某遠端裝置。
除此之外,遠端裝置中的正在共享還有兩個勾選框→

  • 引入者
    網頁上的說明: 將引入者的裝置新增到我們的裝置列表,以互相分享資料夾。
    功能描述:
    引入者這個功能比較有趣,它的邏輯是:
    當裝置 A 將裝置 B 設為引入者後,裝置 B 連接的其他設備會被自動添加到裝置 A 的遠端設備列表中,但前提是這些設備必須與 A 和 B 有共同的共享資料夾。
    具體的運作邏輯是這樣的:
    1. 當兩個設備連接時,它們會交換彼此共享資料夾的列表以及連接到這些共享的設備資訊,
    2. 只有當其他設備與你們之間有共同的共享資料夾時,引入者才會將這些設備介紹給你
    3. 例如
      • 裝置 A 將裝置 B 設為引入者
      • A 和 B 共享 "照片" 資料夾
      • B 也與設備 C、D 共享 "照片" 資料夾
      • 那麼 C、D 會被自動添加到 A 的設備列表
      • 但如果 B 還與設備 E 共享 "影片" 資料夾,而 A 沒有參與這個共享,那麼 E 不會被添加到 A的遠端裝置中
      p.s 引入者狀態是可以傳遞的,也就是說引入者的引入者也會成為你的引入者
  • 自動接受
    網頁上的說明: 自動在預設資料夾路徑建立或分享該裝置推薦的資料夾。
    功能描述:
    syncthing在剛使用的時候都會有一個預設的資料夾,
    如果把自動接受打勾,當這個遠端裝置分享任何資料夾,就不需要手動到syncthing網頁中點新增,而是會自動在預設資料夾創建子目錄來同步資料。
其他遠端裝置設定

另外一些遠端裝置設定,因為我很少用,只簡單介紹一下

  1. 修改遠端裝置在syncthing顯示的名稱
    在一般裡面,修改裝置名稱