linux(十六) 系统引导过程及服务控制详解
Posted 云来云去-起飞
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux(十六) 系统引导过程及服务控制详解相关的知识,希望对你有一定的参考价值。
目录
一、引导过程
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 | 说明 |
0 | target | 关机状态,使用该级别时将会关闭主机 |
1 | rescue.target | 单用户模式,不需要密码验证即可登录系统,多用于系统维护 |
2 | multi-user.target | 用户定义/域特定运行级别。默认等同于3 |
3 | multi-user.target | 字符界面的完整多用户模式,大多数服务器主机运行在此级别 |
4 | multi-user.target | 用户定义/域特定运行级别。默认等同于3 |
5 | graphical.target | 图形界面的多用户模式,提供了图形桌面操作环境 |
6 | reboot.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(十六) 系统引导过程及服务控制详解的主要内容,如果未能解决你的问题,请参考以下文章