linux 引导过程和服务控制
目录
一、引导分区
二、服务控制
三、运行级别
四、systemd初始化
五、模拟错误
一、引导分区
原理:引导分区是指在开机启动到进入系统这之间的过程
引导分区的过程:1.开机自检
自检顺序:BIOS,cup,内存,显卡,键盘
根据预设的顺序控制权交给硬盘(第一个硬盘或者光驱)
2.mbr引导
机器的硬盘启动系统,从第一个硬盘扇区的mbr主引导分区的位置开始
主引导分区512字节,记录硬盘分区,是进入文件系统,设备,配置文件
硬盘结束交给grub分区
3.grub菜单启动
位置/boot/grub2/grub.cfg
主要是显示系统选择

4.加载内核
目录位置:/boot/vmlinuz-3.10.0-693.e17.x8664
编译好的特殊二进制文件,是硬盘和系统之间的连接,将内核和相关的系统镜像文件加载到内 存中,交给进程初始化
5.进程初始化
目录位置:/sbin/init
将/sbin/init中的程序(内核和硬件文件)加载到内存中,完成初始化
完成初试化后可以进入系统
二、服务控制
使用systemctl命令管理服务类型
服务的目录:/user/lib/systemd
服务命令:systemctl start开启服务
systemctl stop关闭服务
systemctl restart 重启服务
systemctl reload重新加载服务配置文件
systemctl status 查看服务状态
systemctl enable开机自启
systemctl disable 关闭开机自启
systemctl status firewalld.service 查看防火墙的状态

关闭防火墙
命令:systemctl stop firewalld.service
可以看到actice已经是dead了

打开防火墙
可以看到active已经是running了

三、运行级别
原理:是指现在的系统页面是什么类型,可以是单用户,字符型用户
使用runlevel查看当前运行级别和之前运行级别
N代表之前没有改变,3表示当前运行级别是3字符界面

运行级别分类:0:关机(target)
1:单用户,在生产中只有系统维护时会进入单用户模式(rescue.target)
2,3,4相当于字符页面(multi-user.target)
5:图形化界面(graphical.target)
6: 重启(reboot.target)
便捷操作:init +数字
可以看到init 5将当前页面改为5图形化界面

默认级别:表示开机时默认进入哪个级别
查看默认级别:systemctl get-defaults
可以看到当前默认级别时字符界面,所以开机时自动进入字符页面

修改默认级别过程:
1.查看默认级别:systemctl get-default

2.修改默认级别:systemctl set-default
将其默认级别改为图形化界面(在这里必须使用graphical.target格式)

3.关机重启
查看默认级别,可以看到已经修改完成

四、进程初始化
初试化区别:两种init和systemd
init现在已经基本淘汰,init是串行启动,速度较慢
systemd是centos中一种init软件,是并行启动,速度较快
init:目录文件/sbin/init
systemd:目录文件/lib/systemd/systemd
systemd单元类型:
1.service:启动管理系统服务
2.target:系统运行级别状态
3.socket:端口服务,提供网络套接字,为端到端之类的服务提供通信
4.device:硬件管理服务
5.path:管理文件和目录状态
五、模拟错误
前提必须勾选,否则无法进入急救模式

1.主分区引导错误
假设sda主分区丢失或者误删
一、用lsblk看一下磁盘状态

二、计划故意将sda的主分区删除,所以提起将sda的主分区备份给一个正在挂载的sdb1
首先将sdb5挂载

通过dd if=/dev/sda of=/backup/mbr.bak bs=512 count=1
从sda中到backup复制一个mbr.bak文件,大小512次数1次
必须要在文件夹外输入命令,否则不能写入

现在已经备份好,接下来让sda主分区文件损坏
看一下要损坏512大小文件

将一份512空文件写入sda,损坏文件

重启后发现没有系统了,找不到了
选择troubleshooting模式

进入急救模式rescue a centos system

选择continue(继续)
1,回车在回车进入sh-4.2shell模式

创建文件夹backupdir,并将备份文件所在硬盘挂载

可以看到有文件,将这个文件

重新写入sda,exit退出

可以看到grup菜单又出来了,说明sda找到主分区了

2.grup菜单错误
删除grub文件,导致找不到系统

重新进入会发现grup找不到

重新启动,进入梣centos页面就点exc键,一定要速度快,否则无法选中。
选从cd进入

再次进入模式troubleshooting

进入急救模式rescue

切换到光盘映像根目录

重新将grub引导程序文件安装到sda的mrb扇区

重新构建grup的配置文件

退出根目录,重启

可以看到又进入了grup菜单

3.修改root密码
修改之前要关闭安全
setenforce 0关闭安全机制
同样进入sh-4.2#

进入cd根目录,之间passwd ,将123456改为123

直接可以重启,新密码进入

