大家好,我是顺亿,今天来给大家聊聊Grub的常用命令。Grub是Linux系统启动时的引导加载程序,掌握一些常用命令能让你在系统维护和故障排除时更加得心应手。
一、Linux安装或者启动常用的grub命令
root (hdx,x):设置某块分区为根目录。kernel /vmlinuz:加载linux kernel。initrd /initrd.gz:加载驱动,或者虚拟rootfs。boot:启动加载的kernel。
二、维护系统常用命令
- 查找文件:
find --set-root --ignore-floppies --ignore-cd /usr/bin/cp:将查找到/usr/bin/cp文件,并将分区设为根目录,忽略软盘和cd。 - 加载iso:
root (hdx,x) map --mem /xx.iso (0xff) map --hook chainloader (0xff) boot:设置根目录,映射iso文件到模拟cdrom,启动。
grub命名规则:(hd32)为第一仿真cd/dvd设备,等同于0xa0,(hd33)为二仿真cd/dvd设备,0xff为最后一个。grub中将0xa0以上都认做cdrom。
map --mem 用于仿真不连续的存放的iso文件,不加则必须连续存放,碎片整理后再存放iso一般才会连续。另外grub不支持大的iso。
如果支持iso启动则顺利启动,若是iso不支持则提示:inviladorupsupported executableformat,grub不是很适合iso,联系使用grub2,如果只能使用grub,可以使用grub引导grub2,再引导iso。
三、系统维护技巧
使用grub引导的系统,在使用时偶尔会出现找不到系统的情况,屏幕上会出现grub>,出现这种情况一般有多种可能,一是使用工具无损分区,系统所在的分区名称改变,使用原来的引导名称自然无法启动;二是系统分区损坏或者文件损坏,这种可能性较低一点,没有办法,只能重装系统或者复制原先备份的文件。
对于windows系统,我们可以用find查找C盘下某个文件,设置分区为根目录,从分区启动。
find /Windows/System32/cmd.exe --set-root makeactive chainloader +1
对于Linux系统,也是找到分区,然后设置启动,启动之后修改grub配置文件保存即可。
find /usr/cp --set-root kernel /vmlinuz initrd /initrd.gz boot
注意,如果有多个相似系统的分区,可以root (xx,xx),然后使用 ls / 命令挨个查看,如果名称不确定,也使用查看命令,同时善用tab键自动填充文件名。
有时使用U盘启动时,可能会出现找不到启动菜单的情况,并且find搜索ud分区无效,这种情况可以使用configfile加载菜单。
root (ud,0) configfile /boot/grub/type.lst
四、其它命令
常用命令列表:
| 命令 | 描述 | 示例 |
|---|---|---|
| default | 默认选中第几个菜单 | default 0 |
| timeout | 默认选择超时时间 | timeout |
| title | 设置菜单,到下一个title为止 | title 菜单名称 |
| commandline | grub命令行,手动输入命令 | commandline |
| reboot | 重启 | reboot |
| halt | 关机 | halt |
| configfile | 加载配置文件 | configfile grldr |
| root | 设置根目录并挂载分区 | root (hd0,0) |
| rootnoverify | 设置根目录,不挂载 | rootnoverify(hd,0) |
| makeactive | 将当前分区设为活动分区 | makeactive |
| find | 查找文件 | find --set-root --ignore-floppies --ignore-cd /grub/type.lst |
| splashimage | 背景图像 | splash /boot/background.xpm.gz |
| background | 背景颜色 | background 0xff |
| foreground | 文字颜色 | foreground 0x33 |
| border | 边框颜色 | border eeeeeecolor |
| color | 未选 已选 帮助 标题 边框,每个2位,高位背景,低位前景 | color normal=0x60 highlight=0xcf helptext=0xff heading=0x0C border=0x1e |
| chainloader | 从扇区启动 | chainloader +1 |
| kernel | 加载系统内核 | kernel /vmlinux boot=casper iso-scan/filename=/ubuntu16.04.iso root=/dev/sda2 |
| initrd | 加载ram模块 | initrd /initrd.gz |
| boot | 启动 | boot |
| fallback | 从某个菜单启动失败后转入的菜单 | fallback 2 |
| echo | 显示字符 | echo $[0xCD] Loading Please Wait... |
| font | 设置字体 | font |
| clear | 清屏 | clear |
| cat | 显示文件内容 | cat 1.txt |
| run | 启动光盘 | run |
以上就是Grub的一些常用命令,希望对大家有所帮助。我是顺亿,关注趣航编程网(www.vqhf.com)了解更多编程知识。
