deepin更新启动项_启动项详解和更改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就可以了。之后再根据你的需要改顺序和默认启动项就行。

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) ...

随机推荐

JS事件-让网页交互

什么是事件 JavaScript 创建动态页面.事件是可以被 JavaScript 侦测到的行为. 网页中的每个元素都可以产生某些可以触发 JavaScript 函数或程序的事件. 比如说,当用户单击 ...

Linux—fork函数学习笔记

fork()函数 在赋值语句pid = fork();之前,只有一个进程在执行这段代码,但在这条语句之后,就变成两个进程在执行了,这两个进程的代码部分完全相同.> 两个进程中,原先就存在的那个被 ...

Lambda表达式的由来

1.lambada表达式的本质:一个匿名方法,或说是匿名委托.从C#3.0开始支持,C#2.0只支持匿名方法语法很简单 : (输入参数)=>expr   //当参数为一个是可以省略括号.lamb ...

Spring基础篇——bean的自动化装配

上篇博文讲Spring的IOC容器时说道,虽然容器功能强大,但容器本身只是个空壳,需要我们主动放入装配对象,并告诉它对象之间的协作关系,然后容器才能按照我们的指示发挥它的魔力,完成装配bean的使命. ...

Java基础系列-ArrayList

原创文章,转载请标注出处: 一.概述 ArrayList底层使用的是数组.是List的可变数组实现,这里的可变是针对List而言,而不是底层数组. ...

MySql 查询银行卡号打码

),")) end as card_number from das.staff_base; case 函数 CASE    WHEN 条件1 THEN 结果1    WHEN 条件2 THE ...

独立出properties的mybatis连接池

jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/java505?useSSL=true&chara ...

Go控制语句

指针 Go虽然保留了指针,但是与其他编程语言不通的是,在Go当中不支持指针运算以及"->"运算符,而是直接采用"."选择符来操作指针目标对象的成员. 操作 ...

iframe页面刷新问题

1.问题:当iframe的页面加载过再关闭之后,如果iframe的src没有发生变化,js不会重新加载,再次打开页面不会刷新: 2.解决方法:关闭页面时清空src,再次打开时即可重新加载最新数据. $ ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值