我有一个基于 inotify 的服务,可以将 LAN 的 git 目录备份到 Dropbox。我尝试将 git 目录保留在 Dropbox 中,但我有多个 git 客户端,因此经常在那里收到错误文件。
在这个开发的早期阶段,这是一个相当繁忙和健谈的系统服务,它想要登录到 ram 驱动器。我不想使用/tmp
,因为其他应用程序依赖于那里的空间。
要在我的 fstab 中创建 ram 驱动器,我有这个:
tmpfs /mnt/ram tmpfs nodev,nosuid,noexec,nodiratime,size=1024M 0 0
我需要确保在备份服务启动之前安装了 ram 驱动器。我想为延迟启动的服务设置一个条件。
我看到人们将*.mnt
服务作为先决条件的建议,但我没有看到任何文件/lib/systemd/system
可以提供我需要的服务的名称。
我如何识别这个坐骑?还有另一种方法吗?
据我了解您的情况,您已经编写了一个 systemd 服务文件来加载您自制的备份服务。现在您要确保 ram 驱动器安装(由 /etc/fstab 中的条目定义)在备份服务启动之前可用。
我自己没有这样做,我只是在手册页中查找它。所以这可能会也可能不会奏效。
根据
man systemd.unit
,在“[UNIT] SECTION OPTIONS”中,有一个看起来很有希望的开关:出于测试目的,您可以添加
noauto
到您的fstab
. 如果这可行,您的 ram 驱动器应该在重新启动后自动安装 - 如果它被配置为您的备份服务的依赖项。至少在 Arch 上,生成的 systemd 挂载
/etc/fstab
被部署到/run/systemd/generator
例如在我的系统上,我可以使用下面的列表添加到我的服务文件中
ls -la /run/systemd/generator