为了防止他人通过grub进入单用户模式随意修改root的密码,我们需要为grub启动程序设置密码 ,但是如果设置了grub密码,又忘记了那又怎么办呢?? 难道只能再重装一次吗??? 并不需要,我们可以通过
光盘修复模式来解决这个问题.
环境:虚拟机vmware8.04 Centos 6.3
但在开始光盘修复模式之前,让我们先解决一个问题,因为我是在VMware这个虚拟机软件上安装Centos,在使用Vmware虚拟机时,经常会遇到开机画面太快导致来不及按下F2进BIOS的情况.
1 而我又通过'某'歌了解到,在存放Centos的虚拟机文件所在的目录当中存在一个以".vmx"为后缀名结尾的虚拟机配置文件.
2 我们用记事本打开该配置文件加入一行 bios.bootDelay = "8000" 并保存即可
3 接下来要检查一下虚拟的光盘是否连接. VM-->Settings
4 确认一定要把勾给打上,否则就相当于没有插入光盘,而导致无法从光盘启动
5 然后重启虚拟机中的Centos,并在数秒时间内按下F2进入BIOS界面
6 进入到BIOS界面,按下'左箭头'移动到Boot选项,并按下'下箭头'移动到CD-ROM Drive上
然后按下'Shift' 和 '+'使其成为第一启动项,最后F10,Enter确定保存并退出
7 下面就安装Centos时的画面,选择修复已安装的系统
8 接着显示一堆鸟文
9 接着问你更喜欢用哪种语言进行启动,最好选择English,按tab键,回车确定
10 问你要用哪种键盘,没得选,只能选择us 美式键盘,按tab键,回车确定
11 问你要用哪种媒体进行修复,当然是Local CD/DVD,按tab键,回车确定
12 问你是否要启动网络,不需要,我们现在是在修复系统,不是为了打LOL呀!!!
NO,回车确定
13 说修复环境尝试寻找你的LINUX安装设备并将挂载到/mnt/sysp_w_picpath目录下
,问你敢继续吗? Continue不解释
14 说你的系统已经挂载到/mnt/sysp_w_picpath目录下,按下回车进入shell,如果要使你当前系统和之前的root目录一样就执行chroot /mnt/sysp_w_picpath命令,在你完成所有工作后执行exit命令退出shell时系统会自动重启,回车确定
15 同上,不解释,回车确定
16 启动shell,回车确定
17 键入chroot /mnt/sysp_w_picpath 改变主目录
18 接下来 vi /boot/grub/grub.conf 修改grub的配置文件
19 移动到passwor所在行,直接dd删除该行,然后保存退出
20 重启虚拟机
到此 grub的密码已经没有了
如果一开始是不小心删除了重要的配置文件,如: /etc/inittab ,那就在第17步以后执行命令如图:
首先cd /root 去根目录下,接下来 rpm -qf /etc/inittab 查询误删除文件是属于哪个软件包的 ,
查到以后,需要mkdir /mnt/cdrom 创建挂载点,然后 mount /dev/sr0 /mnt/cdrom 把/dev/sr0这个设备
文件名挂载到/mnt/cdrom 这个空目录下, 再然后
rpm2cpio /mnt/cdrom/Packages/initscripts-9.03....i686.rpm | cpio -idv ./etc/inittab
注: ./etc/inittab是 ' . '开头,cd到root目录也是为把从光盘的rpm包中提取的文件保存到root目录下
再然后将其放到它原本的位置 cp ./etc/inittab /etc/inittab 就可以了,最后exit,reboot
重启时,还要将第一启动项再设为Hard Drive才能正常启动.
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。