科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道GRUB引导进单用户模式的三种简单方法

GRUB引导进单用户模式的三种简单方法

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

作为一个Linux系统管理员,你可能会把Linux 超级用户密码遗忘了,把/etc/inittab或/etc/rc.d/rc.sysinit之类文件误编辑,导致系统不能正常启动的恼人错误?

作者:korn 来源:赛迪网技术社区 2007年10月14日

关键字: 方法 Grub Linux 操作系统

  • 评论
  • 分享微博
  • 分享邮件
 

作为一个Linux系统管理员,你可能会把Linux 超级用户密码遗忘了,把/etc/inittab或/etc/rc.d/rc.sysinit之类文件误编辑,导致系统不能正常启动的恼人错误?  
  
  而为了解决以上问题,你就需要进到linux根文件系统处于可读写状态的单用户模式下。
  
  下面介绍在GRUB引导下进入Linux单用户模式的三种方式:
  
  (1) 硬件环境:
  
  intel P4 / 1G RAM / sata 80G
  
  (2) 软件环境:
  
  1)Fedora Core 3(以下简称为FC3)和Windows2000 advance server双系统
  
  2)LVM管理Linux分区
  
  3)/boot/grub/grub.conf文件内容:
  
  # grub.conf generated by anaconda # # Note that you do not have to rerun grub after making changes to this file # NOTICE: You have a /boot partition. This means that # all kernel and initrd paths are relative to /boot/, eg. # root (hd0,2)
  # kernel /vmlinuz-version ro root=/dev/VolGroup00/LogVol00 # initrd /initrd-version.img #boot=/dev/sda default=1 timeout=1000 splashimage=(hd0,2)/grub/splash.xpm.gz hiddenmenu title Fedora Core (2.6.9-1.667)
  root (hd0,2)
  kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.9-1.667.img title windows 2000 adv rootnoverify (hd0,0)
  chainloader +1
  
  首先,启动电脑,屏幕出现如下提示:
  
  Press any key to enter the menu Booting windows 2000 adv in 999 seconds…
  
  按任一键跳过计时,进入下一步:
  
  GNU GRUB version 0.95 (639K lower/103924K upper memory)
  Fedora Core (2.6.9-1.667)
  Windows 2000 adv
  
  下面是GRUB的提示:
  
  ‘e’ 在booting前编辑启动命令行
  
  ‘a’ 在booting前编辑kernel的参数
  
  ‘c’进入grub命令行

  由此按‘e’、a‘、’c‘三个不同的键,进入三种不同的操作:
  
  1.快速法:
  
  选择Fedora Core (2.6.9-1.667)菜单,
  
  按a键:
  
  grub append>ro root=/dev/VolGroup00/LogVol00 rhgb quiet
  
  修改成:
  
  grub append>ro root=/dev/VolGroup00/LogVol00 single quiet
  
  按ENTER键完成修改并booting进入Linux单用户模式
  
  sh-3.00#
  
  2.简便法:
  
  选择Fedora Core (2.6.9-1.667)菜单,
  
  按e键:
  
  root (hd0,2)
  
  kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet initrd /initrd-2.6.9-1.667.img选择kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet命令行
  
  按e键:
  
  grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 rhgb quiet
  
  修改成:
  
  grub edit>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 single quiet
  
  按ENTER键完成修改
  
  按b键booting进入Linux单用户模式
  
  sh-3.00#
  
  3.手动法:
  
  按c键进入grub命令行:
  
  (在grub命令行下按TAB键可得到grub命令帮助与grub命令的可能选项)
  
  grub>fstest (grub>filesystem tracing is now on grub>root (hd0,2) (
  
  (指定保存有Linux 内核的分区为第一个硬盘的第三个分区)
  
  grub>filesystem type is ext2fs,partition type 0x83 grub>kernel /vmlinuz-2.6.9-1.667 ro root=/dev/VolGroup00/LogVol00 single quiet (
  
  (指定内核文件为/boot/vmlinuz-2.6.9-1.667,内核参数为ro—readonly, 根分区为/dev/VolGroup00/LogVol00,rhgb—图形方式启动,quiet—不输出启动信息)
  
  grub>initrd /initrd-2.6.9-1.667.img (
  
  (在内核启动前加载支持系统硬件设备的内核模块——initrd镜像文件——/boot/initrd-2.6.9-1.667.img,并初始化RAM disk)
  
  grub>boot (
  
  如果系统的配置与脚本文件正确,以上三种方式在Booting command-list中都会出现:
  
  remounting root filesystem in read-write mode:[OK]
  
  表示此时linux单用户模式下的根文件系统处于可读可写状态。
  
  如果系统的配置与脚本文件出现错误,linux单用户模式下的根文件系统进入“read-only file system”既只读状态,此时,打入:
  
  sh-3.00#mount –o remount rw –t ext3 /
  
  让根文件系统重新mount成可读写,你就可以自由编辑出现错误的系统文件了。

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章