Syncthing完整教程
本文最后更新于 2024-11-12,文章内容可能已经过时。
一步到位搞定Syncthing
网上的关于Syncthing的资料或教程都比较老旧了,而且基本都是使用内网穿透的,这样就得有一台设备长期开机,不太现实,恰好我有一台阿里云的轻量,就搭建了一个小破站,利用率还不够,就想着拿来当个文件中转站,其他设备只要同步文件到云服务器,需要同步时再从云服务器同步就好了
目前搭建Sync thing的方案有很多,这里例举几个:
-
本地设备同步(局域网内):适合在家中或办公室中使用,所有设备都在同一个局域网内进行文件同步。
-
个人服务器 + 远程设备同步:在个人服务器上搭建 Syncthing,并与外部的多个设备(如手机、笔记本等)进行文件同步。
-
NAS(网络附加存储)搭建 Syncthing:将 Syncthing 部署在 NAS 上,实现家庭或小型办公室的集中化存储和同步。
-
Docker 搭建 Syncthing:使用 Docker 容器来运行 Syncthing,实现轻量级部署和易于管理的环境。
-
云服务器搭建 Syncthing:在云服务商(腾讯云,阿里云等)上搭建 Syncthing,以实现公网设备同步。
Syncthing 是一个开源、去中心化的文件同步工具,允许设备之间通过互联网或局域网共享文件。它的特点是高效、安全且不需要依赖任何云服务,所有数据在传输过程中都会经过端到端加密。
跨平台设备同步(Windows、macOS、Linux 混合环境),适合多种操作系统混合使用的场景,例如一台 Windows PC、一台 MacBook 和一台 Linux 服务器。
准备工作:
1、公网服务器,配置不要求,
2、一双能复制粘贴的小手
公网服务器端安装 Syncthing
这里推荐docker安装,配合宝塔面板,可实现一键操作,非常适合对docker不熟悉的新手
访问公网ip:8384即可进入管理页面,
22000端口是配置设备连接时需要用到的,
1. 客户端安装 Syncthing
Windows:
- 下载: 前往 Syncthing 官方下载页面,选择 Windows 版本下载。
- 安装: 下载完成后,运行安装程序并完成安装。
- 启动: 安装完成后,启动 Syncthing。默认情况下,它会在后台运行并通过浏览器界面进行操作,通常地址是
http://localhost:8384
。
macOS:
-
使用 Homebrew 安装:
brew install syncthing
-
启动:
syncthing
-
使用浏览器访问
http://localhost:8384
进行管理。
Linux:
-
Ubuntu/Debian:
sudo apt install syncthing
-
Arch Linux:
sudo pacman -S syncthing
-
安装完成后,通过命令
syncthing
启动服务,并通过浏览器访问管理界面。
2. 初次配置
访问 Web 管理界面:
Syncthing 在本地通过浏览器管理。首次启动后,访问 http://localhost:8384
进入管理界面。
设置设备名称:
在主页面的右上角,你会看到设备的默认名称。点击该名称可以修改设备名称,以便在多个设备之间更容易识别。
同步文件夹:
- 添加文件夹: 在主页上点击 “Add Folder” 按钮。
- 设置文件夹路径: 选择你想同步的本地文件夹。
- 标识符: 为文件夹设置一个唯一的标签,这个标签将在其他设备上用于识别该文件夹。
- 高级设置: 可以选择设置文件夹的同步模式(例如:双向同步、仅发送或仅接收)。
3. 添加设备
获取设备 ID:
在每台设备上,Syncthing 会生成一个唯一的设备 ID。要同步设备,首先需要获取对方的设备 ID。
- 在 Web 界面上,点击右上角的设备名称,找到 “Show ID” 按钮,获取当前设备的 ID。
- 将此 ID 分享给你想同步的设备。
添加新设备:
- 在 Syncthing 管理界面中,点击右下角的 “Add Remote Device” 按钮。
- 输入对方设备的 ID,并为该设备设置一个易于识别的名称。
- 选择你想与该设备同步的文件夹。
- 双方设备都会收到添加请求,确认后即可开始同步。
4. 高级配置
设备间加密:
所有设备间的传输都经过 TLS 加密,因此数据在传输中是安全的。此外,每个设备都有自己的设备 ID,用于确保设备身份的唯一性和安全性。
带宽限制:
如果你的网络带宽有限,可以在设置中配置上传和下载速度限制,以避免影响其他网络活动。
版本控制:
Syncthing 支持文件版本控制,允许你在文件被更改或删除时保留旧版本。你可以在文件夹的高级设置中启用版本控制并设置保留策略。
5. 日常使用
文件同步状态:
在主界面中,你可以看到每个文件夹的同步状态,例如同步进度、文件夹的大小、已同步的文件数等。
冲突解决:
当两个设备同时对同一个文件进行修改时,可能会出现冲突。Syncthing 会保留所有冲突文件并在文件名中标注冲突信息,你可以手动解决这些冲突。
本地与远程设备的连接:
Syncthing 会自动选择最快的连接方式(局域网或互联网)来同步文件。如果两台设备在同一个局域网内,Syncthing 会优先使用局域网进行同步,从而加快速度。
6. 常见问题
无法连接远程设备:
- 检查防火墙设置: 确保 Syncthing 的端口(默认是 22000)在防火墙中未被阻止。
- 检查设备 ID: 确保输入了正确的设备 ID。
- NAT 问题: 如果设备在不同的网络中,可能需要配置端口转发以确保设备能够互相通信。
文件夹未同步:
- 检查文件夹权限: 确保 Syncthing 具有访问和修改文件夹的权限。
- 检查设备状态: 确保远程设备在线且处于同步状态。
7. 自动启动 Syncthing
Windows:
可以将 Syncthing 设置为开机启动程序:
- 按
Win + R
键,输入shell:startup
并回车。 - 将 Syncthing 的快捷方式复制到启动文件夹中。
macOS:
使用 launchctl
设置 Syncthing 开机启动:
brew services start syncthing
Linux:
可以使用 systemd
设置 Syncthing 为系统服务,并开机启动:
systemctl --user enable syncthing
systemctl --user start syncthing