分享

OS linux - systemd的配置文件 和target文件

 看见就非常 2022-03-14

systemd

Centos 7: systemd        配置文件:/etc/systemd/system;/usr/lib/systemd/system

(Centos 5: SysV init       配置文件:/etc/inittab)

systemd是个守护进程,pid号为1,后面所有启动的服务或进程都是systemd的子进程及子进程的子进程

一旦内核自解压完成,则加载 systemd 进程(其是老式 System V 系统的 init 程序的替代品),并转移控制权到 systemd。

systemd可以被软链接为init

UID        PID  PPID  C STIME TTY          TIME CMD
root         1     0  0 Jan23 ?        00:00:01 /sbin/init skip_initramfs

systemd的配置文件

位置:/etc/systemd/system (实际是,符号链接,指向/usr/lib/systemd/system,或/lib/systemd/system)

 

配置文件的格式解释
(实例说明:/etc/systemd/system/default.target.wants/abc.service)

[Unit]
Description=abc service
After=some.service dbus.service
ConditionPathExists=/Abc/bin/Chuck

[Service]
Type=simple
Restart=always
WorkingDirectory=/Abc/bin
ExecStart=/Abc/bin/Chuck

[Install]
WantedBy=default.target

注释
[Unit]
Description=abc service  #描述
After=some.service dbus.service #在some dbus 服务后启动
ConditionPathExists=/Abc/bin/Chuck # 文件存在

[Service]
Type=simple # 服务类型
Restart=always #停止后,无条件重启
WorkingDirectory=/Abc/bin #执行文件存放的路径
ExecStart=/Abc/bin/Chuck #执行文件

[Install]
WantedBy=default.target # 服务所在的target (/etc/systemd/system/default.target)

target文件,依赖其它的target文件

local-fs-pre.target -> local-fs.target
+
emergency.service( /bin/plymouth ; /lib/systemd/systemd-sulogin-shell)->emergency.target->
->
sysinit.target
->
basic.target
->
default.target
->Abc.service

#plymouth 开源的开机动画组件
#sulogin 可以进行单用户登录,在启动时Shell将不会读取/etc/profile或$HOME/.profile文件。

systemd启动流程

图 1:systemd 的启动流程

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多