启动项详解和更改deepin启动内核的方法
内容来自网上查找和总结以及自己的尝试
boot里面的启动项是根据其它文件生成的,如果改boot里面,会在你更新grub后再次回到原来的状态。(之后 我(有显卡驱动问题的用户)通过在开机时选择系统页面按e在倒数第二行ro quiet splash 后面加上acpi_osi=! acpi_osi="Windows 2009"可以从最新内核进入系统。在/etc/default/grub 文件里面相同位置也加上这一句后会让系统不能自己更新grub,之后你就可以在boot/grub里面直接更改启动项内容而不必担心系统回滚)
更改启动项主要从两个文件夹改:/etc/default/grub和/etc/grub.d,下面解释一下这两个文件夹的内容。.
1./etc/default/grub:
GRUB_BACKGROUND="/boot/grub/themes/deepin/background.png" #背景图片的路径
GRUB_CMDLINE_LINUX_DEFAULT="splash quiet" #开机的开机动画(貌似是,需要加载显卡)有显卡驱动问题的可以在后面加上 nomodeset(此选项只会追加在一般模式后)
GRUB_DEFAULT=0 #默认启动项,这个值为0就是默认启动第一个,为1默认启动第二个
GRUB_DISABLE_RECOVERY="true" #禁止显示救援模式(这个不太懂)
GRUB_DISTRIBUTOR="`/usr/bin/lsb_release -d -s 2>/dev/null || echo Deepin`" #获得发行版本(此行将追加到所有的linux 定义内核行的后面,不论是救援模式还是一般模式)
GRUB_GFXMODE="1920x1080" #启动的分辨率
GRUB_THEME="/boot/grub/themes/deepin/theme.txt" #启动的主题,是各种图片和各种显示的字体
GRUB_TIMEOUT=5 #等待时间,5秒未操作直接进入默认系统。改为-1是一直等待。
2./etc/grub.d:
00_header # 配置初始的显示项目,如默认选项,时间限制等,一般由/etc/default/grub导入,一般不需要配置
05_debian_theme # 配置引导画面,文字颜色等主题
10_linux #定位当前操作系统使用中的root设备内核的位置,包含deepin 启动项和advanced里面的启动项
15_linux_bar # 救援模式的启动项
20_linux_xen # 虚拟机监视器的东西,(暂时不知有什么用
30_uefi-firmware # “system setup” 的启动项
35_os-prober # windows的启动项一般在这个里面
40_custom # 用来加入用户自定义的启动项,将会在执行update-grub时更新至grub.cfg中
41_custom # 判断custom.cfg此配置文件是否存在,如果存在就加载它
前面的数字是对文件排列执行的顺序进行排序,可进行更改,比如你想把windows启动项调到第一个,就把35_os-prober前面那个数字改成5到10的数字,比如06、07、08、09.
3.想更改deepin系统的启动内核(有这个需求是不少人在新内核上有显卡驱动问题,而从advanced里面进不能默认进入)
(deepin默认的应该是最新的启动内核,你在boot/grub/grub.cfg里面更改的话只要一更新grub就会回到原来的内核)因此是要改10_linux文件的,但是里面是汇编命令看不懂,
这时40_custom 提供了一个在启动页面加一个新的启动项的简单方法,具体操作如下:
1.打开boot/grub/grub.cfg,找到你默认的启动项(或者你想要改到外面的advanced里面的启动项)(这些启动项都在10_linux里面),大概如下:
menuentry 'Deepin 15.6 GNU/Linux(名字在这里改)' --class deepin --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-6873bab1-cdf1-4931-8717-d2258cb3ad87'
load_video
insmod gzio
if [ x$grub_platform = xxen ]; then insmod xzio; insmod lzopio; fi
insmod part_gpt
insmod ext2
set root='hd0,gpt4'
if [ x$feature_platform_search_hint = xy ]; then
search --no-floppy --fs-uuid --set=root --hint-bios=hd0,gpt4 --hint-efi=hd0,gpt4 --hint-baremetal=ahci0,gpt4 6873bab1-cdf1-4931-8717-d2258cb3ad87
else
search --no-floppy --fs-uuid --set=root 6873bab1-cdf1-4931-8717-d2258cb3ad87
fi
linux /boot/vmlinuz-4.15.0-21deepin-generic root=UUID=6873bab1-cdf1-4931-8717-d2258cb3ad87 ro splash quiet
initrd /boot/initrd.img-4.15.0-21deepin-generic
}
2.复制粘贴到40_custom那三行字下面(需要以管理员身份打开)
3.然后把名字改一下(为了避免重复嘛,你要是在advanced里面复制的就不用改了),最后两行是启动内核,改一下(当然,你要是复制的advanced里面你想改的内核启动项就直接粘贴就行了)
4.保存 之后sudo update-grub就可以了。之后再根据你的需要改顺序和默认启动项就行。
启动项详解和更改deepin启动内核的方法的更多相关文章
- fabric网络环境启动过程详解
这篇文章对fabric的网络环境启动过程进行讲解,也就是我们上节讲到的启动测试fabric网络环境时运行network_setup.sh这个文件的执行流程 fabric网络环境启动过程详解 上一节我们 ...
- (转)Linux 开机引导和启动过程详解
Linux 开机引导和启动过程详解 编译自:https://opensource.com/article/17/2/linux-boot-and-startup作者: David Both 原创:LC ...
- linux系统设置服务开机启动3种方法,Linux开机启动程序详解
linux系统设置服务开机启动 方法1:.利用ntsysv伪图形进行设置,利用root登陆 终端命令下输入ntsysv 回车:如下图 方法2:利用命令行chkconfig命令进行设置 简要说明 ...
- 【STM32H7教程】第13章 STM32H7启动过程详解
完整教程下载地址:http://forum.armfly.com/forum.php?mod=viewthread&tid=86980 第13章 STM32H7启动过程详解 本章教 ...
- Linux启动过程详解(inittab、rc.sysinit、rcX.d、rc.local)
启动第一步--加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬 ...
- Linux启动过程详解
Linux启动过程详解 附上两张图,加深记忆 图1: 图2: 第一张图比较简洁明了,下面对第一张图的步骤进行详解: 加载BIOS 当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的 ...
- linux 开机启动过程详解
Linux开机执行内核后会启动init进程,该进程根据runlevel(如x)执行/etc/rcx.d/下的程序,其下的程序是符号链接,真正的程序放在/etc/init.d/下.开机启动的程序(服务等 ...
- Linux开机启动程序详解
Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...
- Android 核心分析 之八Android 启动过程详解
Android 启动过程详解 Android从Linux系统启动有4个步骤: (1) init进程启动 (2) Native服务启动 (3) System Server,Android服务启动 (4) ...
随机推荐
- PHP注册器模式
[Register.class.php] <?php /** * 注册器模式 * 全局共享和交换对象 */ class Register { protected static $objects; ...
- node-express根据请求,判断PC和移动端
function getMachine(req) { var deviceAgent = req.headers["user-agent"].toLowerCase(); var ...
- arrow
1.c++(OOGP) 与数据结构与算法 1.一定要有一门自己比较熟悉的语言. 我由于使用C++比较多,所以简历上只写了C++.C++的特性要了解,C++11要了解一些,还有STL.面试中常遇到的一些 ...
- 39.css3----button按钮点击时出现蓝色边框
css控制Button 按钮的点击时候出现蓝色边框http://www.inbeijing.org/archives/1139 Button 按钮的点击时候出现蓝色边框的问题 添加css属性,这样在点 ...
- GetLastError()返回值列表
GetLastError()返回值列表: [0]-操作成功完成.[1]-功能错误.[2]-系统找不到指定的文件.[3]-系统找不到指定的路径.[4]-系统无法打开文件.[5]-拒绝访问.[6]-句柄无 ...
- 问题:mysql服务正在启动 mysql服务无法启动 && mysql启动脚本 mysql关闭脚本
此篇目编写两个核心目的: 1.mysql服务启动脚本(start_mysql.bat),mysql服务停止脚本(stop_mysql.bat)的讲解. 2.解决问题:mysql服务无法启动. 操作流程 ...
- 笔记 : WampServe加装PHP版本(7.2.3)为例
1.由于正在学习Laravel框架,服务器wamp,Composer已搭建完成,但在安装laravel installer之后使用laravel new blog,报错为"This pack ...
- maven下载和安装
注意:安装Maven3之前需要安装jdk1.7以上版本,下面介绍的是最新版Maven官网下载并安装, 每个人使用的编辑器不同,在这里我就不介绍了,可以去网上查对应编辑器Maven配置方法. 第一步,官 ...
- Oracle TNS-01190: The user is not authorized to execute the requested listener command
今天,在玩 lsnrctl命令,是为了了解Oracle的一些配置. 当执行 show inbound_connect_timeout 命令之后,提示了错误信息: TNS-01190: The user ...
- 十二 总结JS原型
基本概念: 对象:属性和方法的集合(变量和函数的封装). 构造器函数:用于创建对象的函数,通过new关键字生成对象.函数名一般首字母大写的. 原型对象:每个函数都有一个prototype属性,它是一个 ...