6赞
6914
当前位置:  开发笔记 > 编程语言 > 正文

linux运维之通过systemctl管理服务-linux运维

自centOS7后,新增了一个管理服务的命令——systemctl,通过这个命令可以非常方便的管理系统上的服务。

自centOS7后,新增了一个管理服务的命令——systemctl,通过这个命令可以非常方便的管理系统上的服务。

通过systemctl开启、关闭服务

下面列出关于服务的开启、关闭相关选项

  • start 开启服务

  • stop 关闭服务

  • restart 重启服务

  • status 查看服务状态

  • reload 重新载入配置文件(不关闭服务)

  • enable 开机自启动该服务

  • disable 关闭开机自启动

下面通过案例来学习

# 查看服务运行状况
# systemctl status atd
● atd.service - Job spooling tools
   Loaded: loaded (/usr/lib/systemd/system/atd.service; enabled; vendor preset: enabled)
   Active: active (running) since Sat 2020-11-07 16:20:59 CST; 3 days ago
 Main PID: 3002 (atd)
   CGroup: /system.slice/atd.service
           └─3002 /usr/sbin/atd -f
Nov 07 16:20:59 iz8vb626ci0aehwsivxaydz systemd[1]: Started Job spooling tools.
Nov 07 16:20:59 iz8vb626ci0aehwsivxaydz systemd[1]: Starting Job spooling tools...

通过上面显示的信息,我们可以获取很多信息。从第二行Loaded,出现了enabled表示该服务开机自启动。从第三行的running得知该服务正在运行中。

下面再来演示关闭、启动服务

# systemctl stop atd
# systemctl start atd

关于服务的运行状况,除了常见的running、dead等,还有一些,下面列出

  • active(running) 正在运行

  • active(waiting):等待执行(等其他服务执行后,再执行)

  • active(exited):仅执行一次就正常结束的服务

  • inactive(dead):服务未启动

另外,关于服务开机是否启动也有几个选项:

  • enable :开机启动

  • disable:开机不启动

  • static:开机不能自启动,但能被其他自启动的服务启动

  • mask:无论如何也不会启动,该服务已被强制注销

通过systemctl观察系统上服务

通过systemctl可以查看目前有哪些服务正在运行,也可以查看系统上所有的服务(包括未启动的),还可以查看某一类型的服务。

list-units 列出当前所有启动的服务,若没有使用任务选项,则默认使用该选项。加上-a则显示所有,包括未启动的服务

--type=TYPE 列出某一类型的服务

下面看演示内容

# 列出系统所有正在运行的服务
# systemctl 
  UNIT                                                     LOAD      ACTIVE SUB       DESCRIPTION
  proc-sys-fs-binfmt_misc.automount                        loaded    active running   Arbitrary Executable File Formats File System Automoun
  sys-devices-pci0000:00-0000:00:03.0-virtio0-net-eth0.device loaded    active plugged   Virtio network device
  sys-devices-pci0000:00-0000:00:04.0-virtio1-virtio\x2dports-vport1p1.device loaded    active plugged   /sys/devices/pci0000:00/0000:00:04.
  ……
  
# 列出系统正在运行的service类型的服务
# systemctl --type=service
   UNIT                               LOAD      ACTIVE SUB     DESCRIPTION
  aegis.service                      loaded    active running LSB: aegis update.
  aliyun.service                     loaded    active running aliyun-assist
  atd.service                        loaded    active running Job spooling tools
  auditd.service                     loaded    active running Security Auditing Service
# 列出系统上所有服务,包括未运行的
# systemctl -a
……

通过systemctl管理不同的操作环境(target unit)

在centos7中,有非常多个target unit,但这里我们只要知道几个常用的target unit,下面列出常用的target unit:

  • graphical.target 图形模式

  • multi-user.target 文本模式

  • rescue.target 一般救援模式

  • emergency.target 紧急救援模式

接下来再看如何查看系统默认的操作环境,以及如何去修改操作环境。

systemctl [选项] [unit.target]
[选项]
  get-default:查看系统默认操作环境
  set-default:设置系统默认操作环境
  
# 查看默认的操作环境
# systemctl get-default
multi-user.target
# 重新设置新的默认操作环境
# 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 get-default
graphical.target

以上就是linux运维之通过systemctl管理服务的详细内容,更多请关注 第一PHP社区 其它相关文章!

推荐阅读
  • docker把镜像打包成文件的方法是:执行命令【dockersave-o要保存的文件名要保存的镜像】即可,如【dockersave-occ.tarbb:v1.0】。 ... [详细]
  • 查看docker容器停止原因的方法:首先使用dockerps-a查看容器的状态,先判断容器是否启动;然后使用dockerlogs查看业务日志,判断业务是否正常;最后可以使用dockerexec-it进入容器查看错误。 ... [详细]
  • docker在本地建仓库的方法:首先安装docker并设置第三方镜像;然后安装docker本地仓库并启动本地仓库;最后上传镜像到仓库中即可。 ... [详细]
  • centos编译安装php-fpm的方法:首先通过“yuminstallwgetvim”安装依赖软件;然后安装php依赖;接着拷贝“php.ini-production”到编译时指定的配置文件目录;最后检查PHP版本即可。 ... [详细]
  • 你们要的MyCat实现MySQL分库分表来了
    ❝借助MyCat来实现MySQL的分库分表落地,没有实现过的,或者没了解过的可以看看❞前言在之前写过一篇关于mysql分库分表的文章,那篇文章只是给大家提供了一个思路,但是回复下面有很多说是细节问题没有提到。所以咔咔就在出了这篇文章。本文只是针对其中的一个细节而已,比如如何落地MySQL的分库分表,本文使用数据库中间件MyCat来实现。 ... [详细]
  • 协程(coroutine)是Go语言中的轻量级线程实现,由Go运行时(runtime)管理。20万个协程占用了500M内,50万KB;平均一个协程占用2.5KB。 ... [详细]
  • yum安装go语言的方法:首先执行【yum-yinstallgolang】命令安装go;然后编辑profile文件,配置环境变量;最后执行【sourceetcprofile】命令即可。 ... [详细]
  • Djang中静态文件配置方法
    这篇文章主要介绍Djang中静态文件配置方法的相关资料,django静态文件配置主要是为了让用户请求django服务器时能找到静态文件返回,需要的朋友可以参考下 ... [详细]
  • saltstack是使用python编写的开源自动化部署与管理工具,拥有良好的扩展性以及优秀的执行效率,配置简单,可以工作在多平台上,经常被描述为Func加强版+Puppet精简版 ... [详细]
  • 下面小编就为大家带来一篇python中string模块各属性以及函数的用法介绍。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧 ... [详细]
devbox
正茂专家
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved PHP1.CN 第一PHP社区 版权所有 京ICP备19059560号-4