首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
中国IT实验室Linux频道
Google
首页 入门 Linux编程 系统管理 网络管理 Linux认证 Unix/BSD Linux数据库 Linux集群 Linux手册 Linux下载 Ubuntu 论坛 专题 RSS
您现在的位置: 中国IT实验室 >> Linux >> 系统管理 >> 系统管理 >> 正文

如何利用Grub命令启动损坏的Linux系统

  可能你的电脑因为某些原因损坏不能自动启动了。当然原因很多,可能的现象也很多。
 
  这里说一下这种情况下的处理方法,即:屏幕上提示 “ grub> ” ,但你的硬盘上数据没有丢失,各分区都是好的。
 
  这种情况是你的 grub 信息损坏了,但比较严重的是系统启动不了。
 
  当然,在正常启动情况下,屏幕上出现 grub 的启动项选择菜单时按 c 键也是可以进入 “grub>” 状态的。这时候我们需要用 grub 的命令来手工启动系统。
 
  只需要用到四个命令 boot 、 kernel 、 initrd 、 boot.
 
  但 grub 本身命令很多,比如查看文件内容的 cat ,你输入 help 会得到。
 
  首先,输入 “ root (hd ” ,然后按两次 TAB 键; /* 这会列出你电脑上可能的磁盘设备,硬盘为 hd0/hd1 或 sd0/sd1 等 */
 
  然后,选择你的安装 Linux 系统的硬盘,比如 hd0 ,输入 “ root (hd0, ” 再按两次 TAB 键; /* 这会列出你的第一块硬盘上的分区情况,你会知道哪个是 swap 交换分区, 0x82 ,哪个是 Linux 分区 0x83 */
 
  选择你认为可能的 /boot 目录所在的分区, 输入 “ root (hd0, 1) ” 回车;
 
  接着,输入 “ cat /boot/vm ” , 按两次 TAB 键,如果出现一些 vm 开头的文件,比如 vmlinuz-2.6.15-26-386 说明这里是 /boot 所在的分区。
 
  删除上一次的输入,再输入 “ cat /boot/initrd ” , 按两次 TAB 键,如果出现一些 initrd 开头的文件,比如 initrd.img-2.6.15-26-386 说明这个 /boot 所在的分区有 initrd ,即 ramdisk 镜像;
 
  删除上一次的输入,再输入 “ cat /sbin/init ” , 按两次 TAB 键,如果出现一些 init 开头的文件,比如 /sbin/init 说明这个分区是 / 所在的分区;
 
  如果没有出现 /sbin/init 文件,说明 (hd0,1) 分区仅仅是 /boot 分区而不是 / 分区。重新输入 “ root (hd0,N) ” 命令,这里 N 是某个 Linux 分区,然后再试 “ cat /sbin/init ” , 直到屏幕上出现 /sbin/init ,说明你找到了 / 分区,严格来说,应该是 /sbin 目录所在的分区;
 
  依次输入命令:
 
  root (hd0,1) /* 假设 /dev/hda2 是你的 /boot 所在的分区 */
 
  kernel /boot/vmlinuz-2.6.15-26-386 ro dev=/dev/hda3 /* 假设 /dev/hda3 是你的 / 所在的分区 */
 
  initrd /boot/initrd.img-2.6.15-26-386
 
  boot
 
  即可启动系统。
 
  这里的关键问题是如何确定系统的几个分区: /boot / /sbin
 
【责编:Zenghui】
中国IT教育
相关产品和培训
文章评论
 友情推荐链接
 专题推荐

 ·防范Linux病毒 打造没有病毒的乐土…
 ·Linux Shell编程实用指南…
 ·Linux日志分析与管理
 ·揭密Linux内存管理
 ·邮件服务Sendmail应用配置
 ·Linux 安全管理…
 ·Linux 下DNS服务器架设攻略…
 ·Linux 下的路由的配置与应用…
 ·专题:Apache实用手册
 ·全面剖析Linux文件系统
 今日更新
 认证培训
 频道精选
 Windows频道导航