一、systemctl命令简介

  CentOS 5使用SysV init;CentOS 6使用Upstart,CentOS 7使用Systemd管理守护进程。centos7采用 systemd管理,服务独立的运行在内存中,服务响应速度快,但占用更多内存。独立服务的服务启动脚本都在目录 /usr/lib/systemd/system里。Systend的新特性:

  • 系统引导时实现服务的并行启动;
  • 按需激活进程;
  • 系统实现快照;
  • 基于依赖关系定义服务的控制逻辑;

  systemctl可用于内省和控制“systemd”系统和服务管理器的状态。centos7.x系统环境下我们经常使用此命令启停服务,实际上此命令除了其他独立服务还有很多其他用途。

二、systemctl使用示例

1、查看命令帮助

[root@s153 system]# systemctl --help
systemctl [OPTIONS…] {COMMAND} …

2、启动服务

  接下来的操作实例以管理xinetd服务为例。

[root@s153 system]# systemctl start xinetd

3、查看服务状态

[root@s153 system]# systemctl status xinetd
● xinetd.service - Xinetd A Powerful Replacement For Inetd
Loaded: loaded (/usr/lib/systemd/system/xinetd.service; enabled; vendor preset: enabled)
Active: active (running) since 三 2022-07-20 10:29:26 CST; 1min 53s ago
Process: 15831 ExecStart=/usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid $EXTRAOPTIONS (code=exited, status=0/SUCCESS)
Main PID: 15832 (xinetd)
CGroup: /system.slice/xinetd.service
└─15832 /usr/sbin/xinetd -stayalive -pidfile /var/run/xinetd.pid

4、停止服务

[root@s153 system]# systemctl stop xinetd

5、查看服务是否活跃

[root@s153 system]# systemctl is-active xinetd
inactive
[root@s153 system]# systemctl start xinetd
[root@s153 system]# systemctl is-active xinetd
active

6、重新加载服务配置

  reload是在不重启服务的情况下重新加载配置文件。

[root@s153 system]# systemctl reload xinetd

7、重启服务

  restart命令实际上是先stop,然后start。

[root@s153 system]# systemctl restart xinetd

8、列出所有可用单元

[root@s153 system]# systemctl list-unit-files
UNIT FILE STATE
proc-sys-fs-binfmt_misc.automount static
dev-hugepages.mount static

9、列出所有已加载单元

[root@s153 system]# systemctl list-units
UNIT LOAD ACTIVE SUB DESCRIPTION
proc-sys-fs-binfmt_misc.automount loaded active waiting Arbitrary Executable File Formats File System Automount Point
sys-devices-pci0000:00-0000:00:01.1-ata2-host1-target1:0:0-1:0:0:0-block-sr0.device loaded active plugged QEMU_DVD-ROM CentOS_7_x86_64
sys-devices-pci0000:00-0000:00:05.0-virtio1-host2-target2:0:0-2:0:0:0-block-sda-sda1.device loaded active plugged QEMU_HARDDISK 1

10、查看可用systemctl管理的所有服务


  systemctl可用管理单元分很多种,日常工作中我们仅仅用于管理服务,unit的常见类型:

  • Service unit: 文件扩展名.service, 用于定义系统服务;
  • Target unit: 文件扩展名.target, 用于模拟实现"运行级别";
  • Device unit: 文件扩展名.device, 用于定义内核识别的设备;
  • Mount unit: 文件扩展名.mount, 用于定义文件系统的挂载点;
  • Socket unit: 文件扩展名.socket, 用于标识进程间通信用到的socket文件;
  • Snapshot unit: 文件扩展名.snapshot, 用于管理系统快照;
  • Swap unit: 文件扩展名.swap, 用于标识swap设备;
  • Automount unit: 文件扩展名.automount, 用于定义文件系统自动点设备;
  • Path unit: 文件扩展名.path, 用于定义文件系统中的一文件或目录;

11、注销服务

  服务被注销后该服务就无法通过systemctl进行启停管理。

[root@s153 system]# systemctl mask firewalld
Created symlink from /etc/systemd/system/firewalld.service to /dev/null.
[root@s153 system]# systemctl start firewalld
Failed to start firewalld.service: Unit is masked.

12、取消注销服务

[root@s153 system]# systemctl unmask firewalld
Removed symlink /etc/systemd/system/firewalld.service.
[root@s153 system]# systemctl start firewalld

13、设置服务开机自启动

[root@s153 system]# systemctl enable xinetd.service
Created symlink from /etc/systemd/system/multi-user.target.wants/xinetd.service to /usr/lib/systemd/system/xinetd.service.

14、取消服务开机自启动

[root@s153 system]# systemctl disable xinetd.service
Removed symlink /etc/systemd/system/multi-user.target.wants/xinetd.service.

15、查看机器信息

[root@s153 system]# systemctl list-machines
NAME STATE FAILED JOBS
s153 (host) running 0 0

1 machines listed.

16、查看系统环境变量