linux 引导过程和服务控制的更多相关文章
- Linux引导过程与服务控制
一:系统引导流程: 开机自检(BIOS)-->MBR引导-->GRUB菜单-->加载内核(kernel)-->init进程初始化 二:系统引导级别: 0 poweroff.t ...
- Linux引导过程和服务过程
目录 一.Linux操作系统引导过程 1.1.开机自检 1.2.MBR引导 1.3.GRUB菜单 1.4.加载Linux内核 1.5.init进程初始化 二.系统初始化进程 2.1.init进程 2. ...
- Linux系统——引导过程与服务控制
一.Linux开机启动原理(十步) (1)开机自检BIOS 开机检测,主板检测 (2)MBR引导 硬盘512字节 (3)GRUB菜单 操作系统菜单 (4)加载内核(kernel) 启动操作系统核心,根 ...
- Linux 系统管理——引导过程与服务控制
一. 系统引导流程 1.开机自检(BIOS)(基本的输入输出系统) 2.MBR引导1.2. MBRIS 当从本机硬盘中启动系统时,首先根据硬盘第一个扇区中MBR (Master Boot Record ...
- Linux 引导过程内幕
转载:http://www.ibm.com/developerworks/cn/linux/l-linuxboot/index.html 从主引导记录到第一个用户空间应用程序的指导 引导 Linu ...
- 【转】Linux 高级的视角来查看Linux引导过程
[原文]https://www.toutiao.com/i6594210975480545800/ 1.概述 图 1 是我们在20,000 英尺的高度看到的视图. 当系统首次引导时,或系统被重置时,处 ...
- Linux引导过程
早期时,启动一台计算机意味着要给计算机喂一条包含引导程序的纸带,或者手工使用前端面板地址/数据/控制开关来加载引导程序.尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行 ...
- Linux引导过程!(重点)
1.开机自检:服务器开机后,将根据主板BIOS (基本输入系统),中的设置对CPU .内存.显卡.键盘等设备进行初步检测,并初始化部分硬件. 2.MBR 引导:当从本机硬盘中启动系统时,首先根据硬盘中 ...
- Linux学习笔记之Linux启动引导过程
早期时,启动一台计算机意味着要给计算机喂一条包含引导程序的纸带,或者手工使用前端面板地址/数据/控制开关来加载引导程序.尽管目前的计算机已经装备了很多工具来简化引导过程,但是这一切并没有对整个过程进行 ...
- Linux学习笔记:系统启动引导过程
Linux系统启动引导过程 近期发现自己在仅仅是掌握上有几个比較硬的伤: 一.知识体系碎片,比方Linux,这学点那学点,结果没有成体系,串不起来: 二.记忆时间短暂,非常多的内容学了就忘,最后的结果 ...
随机推荐
- 保姆级本地maven安装配置步骤【Windows】
一.前期准备 1.首先需要安装并配置好本地JDK(WIN+R输入cmd,输入java -version如下图) 2.下载maven到本地(链接Maven – Download Apache Maven ...
- Unity JobSystem使用及技巧
什么是JobSystem 并行编程 在游戏开发过程中我们经常会遇到要处理大量数据计算的需求,因此为了充分发挥硬件的多核性能,我们会需要用到并行编程,多线程编程也是并行编程的一种. 线程是在进程内的,是 ...
- 记录hive一次数据倾斜问题的解决以及思考总结
解决数据倾斜是大数据开发中比较重要的能力,这个现象指的是分布式集群中,由于数据分发的不当,导致某个节点要处理的错误过多,导致整个计算机任务迟迟结束不了,甚至可能节点出现OOM使得任务失败 处理数据倾斜 ...
- 官方文档 | 【JVM调优体系】「GC底层调优实战」XPocket为终结性能问题而生—开发指南
XPocket 用户文档 XPocket 是PerfMa为终结性能问题而生的开源的插件容器,它是性能领域的乐高,将定位或者解决各种性能问题的常见的Linux命令,JDK工具,知名性能工具等适配成各种X ...
- [BUUCTF]Web刷题记录
为提升观感体验,本篇博文长期更新,新题目以二次编辑形式附在最后 [ACTF2020 新生赛]Exec 打开后发现网页是关于执行一个ping指令,经过测试是直接执行的,所以就直接命令执行了 127.0. ...
- [Android]ADB调试: SecurityException: Injecting to another application requires INJECT_EVENTS permission
问题描述 使用ADB工具调试安卓设备时报此错误: C:\Users\Johnny>adb shell input text "Hello" java.lang.Securit ...
- 用Abp实现两步验证(Two-Factor Authentication,2FA)登录(二):Vue网页端开发
@ 目录 发送验证码 登录 退出登录 界面控件 获取用户信息功能 项目地址 前端代码的框架采用vue.js + elementUI 这套较为简单的方式实现,以及typescript语法更方便阅读. 首 ...
- DG修复:清理归档配置归档清理脚本
问题描述:DG同步断了十天,发现FRA归档盘符满了.需要清理下,重新增量恢复DG Error 12528 received logging on to the standby FAL[client, ...
- Dapr和Rainbond集成,实现云原生BaaS和模块化微服务开发
背景 Dapr 是一个开源的分布式应用运行时,帮助开发者构建松耦合的分布式应用程序,具有良好的可扩展性和可维护性.Rainbond 是一款企业级的云原生应用管理平台,提供了丰富的功能和工具,方便开发者 ...
- 浅谈对属性描述符__get__、__set__、__delete__的理解
1.属性描述符的基础介绍 1.1 何为属性描述符? 属性描述符是一种Python语言中的特殊对象,用于定义和控制类属性的行为.属性描述符可以通过定义__get__.__set__.__delete__ ...