roubleshooting 排错
roubleshooting 排错
winPE --光盘或u盘启动盘 产生一个PE系统(类似内存的临时系统)
系统排错
rescue 模式 (挽救模式) 类似windows winPE模式
问题一: 如果你的linux的root密码忘记了,怎么办?
答案:
使用单用户模式(系统启动级别为1)进行系统修改
在启动系统时,在grub选择界面按e,然后去第二行(也就是kernel开头的那行)再按e,去最后加一个数字1或者single单词。然后回车,按b
进入到1级别系统是不需要登录的,现在就可以password修改新的root密码,再重启用新密码正常登录了
这里也可以把/etc/passwd的第一行第二列的x去掉,然后重启就可以不用密码root登录了,再把x加回去,原密码又生效了(可以用此方法去同桌电脑做坏事)
问题二:如何防止别人用单用户模式进入我的linux系统
答案:
grub加密
方法一:在安装系统时,直接设置
方法二:
安装没有设置,装完也可以再设置
# grub-md5-crypt -----用此命令自定义一个密码,会产生一个密码字符串
Password:
Retype password:
$1$WgBpF/$eWCjkPXtaN6brJXcjeAEw0
# vim /boot/grub/grub.conf -----然后加上password --md5 密码字符串在如下位置
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
password --md5 $1$WgBpF/$eWCjkPXtaN6brJXcjeAEw0
title Red Hat Enterprise Linux (2.6.32-431.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=UUID=a907082e-7fa0-4547-acc1-86fafa58b512 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
initrd /initramfs-2.6.32-431.el6.x86_64.img
扩展一个小错误
default=1
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
title Red Hat Enterprise Linux (2.6.32-431.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-431.el6.x86_64 ro root=UUID=a907082e-7fa0-4547-acc1-86fafa58b512 rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 rd_NO_MD SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM rhgb quiet
password --md5 $1$WgBpF/$eWCjkPXtaN6brJXcjeAEw0 -----加在这里是不能防别人进行单用户的,因为这一行是只能用密码锁住以下的行,所以这里并没有锁着kernel这一行
initrd /initramfs-2.6.32-431.el6.x86_64.img
注意:grub加密可以用rescue破解(因为rescue模式是使用与原系统无关的临时系统)
====================================================================================
排错的一般思路:建议先可以尝试使用单用户排错,如果不行(有些错误甚至会造成单用户模式都进不了),再使用rescue模式(这个模式一定可以进,因为是使用与原系统无关的临时系统)
问题:怎么进入rescue模式
答案:因为我们要产生一个临时系统,所以一定需要系统iso镜像(需要把此iso做成光盘引导或u盘引导或网络引导);或者更简单总结一句话:就是能进入到安装系统第一步界面,选择Rescue installed system
问题:进行rescue模式后如何排错?
答案:一句话:进行这个临时系统后,想办法把原来错误系统挂载到临时系统,按需求进行修改排错
具体挂载实现方法主要有下面两种
方法一:
如果正常情况下,会把你要修复的系统的整个根目录(包含下级所有子目录)mount到临时系统的/mnt/sysimage目录下
chroot /mnt/sysimage 再去修改(或者不chroot)
这是不chroot,在临时系统上修改错误系统的/etc/fstab
vi /mnt/sysimage/etc/fstab -----这里的vi命令是临时系统的
这是chroot,在错误系统里修改它的/etc/fstab
chroot /mnt/sysimage
vi /etc/fstab -----这里的vi是原错误系统的
exit
方法二:
有些情况下,没有mount到/mnt/sysimage
fdisk -l 查看所有分区
然后自己手动建立目录用来挂载排错
例mkdir /aaa -----一定要手动新建的目录,否则不能挂载
mount /dev/sda1 /aaa
在/aaa目录下排错就可以了
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」