Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Filesystems systemd忽略来自overlayFS的服务_Filesystems_Systemd_Openembedded_Overlays - Fatal编程技术网

Filesystems systemd忽略来自overlayFS的服务

Filesystems systemd忽略来自overlayFS的服务,filesystems,systemd,openembedded,overlays,Filesystems,Systemd,Openembedded,Overlays,我想在另一个分区上构建一个应用程序系统,一个应用程序文件系统。属于应用程序的所有二进制文件、配置文件和服务文件都应位于应用程序fs中 我正在使用以下版本:kernel4.9.x,systemdv234 应用程序分区安装在/opt,其中包括以下文件: /opt/usr/bin/app-binary /opt/etc/systemd/system/multiuser.target/link_2_app.service /opt/lib/systemd/system/app.service

我想在另一个分区上构建一个应用程序系统,一个应用程序文件系统。属于应用程序的所有二进制文件、配置文件和服务文件都应位于应用程序fs中

我正在使用以下版本:kernel4.9.x,systemdv234

应用程序分区安装在/opt,其中包括以下文件:

/opt/usr/bin/app-binary  
/opt/etc/systemd/system/multiuser.target/link_2_app.service  
/opt/lib/systemd/system/app.service
以下是服务文件:

[Unit]
Description=The application description.
After=syslog.target basic.target

[Service]
ExecStart=/opt/usr/bin/app-binary
Type=simple

[Install]
WantedBy=multi-user.target
为了使文件与rootfilesystem同步,我创建了两个覆盖,这可能是/etc/fstab条目(对不起,格式有一行不起作用):

这是在到达local-fs.target之前处理的

结果 我可以使用systemctl start app.service成功启动应用程序,但可以手动启动。“systemctl status app.service”的状态表示已启用。但该应用程序不是在启动时启动的。Systemd未给出有关尝试启动应用程序的消息

问题
有没有办法调试这种行为?systemd什么时候检查服务文件?有没有办法再次触发它?是否有其他方法可以使用systemd处理此用例?

systemd在启动时检查单元文件一次,一个在systemd启动之前创建覆盖的初始化脚本可以处理此用例


另一个想法(但未经测试)是:systemctl守护程序重新加载

我测试这不起作用


在我的情况下。我使用systemd networkd,并覆盖

发布你的
应用程序服务
文件。添加服务文件后,应用程序通过“systemctl start app.service”检查“systemctl is enabled app.service”和
journalctl-x | grep你的应用程序名称
成功启动。对于网络单元,安装单元文件覆盖后,我必须执行“systemctl restart systemd networkd”,以加载新配置。
/dev/app-partition /opt auto defaults,x-systemd.mount 0 2
overlay /etc overlay defaults,x-systemd.mount, x-systemd.after=opt.mount,lowerdir=/etc,upperdir=/opt/etc,workdir=/work/etc 0 2
overlay /lib/systemd/system overlay defaults,x-systemd.mount,x-systemd.after=opt.mount,lowerdir=/lib/systemd/system,upperdir=/opt/lib/systemd/system,workdir=/work/lib 0 2