systemctl理解

systemctl理解

Linux 服务管理两种方式service和systemctl

systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,尽可能启动较少的进程,尽可能更多进程并发启动。
systemd对应的进程管理命令是systemctl

systemctl命令兼容了service

systemctl也会去/etc/init.d目录下,查看,执行相关程序

systemctl redis start
 
systemctl redis stop
 
# 开机自启动
 
systemctl enable redis
systemctl命令管理systemd的资源Unit

systemd的Unit放在目录/usr/lib/systemd/system(Centos)或/etc/systemd/system(Ubuntu)
创建一个.service可实现开机自启动
在这里插入图片描述

主要有四类类型文件

  1. .mount
  2. .service
  3. .target
  4. wants
.mount文件

.mount文件定义了一个挂载点,[Mount]节点里配置了What,Where,Type三个数据项
在这里插入图片描述

等同于以下命令:

mount -t hugetlbfs /dev/hugepages hugetlbfs

.service文件

.service文件定义了一个服务,分为[Unit],[Service],[Install]三个数据项
在这里插入图片描述

[Unit]

Description:描述,

After:在network.target,auditd.service启动后才启动

ConditionPathExists: 执行条件

[Service]

EnvironmentFile:变量所在文件

ExecStart: 执行启动脚本

Restart: fail时重启

[Install]

Alias:服务别名

WangtedBy: 多用户模式下需要的

.target文件

.target定义了一些基础的组件,供.service文件调用
在这里插入图片描述

.wants文件

.wants文件定义了要执行的文件集合,每次执行,.wants文件夹里面的文件都会执行
在这里插入图片描述

二、常用命令

1.查看版本号
systemctl –-version

2.管理服务(unit)
systemctl 提供了一组子命令来管理单个的 unit,其命令格式为:

systemctl [command] [unit]

command 主要有:

start:立刻启动后面接的 unit。

stop:立刻关闭后面接的 unit。

restart:立刻关闭后启动后面接的 unit,亦即执行 stop 再 start 的意思。

reload:不关闭 unit 的情况下,重新载入配置文件,让设置生效。

enable:设置下次开机时,后面接的 unit 会被启动。

disable:设置下次开机时,后面接的 unit 不会被启动。

status:目前后面接的这个 unit 的状态,会列出有没有正在执行、开机时是否启动等信息。

is-active:目前有没有正在运行中。

is-enable:开机时有没有默认要启用这个 unit。

kill :不要被 kill 这个名字吓着了,它其实是向运行 unit 的进程发送信号。

show:列出 unit 的配置。

mask:注销 unit,注销后你就无法启动这个 unit 了。

unmask:取消对 unit 的注销。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值