xiaocrab.net 中文

QNAP QTS 系統中 Resilio Sync 經常崩潰問題的解決

2021-09-26 · 3 min read
IT

問題描述

最近的幾個版本 Resilio Sync 在 QNAP QTS 系統中運行時,如果以較快的速度同步大量文件或大文件會導致 Resilio Sync 經常崩潰。

問題解決

在 QNAP 官方論壇中,有位用戶通過禁用 Resilio Sync 的異步 IO 解決了問題。

解決方案大致過程是:修改 Resilio Sync 的配置文件 resilio-sync.conf,在該文件中添加一條"async_io": false鍵值對,重新啟動 Resilio Sync。

具體的操作過程:

  1. 在 QTS 系統的「控制台」 - Telnet/SSH 中開啟 SSH。
  2. 在 QTS 系統的「App Center」中停止 Resilio Sync。
  3. 通過 Terminal 連結到 QNAP NAS,執行 ssh NAS 的用戶名@NAS 的 IP 位址,如ssh [email protected]。按提示輸入密碼等信息。
  4. 在 Terminal 中執行 sudo -i,以切換到 admin 模式。按提示輸入密碼等信息。
  5. 在 Terminal 中執行 cd /share/CE_CACHEDEV1_DATA/.qpkg/ResilioSync,其中 CE_CACHEDEV1_DATA 需要根據實際路徑修改,即 ResilioSync 安裝的卷。
  6. 在 Terminal 中執行 ls,列出 ResilioSync 目錄下的文件,應該會出現 resilio-sync.conf 這一文件,否則上一步cd的路徑不正確。
  7. 執行cp resilio-sync.conf resilio-sync.conf.bak,備份原始的 resilio-sync.conf 文件,防止下一步編輯該文件出錯後恢復原始的文件。
  8. 執行vi resilio-sync.conf,編輯 resilio-sync.conf 文件。將光標通過方向鍵移動到其中的"vendor" : "qnap",這一行下方,接著按i鍵,輸入" "async_io": false, 。輸入完成,按ESC鍵,然後輸入:wq
  9. 執行cat resilio-sync.conf,檢查 resilio-sync.conf 文件內容是否與下面提供的一致,其中storage_path的值需要根據實際路徑確定。主要檢查上一步輸入的 "async_io": false 是否正確。
    {
        "check_for_updates" : true,
        "display_new_version": false,
        "use_upnp" : true,
        "storage_path" : "/share/CE_CACHEDEV1_DATA/.qpkg/ResilioSync/storage",
    
        "directory_root" : "/share",
        "directory_root_policy" : "all",
        "vendor" : "qnap",
        "async_io": false,
        "webui" :
        {
            "force_https": true,
            "listen" : "0.0.0.0:14860",
            "allow_empty_password" : false,
            "context":"{\"folder_blacklist\": [\"\/Qsync\", \"\/external\", \"\/HD[A-Z]_\", \"\/MD[0-9]_\"]}"
        }
    }
    
  10. 在 QTS 系統的「App Center」中開啟 Resilio Sync。
  11. 在 QTS 系統的「控制台」 - Telnet/SSH 中關閉 SSH。

參考文獻