Linux之service命令基本使用

服务(service)管理

1. 介绍

  • 服务(service) 本质就是进程,但是是运行在后台的,通常都会监听某个端口,等待其它程序的请求,比如(mysqld , sshd、防火墙等),因此我们又称为守护进程,是 Linux 中非常重要的知识点。
  • 【原理图】
    在这里插入图片描述

2. service 管理指令

  1. service 服务名 [start | stop | restart | reload | status]
  2. CentOS7.0 后 很多服务不再使用 service ,而是 systemctl
  3. service 指令管理的服务在 /etc/init.d 查看
    在这里插入图片描述
    在这里插入图片描述

3. service 管理指令案例

  • 请使用 service 指令,查看,关闭,启动 network [注意:在虚拟系统演示,因为网络连接会关闭]
    指令:
service network status
service network stop
service network start

4. 查看服务名的方式

  1. 方式 1:使用 setup -> 系统服务 就可以看到全部。
  • 在虚拟机的终端中使用
setup
  • * 号说明是守护进程,和系统的是一起启动的。选中输入空格键也可以把 * 号去掉,下次启动的时候就不会随着系统一起启动了,需要手动启动
    在这里插入图片描述
    在这里插入图片描述
  1. 方式 2: /etc/init.d 看到 service 指令管理的服务
ls -l /etc/init.d

5. 服务的运行级别(runlevel):

Linux 系统有 7 种运行级别(runlevel):常用的是级别 35

  • 运行级别 0:系统停机状态,系统默认运行级别不能设为 0,否则不能正常启动
  • 运行级别 1:单用户工作状态,root 权限,用于系统维护,禁止远程登陆
  • 运行级别 2:多用户状态(没有 NFS),不支持网络
  • 运行级别 3:完全的多用户状态(有 NFS),无界面,登陆后进入控制台命令行模式
  • 运行级别 4:系统未使用,保留
  • 运行级别 5:X11 控制台,登陆后进入图形 GUI 模式
  • 运行级别 6:系统正常关闭并重启,默认运行级别不能设为 6,否则不能正常启动

开机的流程说明:
在这里插入图片描述

6. CentOS7 后运行级别说明

  • /etc/initab进行了简化 ,如下:
multi-user.target: analogous to runlevel 3
graphical.target: analogous to runlevel 5
  • 解释:
multi-user.target 相当于 init 3 级别
graphical.target 相当于 init 5 级别
  • To view current default target(查看当前运行级别), run(运行):
systemctl get-default

在这里插入图片描述

  • To set a default target(设置模式级别类型), run(运行):
systemctl set-default TARGET.target
  • 切换成图形界面(init 5 运行级别):
systemctl set-default graphical.target
  • 在上述切换运行级别的基础上重启系统后,依然会进入到 init 3 级别的终端界面,就不会再进入到图形界面了。
(完)