linux(十六) 系统引导过程及服务控制详解

Posted 云来云去-起飞

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux(十六) 系统引导过程及服务控制详解相关的知识,希望对你有一定的参考价值。

目录

 

一、引导过程

1.1.引导过程流程图:

1.2.解析MBR内存有什么

1.3.内核文件

1.3.grub菜单文件配置:

二、systemd的单元类型

三、运行级别所对应的systemd目标

3.1.针对以上表格,进行对命令进行解析

四、systemctl 工具及命令

4.1.systemctl 工具描述

4.2.systemctl 配置文件

4.3.ssh.service 文件解析

4.4.systemctl 命令大全

五、故障处理

5.1.修复MBR扇区故障

5.2.修复GRUB引导故障

5.3.忘记密码


一、引导过程

1.1.引导过程流程图:

 

 

1.2.解析MBR内存有什么

  • 启动引导程序:boot loader :446字节 :作用:寻找内核加载内核,自动生成iniframfs伪根,当驱动加载完成后,生产真正的根 (挂载/)

                                 并提供GRUOB引导菜单 Centos7 名字为GRUOB2 

  • 分区表:64字节 --1个分区16个字节,共4个分区
  • 16进制的字段  55AA /AA55  ---说名此硬盘为引导硬盘:2字节。

1.3.内核文件

  •    内核加载-- 驱动

1.3.grub菜单文件配置:

注:init初始化时,生产systemd 的第一个进程,pid 为1   init进程为6

二、systemd的单元类型

单元类型扩展名说明
service.service描述一个系统服务
socket.socket描述一个进程间通信的套接字
Device.device描述一个内核识别的设备文件
Mount.mount描述一个文件系统的挂载点
Automount.automount描述一个文件系统的自动挂载点
Swap.swap描述一个内存交换设备或交换文件
Path.path描述一个文件系统中文件或目录
Timer.timer描述一个定时器((用于实现类似cron的调度任务)
Snapshot.snapshot用于保存一个systemd的状态
Scope.scope使用systemd的总线接口以编程的方式创建外部进程
Slice.slice描述居于Cgroup的一组通过层次组织的管理系统进程
Target.target描述一组systemd的单元

 

三、运行级别所对应的systemd目标

运行级别systemd的target说明
0target关机状态,使用该级别时将会关闭主机
1rescue.target单用户模式,不需要密码验证即可登录系统,多用于系统维护
2multi-user.target用户定义/域特定运行级别。默认等同于3
3multi-user.target字符界面的完整多用户模式,大多数服务器主机运行在此级别
4multi-user.target用户定义/域特定运行级别。默认等同于3
5graphical.target图形界面的多用户模式,提供了图形桌面操作环境
6reboot.target重新启动,使用该级别时将会重启主机

3.1.针对以上表格,进行对命令进行解析

  • init 0 安全关机
  • init 1 单用户模式,类似windows安全模式
  • init 2 没有网络,没共享存储
  • init 3 字符界面,多用户模式(命令级)没有图形化界面
  • init4 保留未使用
  • int 5 图形界面多用户模式
  • int 6 重新启动系统,和reboot一样,shutdown -r
  • 查看当前运行级别

四、systemctl 工具及命令

4.1.systemctl 工具描述

    systemctl 是一个systemd 工具,主要负责控制sytemd系统和服务管理器,它融合之前service 和chkconfig 的功能于一体, 可以使用它永久性或只在当前会话中启用/禁用服务。

     在使用systemctl命令时,可以省略服务单元名称的标识.servcie,也就时如果输入的是无后缀标识的,它默认为.service出来处理。

4.2.systemctl 配置文件

     /etc/systemd/system/ 存放不同级别的开启自启服务。

     /run/systemd/system /系统执行过程中所产生的服务脚本所在目录

     /usr/lib/systemd/system 每个服务最主要的启动脚本设置,类似于之前的/etc/initd.d

4.3.ssh.service 文件解析

 

4.4.systemctl 命令大全

systecmtl --version 查看systemd的版本

  

systemctl start 服务名 开启服务

systemctl stop 服务名 停止服务

systemctl restart 服务名 重启服务

systemctl reload 重新加载服务配置文件(服务不会中断)

systemctl status 服务名 查看服务状态

systemctl enable 服务名 设置开机自启动

systemctl diable 服务名  关闭开机自启动

systemctl is-enabled 服务名 查看是否开机自启动

systemctl list-unit-files | grep  enabled 查看已经设置开机自动的服务列表

systemctl is-active 服务启动状态

systemctl is-failed 服务失败状态

systemctl mask 服务名  屏蔽服务

systemctl unmask 服务名 取消服务屏蔽

systemctl cat 服务名.service 查看服务配置

systemctl get-default 查看系统当前默认启动的target

systemctl set-default taget  设置永久系统启动target

systemd-analyze 查看系统启动耗时。

五、故障处理

5.1.修复MBR扇区故障

  •       故障原因

                 不正确的分区操作或磁盘读写误操作

  •        故障现象

                无法加载操作系统,开机后黑屏

  •        解决思路

               应提前做好备份文件

               以安装光盘引导进入急救模式

               从备份文件中恢复

5.2.修复GRUB引导故障

  •      故障原因

            MBR中的GRUB引导程序遭到破坏

            grub.conf 文件丢失、引导配置有误。

  •      故障现象

           系统引导停滞,显示“grup>” 提示符

  •      解决思路

           尝试手动输入引导命令

           进入急救模式、重写或者重备份中恢复grub.conf

           向MBR扇区中新建grub程序

5.3.忘记密码

  •        故障原因

             遗忘root用户密码

  •        故障现象

             无法进行需要root权限的管理操作

              若没有其他可用账户,无法登录系统

  •        解决方案

              进入急救模式,重置密码    

以上是关于linux(十六) 系统引导过程及服务控制详解的主要内容,如果未能解决你的问题,请参考以下文章

Linux操作系统的引导过程及初始化的必要操作详解

Linux系统引导过程及引导修复详解

Linux引导过程及服务控制

引导过程与服务控制

深入了解linux操作系统引导过程详解

深入了解linux操作系统引导过程详解