[root@s153 system]# systemctl show-environment
LANG=zh_CN.UTF-8
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin

17、重新加载unit文件

  如果手动修改了unit文件,可以使用此命令重新加载。

[root@s153 system]# systemctl daemon-reload

18、创建一个系统快照

[root@s153 system]# systemctl snapshot wuhs
wuhs.snapshot

19、删除指定快照

[root@s153 system]# systemctl delete wuhs

20、查看服务是否开机自启动

[root@s153 system]# systemctl is-enabled xinetd.service
enabled

21、杀死服务

[root@s153 system]# systemctl kill xinetd
[root@s153 system]# systemctl is-failed xinetd
inactive

22、进入救援模式

[root@s153 system]# systemctl rescue

Broadcast message from root@s153 on pts/1 (三 2022-07-20 13:08:30 CST):

The system is going down to rescue mode NOW!
#执行完命令后系统就进入了救援模式

#救援模式下切换到默认模式
[root@s153 ~]# systemctl default

23、关闭系统

[root@s153 ~]# systemctl poweroff

24、重启机器

[root@s153 ~]# systemctl reboot

25、系统睡眠

  suspend暂停模式,类似window环境的睡眠模式,会将系统的状态数据保存到内存中,然后关闭掉大部分的系统硬件,当然,并没有实际关机。当用户按下唤醒机器的按钮,系统数据会重内存中回复,然后重新驱动被大部分关闭的硬件,就开始正常运作!唤醒的速度较快。

[root@s153 ~]# systemctl suspend

26、查看系统启动模式

[root@s153 boot]# systemctl get-default
multi-user.target

27、设置系统为图形界面启动

[root@s153 system]# systemctl set-default graphical.target
Removed symlink /etc/systemd/system/default.target.
Created symlink from /etc/systemd/system/default.target to /usr/lib/systemd/system/graphical.target.

三、systemctl参数说明

1、使用语法

用法:systemctl [OPTIONS…] {COMMAND} …

2 、参数说明

参数 参数说明
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的注销
list-units 依据unit列出目前有启动的unit。若加上–all才会列出没启动的。(等价于无参数)
list-unit-files 列出所有以安装unit以及他们的开机启动状态(enabled、disabled、static、mask)。
–type=TYPE 就是unit type,主要有service,socket,target等
get-default 取得目前的 target
set-default 设定后面接的 target 成为默认的操作模式
isolate 切换到后面接的模式

3、unit file结构

文件通常由三部分组成:

  • [Unit]: 定义与Unit类型无关的通用选项;用于提供unit的描述信息,unit行为及依赖关系等。
  • [Service]:与特定类型相关的专用选项;此处为Service类型。
  • [Install]:定义由"systemctl enable"及"systemctl disable"命令在实现服务启用或禁用时用到的一些选项。

4、Unit段的常用选项

  • Description:描述信息,意义性描述;
  • After:定义unit的启动次序;表示当前unit应晚于哪些unit启动;其功能与Before相反;
  • Requies:依赖到其它的units;强依赖,被依赖的units无法激活时,当前的unit即无法激活;
  • Wants:依赖到其它的units;弱依赖;
  • Confilcts:定义units 的冲突关系;

5、Service段的常用选项

  • Type:用于定义影响ExecStart及相关参数的功能的unit进程类型;
    类型有:simple、forking、oneshot、dbus、notify、idle。
  • EnvironmentFile:环境配置文件;
  • ExecStart:指明启动unit要运行的命令或脚本;ExecStart, ExecStartPost
  • ExecStop:指明停止unit要运行的命令或脚本;
  • Restart:

6、Install段的常用配置:

  • Alias:
  • RequiredBy:被哪些unit所依赖;
  • WantBy:被哪些unit所依赖;

7、Unit文件样例

[root@s153 system]# cat chronyd.service
[Unit]
Description=NTP client/server
Documentation=man:chronyd(8) man:chrony.conf(5)
After=ntpdate.service sntp.service ntpd.service
Conflicts=ntpd.service systemd-timesyncd.service
ConditionCapability=CAP_SYS_TIME

[Service]
Type=forking
PIDFile=/var/run/chronyd.pid
EnvironmentFile=-/etc/sysconfig/chronyd
ExecStart=/usr/sbin/chronyd $OPTIONS
ExecStartPost=/usr/libexec/chrony-helper update-daemon
PrivateTmp=yes
ProtectHome=yes
ProtectSystem=full

[Install]
WantedBy=multi-user.target

转载于:https://blog.csdn.net/carefree2005/article/details/125886811

