惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

H
Hackread – Cybersecurity News, Data Breaches, AI and More
Security Archives - TechRepublic
Security Archives - TechRepublic
I
Intezer
Threat Intelligence Blog | Flashpoint
Threat Intelligence Blog | Flashpoint
C
CXSECURITY Database RSS Feed - CXSecurity.com
A
Arctic Wolf
T
Threatpost
P
Proofpoint News Feed
AWS News Blog
AWS News Blog
C
Cybersecurity and Infrastructure Security Agency CISA
G
GRAHAM CLULEY
Cisco Talos Blog
Cisco Talos Blog
Simon Willison's Weblog
Simon Willison's Weblog
L
Lohrmann on Cybersecurity
Scott Helme
Scott Helme
T
Tenable Blog
L
LINUX DO - 最新话题
Help Net Security
Help Net Security
WordPress大学
WordPress大学
Hacker News: Ask HN
Hacker News: Ask HN
人人都是产品经理
人人都是产品经理
MyScale Blog
MyScale Blog
Recent Commits to openclaw:main
Recent Commits to openclaw:main
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Recent Announcements
Recent Announcements
Vercel News
Vercel News
The Hacker News
The Hacker News
J
Java Code Geeks
博客园 - 【当耐特】
D
Docker
V
V2EX
H
Heimdal Security Blog
GbyAI
GbyAI
博客园 - 叶小钗
Google DeepMind News
Google DeepMind News
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
N
News | PayPal Newsroom
The Register - Security
The Register - Security
The Cloudflare Blog
C
CERT Recently Published Vulnerability Notes
T
The Blog of Author Tim Ferriss
博客园 - Franky
MongoDB | Blog
MongoDB | Blog
SecWiki News
SecWiki News
S
Secure Thoughts
Attack and Defense Labs
Attack and Defense Labs
Microsoft Security Blog
Microsoft Security Blog
S
Schneier on Security
Latest news
Latest news
Project Zero
Project Zero

Peng's Blog

Vibe paper不负责指北 SPFC参考文献阅读《CONGA》 读《Uno:数据中心间和数据中心内拥塞控制与可靠连接的一站式解决方案》 Lenovo Legion Y9000P 在 Linux 下只有 30W:从现象、WMI 到驱动补丁 理解《From ATOP to ZCube》中的ZCube网络拓扑 集合通信原语学习 Zotero在Wayland下侧边栏无法拖动的解决办法 再读CAVER 我读的第一篇论文--NSDI_26_CAVER 在archlinux下使用万象拼音实现更智慧的中文输入法 Traefik实现单Docker容器托管多个静态网站 Pengs.top浴火重生!备案、服务器迁移与全站Docker化 严谨与温度并存:北航宋友老师程设课的学习感悟 Android Studio全流程换源指南 解决linux系统下pipewire作为音频服务器持续播放声音中断问题 在ThinkBook 16+ 2025上安装archlinux驯服记录【基本信息与触摸板修复】 自建图床和PicGo闹不愉快?干脆自己写个脚本,深度整合到KDE右键菜单! btrfs各压缩等级速率测试脚本,选择最适合你的压缩级别 别当冤大头,Adobe全家桶破解源头方案:修图剪辑不求人,盗版网站也得从你这儿进货! 轻松配置aria2下载器,通过systemd设置开机自启并与浏览器集成 Git Commit 规范指南
「行云流水」在挂载移动硬盘时自动启动Syncthing开始同步的丝滑体验
Pengbo · 2025-08-09 · via Peng's Blog

syncthing

Syncthing是一款持续文件同步程序。它能实时在两台或多台计算机之间同步文件,安全防范窥探。您的数据仅属于您自己,您理应选择数据的存储位置、是否与第三方共享,以及数据如何在互联网上传输。

很多人称Syncthing为一个网盘,实际上Syncthing本身不提供文件存储的服务。它只是一个工具,让你的数据可以在你的多个设备之间点对点增量传输,如果你有一台自己的NAS,那么你确实可以收获一个速度秒杀绝大部分网盘的“网盘”

Syncthing的安装并不难,网上有很多教程,我就不重复造轮子了。

Syncthing的分布式存储理念很棒,但是在我的使用中,还是有点痛点。

痛点

我的上一台电脑只有256GB的存储空间,分给linux的只有60GB,在这样的空间上,我想要备份手机相册就捉襟见肘了。所以我一向把相册、音乐等等存储到一张1TB大小的机械硬盘上(1TB在机械盘中算小了,但是暂时够用)。

So,在设置Syncthing的时候我选择将Syncthing备份数据的位置放在机械硬盘上。为了防止Syncthing在我不需要的时候常驻后台,我并没有设置开机自启。于是在每次需要同步数据的时候,都需要把机械硬盘插上电脑,挂载打开,手动启动电脑和手机上的Syncthing,虽然只是一行命令的事,但是作为对系统要求到近乎苛刻的我,这一不流畅的工作流实在不够优雅。我希望实现类似于传统网盘客户端那样的“无感”体验。

你永远可以相信你对linux的自定义程度

想到要做这个事啊,我就想到了systemd 这个linux上几乎已成标准的服务管理程序。

要实现这个需求,我们希望有一个trigger触发器,在我的移动硬盘挂载的时候触发,激活我们编写的service,然后启动Syncthing

思路还挺清晰的。接下来找这个trigger

还是要吐槽一下linux,虽然可自定义性挺高,提供的接口也很多,这赋予了系统强大的能力,但是这些接口的文档太多太杂,且分散在各处。对于新手、老手都是个头疼的问题,好在现在AI吸收了天地之精华,问一下,很快就找出来了,在这一点上,AI真是提高了我的效率。

正如服务有对应的单元文件一样,设备挂载时也会产生固定的单位(但是并不存在实际文件)可以使用systemctl查看:

1
systemctl list-units --type=mount --user

我这里的输出如下:

屏幕截图_20250809_115538

第一列为我们需要的systemd挂载名称,最后一列为挂载路径。如果你参考持续化设置一节配置过/etc/fstab,则挂载名称会短一些。

参考ArchWiki我编写了如下的service:

1
2
3
4
5
6
7
8
9
[Unit]
Description=Syncthing
BindsTo=mnt-btrfs.mount

[Service]
ExecStart=/usr/bin/syncthing

[Install]
WantedBy=mnt-btrfs.mount

保存至~/.config/systemd/user/syncthing.service

创建后还需要运行:

1
systemctl enable syncthing --user

该服务才会生效,不用担心额外的资源占用,因为这个enable不会导致Syncthing在系统启动时开始运行。在设备卸载后,Syncthing也会随之停止运行

效果

服务启动时,也会弹出浏览器中的WebUI,还挺好

Zcc见过很惊讶。