系统启动过程(内核介绍),linux无法开机系统修复(1)

该参数告诉内核启动时使用哪个设备作为根文件系统。比如可以指定根文件为hda8:root=/dev/hda8。

7、ro和rw

ro参数告诉内核以只读方式加载根文件系统,以便进行文件系统完整性检查,比如运行fsck;rw参数告诉内核以读写方式加载根文件系统,这是默认值。

8、reserve=…

保留端口号。格式:reserve=iobase,extent[,iobase,extent]…,用来保护一定区域的I/O端口不被设备驱动程序自动探测。在某些机器上,自动探测会失败,或者设备探测错误或者不想让内核初始化设备时会用到该参数;比如: reserve=0x300,32device=0x300,除device=0x300外所有设备驱动不探测 0x300-0x31f范围的I/O端口。

9、mem=…

限制内核使用的内存数量。早期BIOS设计为只能识别64M以下的内存,如果你的内存数量大于64M,你可以指明,如果你指明的数量超过了实际安装的内存数量,系统崩溃是迟早的事情。如:mem=0x1000000意味着有16M内存,如果是mem=0x6000000,就是96M内存了。注意:很多机型把部分内存作为BIOS的映射,所以你在指定内存大小的时候一定要预留空间。你也可以在 pentium或者更新的CPU上使用mem=nopentium关闭4M的页表,这要在内核配置时申明。

10、panic=N

默认情况,内核崩溃--kernel panic 后会宕机而不会重启,你可以设置宕机多少秒之后重启机器;也可以在/proc/sys/kernel/panic文件里设置。

11、reboot=[warm|cold][,[bios|hard]]

该选项仅当定义了CONFIG_BUGi386时才能用。2.0.22的内核重启默认为cool reboot,warm reboot 更快,使用"reboot=bios"可以继承bios的设置。

12、nosmp 和 maxcpus=N

仅当定义了 SMP,该选项才可用。可以用来禁用多CPU或者指明最多支持的CPU个数。

临时修改内核参数

临时修改内核参数方法,启动系统选择内核时按字母 c 即可:

在这里插入图片描述

按 c 选择指定内核 然后 再 按 e 即可进入编辑界面 ,在当前界面,上下左右 箭头可切换光标 编辑完成之后ctrl+x 保存 后即可 以定义的参数开机(仅限本次有效,重启后变不再生效了)。

在这里插入图片描述

一般在维护或者修复系统的时候,我们才会在这里修改内核的参数。

系统的几种模式:

救援模式rescue

假设系统正常启动需要20个必须服务,如果某个必须服务出了问题就会导致系统没法启动,假设救援模式只有个必须服务,我们进入到救援模式的时候,出问题的服务不再救援模式的必须服务之内,此时系统就可以启动起来。

但是 需要root密码

类似于windows下的“安全模式”

进入该模式的方法:就是临时编辑内核参数的方法,启动界面c(选择内核)——e进入编辑界面,找到内核列 在最后写上参数保存即可;

在这里插入图片描述

这里写s,single,1都可以,按ctrl+x

在这里插入图片描述

在该模式下可以查看启动日志,查找系统无法正常启动的原因。

emergency模式:

假设系统正常启动需要20个必须服务,如果某个必须服务出问题了就会导致系统无法启动,假设emergency模式只有6个必须服务,我们进入到emergency模式的时候,出问题的服务不再emergency模式的必须服务内,此时系统可以启动起来。

但是 需要root密码

也类似于windows下的“安全模式”

进入该模式的方法:就是临时编辑内核参数的方法,启动界面c(选择内核)——e进入编辑界面,找到内核列 在最后写上参数保存即可;

在这里插入图片描述

ctrl+x后:

在这里插入图片描述

重置root密码


如果你使用的是RHEL7.0的话,记住要删除rhgb quiet这两个参数。7.1及以上就不需要删除

进入该模式的方法:就是临时编辑内核参数的方法,启动界面c(选择内核)——e进入编辑界面,找到内核列 在最后写上参数保存即可;

在这里插入图片描述

ctrl+x后就会直接进入到无密码界面:

在这里插入图片描述

需要注意的时,以这种方式进入的系统是 只读的,不能直接修改密码,所以需要先把系统文件以读写的方式重新挂载再修改密码即可:

在这里插入图片描述

密码修改完成以后,需要重置selinux标签:touch /.autorelabel ,然后重启:exec /sbin/init

在这里插入图片描述

如果使用的是vmware做实验的话,这当中会重启2次(等待即可),kvm没这个问题。

启动完毕后直接使用更改的密码登陆即可:

在这里插入图片描述

进入安全模式(grbu)加密:


如果在没做什么操作的情况下 谁都能修改root密码 ,显然这是不安全的,所以,我们可以编辑文件,让别人无法直接通过上述进入安全模式的方法修改root密码:

编辑文件:vi /etc/grub2.d/00_header

在这里插入图片描述

在文件最下面新建以下格式,指定超级用户,并保存,保存以后需要执行:grub2-mkconfig -o /boot/grub2/grub.cfg :

在这里插入图片描述

上诉方法是密码以明文的方式呈现,下面说一下密码不以明文方式呈现,首先要先 生成秘钥(秘钥是pbkdf2格式):执行grub2-mkpasswd-pbkdf2-输入该用户的密码,如上图中的密码是:ccx123 :

在这里插入图片描述

秘钥生成以后,再次编辑文件:vi /etc/grub2.d/00_header ,在文件最下面新建以下格式,指定超级用户,并保存,保存以后需要执行:grub2-mkconfig -o /boot/grub2/grub.cfg :

在这里插入图片描述

更新数据以后reboot重启:

在这里插入图片描述

进入编辑模式以后,现在要提示输入用户名和密码:这个用户名就是之前文件定义的超级用户和密码:

在这里插入图片描述

用户密码输入错误会直接回到开机启动界面,又得重新按e进入该界面:

在这里插入图片描述

密码输入正确以后 才会进入到编辑界面,在该界面定义好内核文件后,ctrl+x即可正常启动:

在这里插入图片描述

强制进入安全模式:


该方法用于:1、grub被加密了,且不知道密码是什么 2、root密码也忘记了(就无法更改(grub)指定用户的密码了) ,这时候就需要用到另外一种救援模式:

这里以vmware为例,首先必须先挂载系统镜像,注:系统镜像版本必须和当前系统版本一致:

在这里插入图片描述

挂载好以后重启系统,并在刚开机时的界面按esc键(速度要快)调出启动菜单(可能版本不同有些系统并不是esc调出启动菜单,如果esc不行自行百度查看快捷键):

在这里插入图片描述

调出启动菜单后选择第三个cd启动:

在这里插入图片描述

然后选择第三项回车:

在这里插入图片描述

然后选择第二项回车,进入到救援模式(和前面的救援模式有区别,该处是光盘救援模式):

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Linux运维工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
img

的进阶课程,基本涵盖了95%以上Linux运维知识点,真正体系化!**

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加VX:vip1024b (备注Linux运维获取)
[外链图片转存中…(img-FGj0uGwC-1712641356292)]

  • 24
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值