当前位置: 首页 > article >正文

Zerotier虚拟局域网在树莓派的应用和Syncthing配合Zerotier实现端到端文件同步

一、Zerotier的部署

1、官网注册账号
https://my.zerotier.com/i
2、选择linux系统,执行安装Zerotier

curl -s https://install.zerotier.com | sudo bash

3、将树莓派网络加入Zerotier

zerotier-cli join DB62228FEDF6CE55

DB62228FEDF6CE55 为你的Zerotier IP 需要在官网查看,替换成官网的

4、电脑端在官网下载https://my.zerotier.com/initial-onboard
zerotier的适配系统的版本,根据提示加入网络的命令,在电脑端输入加入秘钥,加入到同一个zerotier网络里,在官网授权设备。

这样电脑端和树莓派就实现了虚拟局域网跨平台跨网络的连接。

二、Syncthing的部署

1、在树莓派上安装和配置 Syncthing

**安装 Syncthing**
sudo apt update
sudo apt install syncthing

**启动 Syncthing 服务**
sudo systemctl enable syncthing@pi
sudo systemctl start syncthing@pi

**查看状态**
sudo systemctl status syncthing@pi

注意:pi 为你的树莓派用户名
如果服务启动失败参考下面修复:

看起来系统用户名是 yangshuo 而不是 pi,让我们修正命令:

  1. 使用正确的用户名设置权限
# 创建配置目录
mkdir -p ~/.config/syncthing

# 设置正确的所有者
sudo chown -R yangshuo:yangshuo ~/.config/syncthing/
sudo chmod -R 700 ~/.config/syncthing/
  1. 创建服务文件
# 创建服务文件
sudo nano /etc/systemd/system/syncthing@yangshuo.service

# 添加以下内容:
[Unit]
Description=Syncthing - Open Source Continuous File Synchronization for %I
Documentation=man:syncthing(1)
After=network.target

[Service]
User=%i
ExecStart=/usr/bin/syncthing serve --no-browser --no-restart --logflags=0
Restart=on-failure
RestartSec=5
SuccessExitStatus=3 4
RestartForceExitStatus=3 4

[Install]
WantedBy=multi-user.target
  1. 启动服务
# 重新加载服务配置
sudo systemctl daemon-reload

# 启用并启动服务
sudo systemctl enable syncthing@yangshuo
sudo systemctl start syncthing@yangshuo

# 查看状态
sudo systemctl status syncthing@yangshuo

注意:

  • 所有命令中的 pi 都要改成 yangshuo
  • 确保使用正确的用户名和路径
  • 服务名也要相应更改

在这里插入图片描述
图中是树莓派UI界面的设置,需要将127.0.0.1替换为0.0.0.0才能实现局域网设备之间的互相访问。
本地电脑也要设置成0.0.0.0

原创和求助地址

设置好共享目录,这样我们就实现了虚拟局域网之间的跨网络互通和跨网络同步本地文件夹里的文件。


http://www.kler.cn/a/600756.html

相关文章:

  • linux命令行工具进阶
  • 定时器(java)
  • python每日十题(10)
  • JS—script标签加载:1分钟掌握async与defer
  • TensorDataser和DataLoader的解释与使用
  • 最长公共子序列LCS -- 全面分析版
  • 爱普生SG-3031CMA有源晶振在汽车雷达中的应用
  • vue2相关 基础命令
  • [NO-WX179]基于springboot+微信小程序的在线选课系统
  • W、M、C练题笔记(持续更新中)
  • 适合各个层次的 7 个计算机视觉项目【1】:植物病害检测
  • 内核编程十二:打印内核态进程的属性
  • 传统 embedding vs. P-Tuning 里的 embedding
  • (二)手眼标定——概述+原理+常用方法汇总+代码实战(C++)
  • 稳定运行的以Microsoft Azure Cosmos DB数据库为数据源和目标的ETL性能变差时提高性能方法和步骤
  • 深入解析 C++20 中的 std::bind_front:高效函数绑定与参数前置
  • 【蓝桥杯每日一题】3.25
  • MySQL数据库中常用的命令
  • 竞品已占据市场先机,如何找到差异化突破口
  • Next.js 中间件鉴权绕过漏洞 (CVE-2025-29927)