引导期间无法启动 systemd 服务

引导期间无法启动 systemd 服务

一旦安装了 fstab 条目,我就会尝试在引导期间启动 systemd 服务。

我已关注设置 systemd 服务在 fstab 挂载后执行并添加了以下详细信息

# cat /etc/fstab
/dev/mmcblk1p11 /data       ext4    defaults        0 2

# systemctl list-units | grep '/data' | awk '{ print $1 }'
data.mount

# cat /usr/lib/systemd/system/data.service
[Unit]
Description=My system
After=data.mount

[Service]
Type=oneshot
ExecStartPre=mountpoint -q /data
ExecStart=/usr/etc/data.sh
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

问题是,它不会在引导期间启动。不过,手动重启似乎有效。

# systemctl status data.service
  data.service - My system
   Loaded: loaded (/usr/lib/systemd/system/data.service; disabled; vendor preset: enabled)
   Active: inactive (dead)

# systemctl enable data.service
Created symlink /etc/systemd/system/multi-user.target.wants/data.service ��→ /usr/lib/systemd/system/data.service.
# systemctl restart data.service
         Starting My system...
[  OK  ] Started My system.

我错过了什么吗?

答案1

我会尝试两件事。您说手动启动有效,但在您的示例中您显示

systemctl enable data.service

您在重新启动之前是否执行过此启用命令?必须启用它才能在引导时启动。

第二我认为 After= 行需要是服务名称。尝试改变

After=data.mount 

After=data.service 

看看会发生什么。

相关内容