Warning: Undefined array key "custom_message" in /www/wwwroot/bbs.aaronyang.cc/wp-content/plugins/wpcopyrights/index.php on line 105

grub

grub

多重引导程序grub的命令行shell工具

补充说明

grub命令 是多重引导程序grub的命令行shell工具。

语法

grub(选项)

选项

--batch:打开批处理模式;
--boot-drive=<驱动器>:指定stage2的引导驱动器;
--config-file<配置文件>:指定stage2的配置文件;
--device-map=<文件>:指定设备的映射文件;
--help:显示帮助信息;
--install-partition=<分区>:指定stage2安装分区;
--no-config-file:不使用配置文件;
--no-pager:不使用内部分页器;
--preset-menu:使用预设菜单;
--probe-second-floppy:检测第二个软盘驱动器;
--read-only:只读模式。

实例

利用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

参考资料

若文章对你有帮助,可以点赞或打赏支持我们。发布者:Aurora,转载请注明出处:http://61.174.243.28:13541/AY-knowledg-hub/grub/

(0)
AuroraAurora站点维系者
上一篇 2023年 12月 14日 下午6:53
下一篇 2023年 12月 14日 下午6:54

相关推荐

  • 30. 错误处理

    欢迎来到 Golang 系列教程的第 30 篇。 文章目录什么是错误?示例错误类型的表示从错误获取更多信息的不同方法1. 断言底层结构体类型,使用结构体字段获取更多信息2. 断言底…

    入门教程 2023年 12月 5日
  • Helm | Helm 回滚

    文章目录helm rollback简介可选项从父命令继承的命令请参阅 helm rollback 回滚发布到上一个版本 简介 该命令回滚发布到上一个版本 回滚命令的第一个参数是发布…

    入门教程 2023年 12月 14日
  • nl

    文章目录nl概要主要用途选项参数返回值例子注意 nl 为每一个文件添加行号。 概要 nl [OPTION]… [FILE]… 主要用途 将每一个输入的文件添加行号后发送到标…

    入门教程 2024年 1月 10日
  • iOS环境搭建

    文章目录iOS Xcode 安装界面生成器(Interface Builder)iOS模拟器 iOS Xcode 安装 1、从 https://developer.apple.co…

    2023年 3月 18日
  • rmmod

    文章目录rmmod补充说明语法选项参数实例 rmmod 从运行的内核中移除指定的内核模块 补充说明 rmmod命令 用于从当前运行的内核中移除指定的内核模块。执行rmmod指令,可…

    入门教程 2024年 3月 4日
  • Java 基础语法

    一个 Java 程序可以认为是一系列对象的集合,而这些对象通过调用彼此的方法来协同工作。下面简要介绍下类、对象、方法和实例变量的概念。 对象:对象是类的一个实例,有状态和行为。例如…

    2023年 3月 4日
  • pgrep

    文章目录pgrep补充说明语法选项参数实例 pgrep 根据用户给出的信息在当前运行进程中查找并列出符合条件的进程ID(PID) 补充说明 pgrep命令 以名称为依据从运行进程队…

    入门教程 2024年 3月 1日
  • ping

    文章目录ping补充说明语法选项参数实例 ping 测试主机之间网络的连通性(ipv4) 补充说明 ping命令 用来测试主机之间网络的连通性。执行ping指令会使用ICMP传输协…

    入门教程 2024年 3月 1日
  • cat

    文章目录cat概要主要用途参数选项返回值例子注意参考链接 cat 连接多个文件并打印到标准输出。 概要 cat [OPTION]… [FILE]… 主要用途 显示文件内容,…

    入门教程 2023年 12月 7日
  • timedatectl

    文章目录timedatectl补充说明概要主要用途参数例子 timedatectl 用于在 Linux 中设置或查询系统时间、日期和时区等配置。 补充说明 在 Linux 运维中,…

    入门教程 2024年 3月 11日

发表回复

登录后才能评论
Translate »