喜迎
春节

SystemD


SystemD

简介

SystemD 是 Linux 的系统管理器,它的主要接口是 systemctl(即用户执行的命令)。

通过 systemctl 接口,可以启动/停止“单元”(unit),最常用的单元是“服务单元”(service),即系统守护程序。其他单元还有套接字单元(network socket)、定时器单元(timer)等等。

服务单元会有一个服务描述文件,里面设置启动该服务需要知道的信息,比如 sshd 的服务描述是“在多用户模式下,等待网络可用后,运行 SSH 服务器。” 修改服务描述文件以后,必须重新启动服务,修改才会生效。

服务描述文件

下面是一个服务描述文件的示例。它有很多设置,但是常用的就是那么几个。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[Unit]
Description=OpenBSD Secure Shell server
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target auditd.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run

[Service]
EnvironmentFile=-/etc/default/ssh
ExecStartPre=/usr/sbin/sshd -t
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
ExecReload=/usr/sbin/sshd -t
ExecReload=/bin/kill -HUP [Unit]
Description=OpenBSD Secure Shell server
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target auditd.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run

[Service]
EnvironmentFile=-/etc/default/ssh
ExecStartPre=/usr/sbin/sshd -t
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
ExecReload=/usr/sbin/sshd -t
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartPreventExitStatus=255
Type=notify
RuntimeDirectory=sshd
RuntimeDirectoryMode=0755

[Install]
WantedBy=multi-user.target
Alias=sshd.service

网上有一些描述文件生成器,可以使用。

系统的单元描述文件,一般放在目录/etc/systemd/system。用户的单元描述文件放在目录/etc/systemd/user。命令systemctl status xxx.service会显示单元描述文件的位置。


文章作者: Crazy Boy
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Crazy Boy !
评 论
 本篇
SystemD
SystemD
SystemD简介SystemD 是 Linux 的系统管理器,它的主要接口是 systemctl(即用户执行的命令)。 通过 systemctl 接口,可以启动/停止“单元”(unit),最常用的单元是“服务单元”(service),即系
2024-05-22
下一篇 
xargs 命令
xargs 命令
xargs 命令简介xargs 用于将标准输入(stdin),转成其后命令的字符串参数。它通常跟管道命令(|)结合使用。 1$ {{command1}} | xargs {{command2}} 上面是 xargs 的用法。正常情况下,第一
2024-05-22

SystemD

简介

SystemD 是 Linux 的系统管理器,它的主要接口是 systemctl(即用户执行的命令)。

通过 systemctl 接口,可以启动/停止“单元”(unit),最常用的单元是“服务单元”(service),即系统守护程序。其他单元还有套接字单元(network socket)、定时器单元(timer)等等。

服务单元会有一个服务描述文件,里面设置启动该服务需要知道的信息,比如 sshd 的服务描述是“在多用户模式下,等待网络可用后,运行 SSH 服务器。” 修改服务描述文件以后,必须重新启动服务,修改才会生效。

服务描述文件

下面是一个服务描述文件的示例。它有很多设置,但是常用的就是那么几个。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
[Unit]
Description=OpenBSD Secure Shell server
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target auditd.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run

[Service]
EnvironmentFile=-/etc/default/ssh
ExecStartPre=/usr/sbin/sshd -t
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
ExecReload=/usr/sbin/sshd -t
ExecReload=/bin/kill -HUP [Unit]
Description=OpenBSD Secure Shell server
Documentation=man:sshd(8) man:sshd_config(5)
After=network.target auditd.service
ConditionPathExists=!/etc/ssh/sshd_not_to_be_run

[Service]
EnvironmentFile=-/etc/default/ssh
ExecStartPre=/usr/sbin/sshd -t
ExecStart=/usr/sbin/sshd -D $SSHD_OPTS
ExecReload=/usr/sbin/sshd -t
ExecReload=/bin/kill -HUP $MAINPID
KillMode=process
Restart=on-failure
RestartPreventExitStatus=255
Type=notify
RuntimeDirectory=sshd
RuntimeDirectoryMode=0755

[Install]
WantedBy=multi-user.target
Alias=sshd.service

网上有一些描述文件生成器,可以使用。

系统的单元描述文件,一般放在目录/etc/systemd/system。用户的单元描述文件放在目录/etc/systemd/user。命令systemctl status xxx.service会显示单元描述文件的位置。


文章作者: Crazy Boy
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Crazy Boy !
评 论
 本篇
SystemD
SystemD
SystemD简介SystemD 是 Linux 的系统管理器,它的主要接口是 systemctl(即用户执行的命令)。 通过 systemctl 接口,可以启动/停止“单元”(unit),最常用的单元是“服务单元”(service),即系
2024-05-22
下一篇 
xargs 命令
xargs 命令
xargs 命令简介xargs 用于将标准输入(stdin),转成其后命令的字符串参数。它通常跟管道命令(|)结合使用。 1$ {{command1}} | xargs {{command2}} 上面是 xargs 的用法。正常情况下,第一
2024-05-22
  目录
  目录