没有合适的资源?快使用搜索试试~ 我知道了~
systemd启动脚本.pdf
资源详情
资源评论
资源推荐
systemd
启动脚本
• 发表于: 2018 年 7 月 22 日
• 分类: 运维技术
• 标签: centos7, 启动脚本
一、配置文件
一个服务怎么启动,完全由它的配置文件决定。下面就来看,配置文件有些什么内容。
配置文件主要放在/usr/lib/systemd/system 目录,也可能在/etc/systemd/system 目录。找到配置文件以后,使用文本
编辑器打开即可。
systemctl cat 命令可以用来查看配置文件,下面以 sshd.service 文件为例,它的作用是启动一个 SSH 服务器,供其
他用户以 SSH 方式登录。
$ systemctl cat sshd.service[Unit]Description=OpenSSH server daemon
Documentation=man:sshd(8) man:sshd_config(5)After=network.target sshd-keygen.service
Wants=sshd-keygen.service[Service]EnvironmentFile=/etc/sysconfig/sshd
ExecStart=/usr/sbin/sshd -D $OPTIONSExecReload=/bin/kill -HUP $MAINPIDType=simple
KillMode=process
Restart=on-failure
RestartSec=42s[Install]WantedBy=multi-user.target
可以看到,配置文件分成几个区块,每个区块包含若干条键值对。
下面依次解释每个区块的内容。
二、 [Unit] 区块:启动顺序与依赖关系。
Unit 区块的 Description 字段给出当前服务的简单描述,Documentation 字段给出文档位置。
接下来的设置是启动顺序和依赖关系,这个比较重要。
After 字段:表示如果 network.target 或 sshd-keygen.service 需要启动,那么 sshd.service 应该在它们之后启动。
相应地,还有一个 Before 字段,定义 sshd.service 应该在哪些服务之前启动。
注意,After 和 Before 字段只涉及启动顺序,不涉及依赖关系。
举例来说,某 Web 应用需要 postgresql 数据库储存数据。在配置文件中,它只定义要在 postgresql 之后启动,而
没有定义依赖 postgresql 。上线后,由于某种原因,postgresql 需要重新启动,在停止服务期间,该 Web 应用就
会无法建立数据库连接。
设置依赖关系,需要使用 Wants 字段和 Requires 字段。
Wants 字段:表示 sshd.service 与 sshd-keygen.service 之间存在"弱依赖"关系,即如果"sshd-keygen.service"启动
失败或停止运行,不影响 sshd.service 继续执行。
Requires 字段则表示"强依赖"关系,即如果该服务启动失败或异常退出,那么 sshd.service 也必须退出。
注意,Wants 字段与 Requires 字段只涉及依赖关系,与启动顺序无关,默认情况下是同时启动的。
m0_46388768
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0