使用 systemd 更改启动服务的顺序

使用 systemd 更改启动服务的顺序

目前,我的计算机在显示登录屏幕之前启动了很多服务(如 docker、apache2、mysql、networking)。我想启动这些服务登录屏幕,以便在登录时继续启动。 如何更改服务顺序?

如果这不可能,是否有其他方法将服务移出“关键链“?

这是我的关键链:

图形.目标@14.613s
└─多用户.target @14.613s
  └─getty.target @14.613s
    └─[电子邮件受保护]@14.612秒
      └─systemd-user-sessions.service @11.369s +38ms
        └─basic.target @11.207s
          └─paths.target @11.207s
            └─cups.path @11.207s
              └─sysinit.target @11.192s
                └─networking.service @3.243s +7.948s
                  └─systemd-random-seed.service @3.185s +57ms
                    └─systemd-remount-fs.service @3.043s +140ms
                      └─keyboard-setup.service @1.977s +1.065s
                        └─systemd-udevd.service @1.963s +11ms
                          └─systemd-tmpfiles-setup-dev.service @1.690s +273ms
                            └─kmod-static-nodes.service @1.567s +113ms
                              └─system.slice @1.521s
                                └─-.slice @1.520s

答案1

您可以通过创建或修改该服务的 systemd 单元文件来更改服务的启动顺序,例如在 Ubuntu 中,您可以通过编辑其单元文件中的选项“之后”来更改 LightDM“跨桌面显示管理器”

/lib/systemd/system/lightdm.service

相关内容