本文介绍几个常用Deepin 15.7操作系统的Linux内核参数,通过GRUB修改这些Linux内核启动参数能处理好多问题,下面进行讲解。
在Deepin 15.7系统开机的时候我们会发现有一个菜单让我们做选择,不同的菜单引导进不同的作用界面,如下图:
通过光标键可以高亮选择某个菜单,此时按e键可以编辑菜单中的内容(c键进入grub命令行),如: menuentry 'Deepin 15.7 GNU/Linux' --class deepin --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-b66d8ffa-aed9-466c-bc12-6bb801e45901' { load_video insmod gzio if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi insmod part_gpt insmod ext2 set root='hd2,gpt1' if [ x$feature_platform_search_hint = xy ]; then search --no-floppy --fs-uuid --set=root --hint-bios=hd2,gpt1 --hint-efi=hd2,gpt1 --hint-baremetal=ahci2,gpt1 56a1a52b-599c-40c1-906a-8be908fb3ac4 else search --no-floppy --fs-uuid --set=root 56a1a52b-599c-40c1-906a-8be908fb3ac4 fi linux /vmlinuz-4.15.0-29deepin-generic root=UUID=b66d8ffa-aed9-466c-bc12-6bb801e45901 ro splash quiet initrd /initrd.img-4.15.0-29deepin-generic }
在以上代码中,我们发现有一行,即: linux /vmlinuz-4.15.0-29deepin-generic root=UUID=b66d8ffa-aed9-466c-bc12-6bb801e45901 ro splash quiet
上面这行表示加载linux内核文件,后面是内核的参数,以下为解释: 1.root 告诉内核根分区设备 2.ro 表示在设备启动时为read-only,如果是rw表示read-write 3.splash 表示开机画面 4.quiet 示在启动过程中只有重要信息显示,类似硬件自检的消息不回显示 5.single 以单用户模式登录,一般用于修复系统,比如Deepin 15.7密码忘记了。
注:我们可以修改这些GRUB参数,之后按f10键启动Deepin 15.7系统。
Example: 1.开机不显示画面,而显示一行行的字符信息: linux /vmlinuz-4.15.0-29deepin-generic root=UUID=b66d8ffa-aed9-466c-bc12-6bb801e45901 ro
2.单用登录: linux /vmlinuz-4.15.0-29deepin-generic root=UUID=b66d8ffa-aed9-466c-bc12-6bb801e45901 rw single init=/bin/bash
3.开机卡机的处理: linux /vmlinuz-4.15.0-29deepin-generic root=UUID=b66d8ffa-aed9-466c-bc12-6bb801e45901 ro splash quiet acpi_osi=! acpi="windows 2009"
注:重点说一下最后一个,很多网友用笔记本装Deepin 15.7系统,重启机器就卡住了,用例3就可以解决大部分这样的情况。 1.其中ACPI就是高级配置与电源管理接口(Advanced Configuration and Power Interface)是提供操作系统与应用程序管理所有电源管理接口,包括了各种软件和硬件方面的规范。ACPI可以实现的功能包括:电源管理、性能管理、配置与即插即用、系统事件、温度管理、电池管理、SMBus控制器、嵌入式控制器。 2.这里windowss 2009表示windows 7或 windwos server 2008 R2。可以参考下面的列表: cpi_os_name=“字符串” 告诉ACPI BIOS操作系统的名称。 常用于有缺陷的BIOS,让其以为运行的是Windows系统而不是Linux系统。 1]“Linux” = Linux 2]“Microsoft Windows” = Windows 98 3]“Windows 2000” = Windows 2000 4]“Windows 2001” = Windows XP 5]“Windows 2001 SP2” = Windows XP SP2 6]“Windows 2001.1” = Windows Server 2003 7]“Windows 2001.1 SP1” = Windows Server 2003 SP1 8]“Windows 2006” = Windows Vista 9]“Windows 2006 SP1” = Windows Vista SP1 10]“Windows 2006.1” = Windows Server 2008 11]“Windows 2009” = Windows 7 / Windows Server 2008 R2 12]“Windows 2012” = Windows 8 / Windows Server 2012 13]“Windows 2013” = Windows 8.1 / Windows Server 2012 R2 acpi_osi=“字符串” 3.对于较新的内核而言,当BIOS询问内核:“你是Linux吗?”,内核都会回答"No",但早版本内核会如实回答"Yes",结果造成很多BIOS兼容性问题。 4.此参数用于修改内核中的操作系统接口字符串(_OSI string)列表默认值,这样当BIOS向内核询问:"你是xxx吗?"的时候,内核就可以根据修改后的列表中是否存在"xxx"回答"Yes"或"No"了,主要用于解决BIOS兼容性问题导致的故障。
那么内核参数加了这个参数:acpi_osi=! acpi=“windows 2009”,当bios寻问内核,是windows 7 吗?内核说是啊,所以就不卡机了。引用网友的话:bios遇到不认识的系统,就不启动独显,所以卡机了。所以要特别处理。
相关主题 |