【linux systemctl】Linux命令之systemctl命令相关推荐

  1. Linux日常运维管理技巧(三)iptables规则备份和恢复、firewalld的9个zone、任务计划cron、chkconfig系统服务管理、添加服务命令、systemctl管理服务

    目录 Linux防火墙-netfilter iptables规则备份和恢复 Linux防火墙-firewalled firewalld的9个zone firewalld关于zone的操作 firewa ...

  2. Linux服务器,服务管理--systemctl命令详解,设置开机自启动

    Linux服务器,服务管理--systemctl命令详解,设置开机自启动 syetemclt就是service和chkconfig这两个命令的整合,在CentOS 7就开始被使用了. 摘要: syst ...

  3. Linux中systemctl详细理解及常用命令

    一.systemctl理解 Linux 服务管理两种方式service和systemctl systemd是Linux系统最新的初始化系统(init),作用是提高系统的启动速度,尽可能启动较少的进程, ...

  4. linux系统防火墙systemctl,linux systemctl命令详解

    systemctl命令是Linux下的一个命令,那么它具体语法是什么呢?下面由学习啦小编为大家整理了linux systemctl命令的相关知识,希望对大家有帮助! linux systemctl命令 ...

  5. 禁止linux关机,如何在Linux中禁用关机和重新启动命令

    shutdown命令调度一个Linux系统关闭电源的时间,它也可以用于在使用特定选项调用时停止,关闭电源或重启机器 ,并重新引导系统重新启动. 默认情况下,某些Linux发行版(如Ubuntu,Lin ...

  6. linux中sed命令用例,Linux中使用sed命令或awk命令修改常规配置文件

    一.方案: Linux中使用sed命令或awk命令修改常规配置文件 二.步骤: 1.假设有一个a.txt,内容如下: #!/bin/bash aa= bbb= ccc= #ddd= 2.如果想要把里面 ...

  7. linux先cd到mysql的运行路径下,Linux常用的服务器运维命令

    博主贯彻开源精神,本博客是转载自多篇文章,但是原文链接无法全部放入版权链接,无盈利,如有侵权,请及时联系删除 一:ps命令查看进程命令 -a,查看所有 -u,以用户(user)的格式显示 -x, 显示 ...

  8. Linux文档结构和常用命令

    每个月学习一遍. 文章目录 Linux目录结构 比较重要的目录 /dev目录 /etc目录 /proc目录 /usr目录 /var目录 文件种类 系统信息 系统关机.重启以及登出 文件和目录 文件搜索 ...

  9. 一、Docker:Linux/Windows在线安装Docker与命令大全总结

    Docker是一种基于Linux的开源的应用容器引擎,它能够实现一个隔离的.安全的.独立的容器环境,在这个容器中可以安装各种产品,例如MySQL.Nginx.Python.Redis等,并且能够实现秒 ...

  10. Linux常用命令和shell命令

    Linux常用命令和shell命令 1. 文件目录 创建目录 mkdir 目录名1 目录名2 ... 创建多级目录 mkdir -p 目录名 查看当前所在目录 pwd 创建文件 touch 文件名 删 ...

最新文章

  1. 【CF EDU59 E】 Vasya and Binary String (DP)
  2. 接力黄琨儿同志的《给玩命工作却对现状不满的IT人》
  3. 计算机应用基础课程B,计算机应用基础B卷_百度文库.DOC
  4. boost::local_time模块实现航班飞行时间的测试程序
  5. centos6实现kvm嵌套虚拟化
  6. JS基础--Date.parse(),Date.UTC()和Date.now()
  7. 【基础】弹出框的处理(五)
  8. 15.6. Plugin Hook 设计与实现
  9. MOSS 2010:Visual Studio 2010开发体验(23)——编写自定义的BCS连接器
  10. tensorboard的安装与使用
  11. 于的繁体字有几种写法_写字繁体字有几种写法 , 辈 字 用繁体字有几种写法?...
  12. 针对特定人员和部门树形数据,重新拆分构造新的树形数据思路。
  13. 使用ASP.NET MVC Web SignalR 构建单身聊天室(一)
  14. 16秋南开计算机应用答案,南开16秋学期《计算机应用基础》在线作业.doc
  15. Android NDK入门教程之快速定位Crash问题
  16. MemoryCache缓存
  17. 国内技术创新型公司的一个问题
  18. p u b g服务器维护中是什么意思,数控G71里面P和Q是什么意思,你知道吗?
  19. 淘客基地:拾牛IOS版更新至1.0.5版本
  20. 单容水箱液位控制系统matlab演示,单容水箱液位控制系统设计详解.doc

热门文章

  1. 推荐3本Python高分书籍,居家旅行必备神器!
  2. Android 增强版百分比布局库 为了适配而扩展
  3. 友盟的社会化分享和第三方登录集成步骤
  4. 怎样用matlab建立igbt的仿真分析模型,基于MATLAB/Simulink的IGBT导通模型研究
  5. 9款高质量学习软件,原来学霸都是这么炼成的!
  6. php 浏览商品足迹,iwebshop调取浏览足迹方法
  7. 华为新系统鸿蒙何时亮相,终于!华为鸿蒙系统正式发布,P50亮相
  8. Java面试遇到的智力题
  9. 使用 HeadSpin BYOD 进行现场测试
  10. CSDN发文章显示超时请重试