以服务方式运行
平时的 SyncThemAll 是一个应用:你打开它,它工作,你关掉它。服务模式让它成为这台计算机的一部分——它随计算机一同启动,早于任何人登录,并且在没有窗口、完全没有用户会话的情况下让你的例程继续运行。
正是这一点,把一台备用计算机变成了一台小型的同步服务器。
首先:你真的需要它吗?
对大多数用户而言并不需要,而且应用中已经提供了更简单的选项。这里常被混为一谈的是两件不同的事:
| 你的需求 | 推荐选项 |
|---|---|
| 只要我处于登录状态,同步就一直进行,不必让窗口开着 | 开机自启 —— 设置 → 系统 → 在后台运行 和 登录时启动。免费,不需要管理员权限,无需任何配置。 |
| 在无人登录时同步也必须继续——计算机自动重启后继续工作 | 服务模式 —— 也就是本页。需要 Business 许可证。 |
如果第一行说的就是你,打开这两个开关即可,本页到此为止。服务是专为无人值守的计算机设计的。
实际安装的是什么
一个真正的操作系统服务,以你所用平台的原生方式注册:
| 系统 | 机制 | 名称 |
|---|---|---|
| Windows | 服务(SCM),启动类型为自动 | SyncThemAllService |
| macOS | 位于 /Library/LaunchDaemons 的 LaunchDaemon | com.neowise.syncthemall.service |
| Linux | systemd 单元,WantedBy=multi-user.target | syncthemall.service |
它随计算机一同启动,崩溃后自动重启。安装、启动、停止和移除都需要管理员权限——应用程序只会在真正需要时才请求这些权限。
安装
打开左侧栏的服务,点击安装为服务,确认管理员提示。
服务在安装完成后会自动启动。成功运行后,状态行会显示正在端口 8328 上运行——与应用自身的 8327 不同,因为两者可以同时运行,各自需要自己的端口。
安装时有一个复选框:立即将我的账户复制到服务。除非有确切的理由,否则请保持勾选——下面会解释服务为什么需要一份自己的副本。
你的许可证会自动转移到服务。你不需要重复激活:许可证绑定的是这台计算机,而服务就在同一台计算机上。
在 macOS 上还有一个强制性的额外步骤——需要你手动授予服务访问文件的权限。应用会在安装前提醒你,macOS 服务访问你的文件一文解释了原因和做法。
服务为什么有自己的账户和例程
因为只能如此。服务在无人登录的状态下运行,因此无法访问存放在你个人用户配置文件中的任何数据。它拥有计算机级别的独立存储空间:
- Windows ——
%ProgramData%\Neowise\SyncThemAll\service - macOS ——
/Library/Application Support/Neowise/SyncThemAll/service - Linux ——
/var/lib/neowise/syncthemall
自己的账户、自己的例程、自己的加密密钥。正因如此,迁移你的工作是一个需要明确执行的步骤,而不是自动发生的过程。
迁移你的工作
在服务对话框的迁移数据一节:
复制账户到服务 —— 你的云连接是被复制的。它们同时保留在你自己的会话中,应用照旧工作。两边都能连接你的云。
将例程移动到服务 —— 例程是被移动的,会从你的会话中删除。这是有意为之,而且刻意不做复制:同一条定时例程若同时存在于两处,就会运行两次,把相同的文件传输两遍。被移动的例程所依赖的账户会随之自动复制过去。
日常管理
一切都在同一个对话框里——左侧栏的服务:
- 启动 / 停止 —— 服务保持已安装状态;停止只是让它暂停。
- 卸载 —— 把服务从操作系统中移除。
- 切换到服务 —— 让当前窗口指向服务而不是你自己的会话,从而查看它的例程和历史。窗口标题会带上**(服务)**标记,你随时知道自己在看哪一个。
- 打开服务窗口 —— 同样的视图放在第二个窗口里,与你自己的并排。
服务安装之后,侧栏图标上会出现一个小状态灯:绿色表示正在运行,橙色表示已安装但已停止。
管理操作只在你自己的会话中可用。当你正看着服务时,能看到状态并可以返回——从服务自己的窗口里停止服务,等于停掉正在绘制这个窗口的那个东西。
移除
卸载会把服务从操作系统的注册中移除并停止它。你的数据会保留:服务自己的账户和例程仍在上面列出的文件夹中,因此重新安装可以接着之前继续。
如果想彻底清除,请在卸载后自行删除那个文件夹。这需要管理员权限——这也正是应用程序不会静默替你执行此操作的原因。
遇到问题时
刚装完状态却显示「未安装」。 稍等几秒——应用程序在等待操作系统确认,随后会自动更新。如果状态一直不变,说明安装未完成:请重试,并留意管理员权限提示。
在我自己的文件夹上出现「Permission denied」(macOS)。 这是预期行为,一分钟即可解决:见 macOS 服务访问你的文件。
服务正在运行,却什么都不同步。 它有自己的例程——请确认你已经把例程搬过去,并且它们所需的账户存在于服务自己的账户列表中。
仍然遇到问题? 请联系我们,并附上你的操作系统以及服务对话框中显示的内容——通常这足以让我们立即定位原因。