理论——Linux的引导过程与服务控制

文章目录

  • 前言
  • 一、Linux操作系统引导过程
    • 1.引导过程总览
    • 2.系统初始化进程
  • 二、排除启动类故障
    • 1.修复MBR扇区故障
    • 2.修复GRUB引导故障
    • 3.遗忘root用户密码
  • 三、服务控制及切换运行级别
    • 1、系统服务控制
    • 2、Linux系统的运行级别
  • 四、优化启动过程
    • 1、ntsysv工具
    • 2、systemctl工具

前言

系统引导是操作系统运行的开始,在用户能够正常登录到系统之前,Linux的引导过程完成了一系列的初始化任务,并加载必要的程序和命令终端,为用户登录做好准备
从CentOS7版本,系统启动和服务管理都交给systemd进行管理

一、Linux操作系统引导过程

1.引导过程总览

在这里插入图片描述
引导过程主要分如下几个方面
1、开机自检(BIOS)
自建基本的硬盘,找到第一块能够引导的设备
2、MBR引导
找到硬盘MBR引导分区,读取GRUB信息(grub.conf在哪里?)
3、GRUB菜单
读取grub.conf信息,里面包含内核信息、等待时间等
4、加载内核(kernel)
加载内核和镜像文件
5、init进程初始化
加载初始化进程1 PID1

2.系统初始化进程

init进程

  • 有Linux内核加载运行 /sbin/init程序
  • init进程是系统中第一个进程
  • init进程的PID(进程标记)号永远为1
    Systemd
  • Systemd是Linux操作系统的一种init软件
  • CentOS7中采用全新的Systemd启动方式,取代传统的SysVinit
  • CentOS7中运行的第一个init进程是/lib/systemd/systemd
    Systemd单元类型
    理论——Linux的引导过程与服务控制_第1张图片
    运行级别所对应的Systemd目标
    理论——Linux的引导过程与服务控制_第2张图片

二、排除启动类故障

1.修复MBR扇区故障

故障原因

  • 病毒、木马等造成的破坏
  • 不正确的分区操作、磁盘读写误操作

故障现象

  • 找不到引导程序,启动中断
  • 无法加载操作系统,开机后黑屏

解决思路

  • 应提前作好备份文件
  • 以安装光盘引导进入急救模式
  • 从备份文件中恢复

2.修复GRUB引导故障

故障原因

  • MBR中的GRUB引导程序遭到破坏
  • grub.com文件丢失、引导配置有误

故障现象

  • 系统引导定制,显示“grub>”提示符

解决思路

  • 尝试手动输入引导命令
  • 进入急救模式,重写或者从备份中恢复grub.conf
  • 向MBR扇区中重建grub程序

3.遗忘root用户密码

故障原因

  • 遗忘root用户的密码

故障现象

  • 无法进行需要root权限的管理操作
  • 若没有其他可用账号,将无法登录系统

解决思路

  • 进入急救模式,重设密码

三、服务控制及切换运行级别

1、系统服务控制

systemctl 【控制类型】 【服务名称】

控制类型

  • start:启动
  • stop:停止
  • restart:重新启动
  • reload:重新加载
  • status:查看服务状态
  • disable:开机永不启动
  • enable:开机启动

系统服务的启动和控制

  • 查看系统服务的启动状态

systemctl is-enabled 【服务名称】

  • 设置系统服务的启动状态

systemctl enable/disable【服务名称】

  • ntsysv系统鼓舞管理工具

ntsysv --level 【级别列表】

2、Linux系统的运行级别

查看运行级别

  • runlevel命令
  • systenmctl工具
    注:runlevel只能查看切换运行级别与当前运行级别;systemctl是能查看默认的运行级别

临时切换运行级别

  • init命令
  • systemctl工具
    注:init的命令参数是运行级别所对应的数字;systemctl的命令参数是具体的target

设置永久运行级别

四、优化启动过程

1、ntsysv工具

  • 提供一个交互式、可视化窗口
  • 可以在字符终端运行
  • 便于集中管理多个服务

2、systemctl工具

  • 不提懂交互式、可视化窗口
  • 管理单个服务效率更高

你可能感兴趣的:(理论,Linux)