grub>清除加载的kernel
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了grub>清除加载的kernel相关的知识,希望对你有一定的参考价值。
参考技术A 方法如下, 首先找到Windows的menuentry.Code
1
# cat /boot/grub2/grub.cfg | grep Windows
参考输出结果:
menuentry “Windows 7 (loader) (on /dev/sda1)”–class windows –class os
可能会不止一个,但是没有关系,知道你平时启动的那一个就可以了,只要确定sda位置。
2. 设置Windows 作为默认的启动项(这儿只能使用上面命令输出中双引号 “ ” 或者单引号 ‘ ‘ 中的内容,即红字部分)
Code
1
# grub2-set-default "Windows 7 (loader) (on /dev/sda1)"
3. 验证默认启动项
Code
1
# grub2-editenv list
参考输出结果:
saved_entry=Windows 7 (loader) (on /dev/sda1)
那么好的,我们已经成功设置了,最后再更新grub2设置文件即可
4. 生成,更新 grub.cfg (可选)
Code
1
# grub2-mkconfig -o /boot/grub2/grub.cfg
当然,/etc/default/grub 中还可以配置timeout,背景图片等等, 参考技术B 操作系统
Linux kernel panic,删除多余内核,更新grub
exeron
原创
关注
0点赞·148人阅读
升级内核之后会存在多余内核.
如果降版本,还会存在不能使用的高版本内核.机器启动时可能会报错:kernel panic
这时只要选择正确的内核就可以正常进入系统
想要删除多余的内核,可以:
dpkg --get-selections | grep linux
结果:
libselinux1 install
libselinux1-dev install
linux-firmware install
linux-generic install
linux-headers-2.6.32-41 install
linux-headers-2.6.32-41-generic install
linux-headers-generic install
linux-image-2.6.32-38-generic install
linux-image-2.6.32-41-generic install
linux-image-generic install
linux-libc-dev install
linux-sound-base install
pptp-linux install
syslinux install
util-linux install
选择想要删除的内核,执行apt-get 命令
sudo apt-get remove linux-image-2.6.32-38-generic
执行这个命令之前最好用uname -a 命令看一下当前使用的内核是哪个版本的,以免删错
删除完成之后,使用sudo update-grub 命令更新一下grub
如果某个内核在grub菜单中出现,但是却没有在上面的apt列表中出现,那可能是由于残留的文件或导致的,需要找到出问题的那个内核,但文件移动到别的地方重新执行sudo update-grub 即可 参考技术C grub>清除加载的kernel设备系统的一个净化处理,grub是最强的一个加载系统处理器,希望这个回答可以帮助到您 参考技术D grub>清除加载的kernel设备系统的一个净化处理,grub是最强的一个加载系统处理器,希望这个回答可以帮助到您
GRUB应用
GRUB应用- CentOS 6启动流程:
POST --> Boot Sequence(BIOS) --> Boot Loader (MBR) --> Kernel(ramdisk) --> rootfs --> switchroot --> /sbin/init -->(/etc/inittab, /etc/init/*.conf) --> 设定默认运行级别 --> 系统初始化脚本 --> 关闭或启动对应级别下的服务 --> 启动终端 - GRUB(Boot Loader):引导加载器,程序
1grub: GRand Unified Bootloader
grub 0.x: grub legacy
grub 1.x: grub2
2.grub legacy:
stage1: mbr
stage1_5: mbr之后的扇区,让stage1中的bootloader能识别stage2所在的分区上的文件系统;
stage2:磁盘分区(/boot/grub/)
配置文件:/boot/grub/grub.conf <-- /etc/grub.conf
stage2及内核等通常放置于一个基本磁盘分区;
功用:
(1) 提供菜单、并提供交互式接口
e: 编辑模式,用于编辑菜单;
c: 命令模式,交互式接口;
(2) 加载用户选择的内核或操作系统
允许传递参数给内核
可隐藏此菜单
(3) 为菜单提供了保护机制
为编辑菜单进行认证
为启用内核或操作系统进行认证
3.grub的命令行接口:help: 获取帮助列表 help KEYWORD: 详细帮助信息 find (hd#,#)/PATH/TO/SOMEFILE: root (hd#,#) kernel /PATH/TO/KERNEL_FILE: 设定本次启动时用到的内核文件;额外还可以添加许多内核支持使用的cmdline参数; 例如:init=/path/to/init, selinux=0 initrd /PATH/TO/INITRAMFS_FILE: 设定为选定的内核提供额外文件的ramdisk; boot: 引导启动选定的内核; 手动在grub命令行接口启动系统: grub> root (hd#,#) grub> kernel /vmlinuz-VERSION-RELEASE ro root=/dev/DEVICE grub> initrd /initramfs-VERSION-RELEASE.img grub> boot 识别硬盘设备: (hd#,#) hd#: 磁盘编号,用数字表示;从0开始编号 #: 分区编号,用数字表示; 从0开始编号 (hd0,0)
4.安装grub:
(1) grub-install
grub-install --root-directory=ROOT /dev/DISK
(2) grub
grub> root (hd#,#)
grub> setup (hd#)
grub legacy配置文件
配置文件:/boot/grub/grub.conf配置项: default=#: 设定默认启动的菜单项;落单项(title)编号从0开始; timeout=#:指定菜单项等待选项选择的时长; splashimage=(hd#,#)/PATH/TO/XPM_PIC_FILE:指明菜单背景图片文件路径; hiddenmenu:隐藏菜单; password [--md5] STRING: 菜单编辑认证; title TITLE:定义菜单项“标题”, 可出现多次; root (hd#,#):grub查找stage2及kernel文件所在设备分区;为grub的“根”; kernel /PATH/TO/VMLINUZ_FILE [PARAMETERS]:启动的内核 initrd /PATH/TO/INITRAMFS_FILE: 内核匹配的ramfs文件; password [--md5] STRING: 启动选定的内核或操作系统时进行认证;
- grub加密:
生成grub口令: grub-md5-crypt grub-crypt 破解root口令: 启动系统时,设置其运行级别为1 进入单用户模式: (1) 编辑grub菜单(选定要编辑的title,而后使用e命令); (2) 在选定的kernel后附加 1, s, S或single都可以; (3) 在kernel所在行,键入“b”命令;
以上是关于grub>清除加载的kernel的主要内容,如果未能解决你的问题,请参考以下文章