1 概述

自定义grub引导菜单的主题,笔者的linux是deepin,感觉默认的grub主题不太好看,嗯,没办法,就是想改了。

这篇文章主要是修改/boot/grub/grub.cfg以及/boot/grub/themes/.../theme.txt这两个文件,修改之前要备份,不要问为什么。

2 下载主题

到这里下载自己喜欢的主题。这是笔者下载的主题

3 解压

tar -zxvf xxxx.tar.gz

4 安装

直接在解压后的文件夹运行:

sudo ./install.sh

输入y:

5 效果

6 改进

还不满意,嗯。。。

6.1 progress_bar

这个是进度条的设置,如果觉得进度条不满意可以直接去修改/boot/grub/themes/主题名/theme.txt下的progress_bar设置:



可以修改(距离左边和顶部的)位置,宽度,高度,是否显示文本,设置文本等,还可以设置前景颜色(fg_color)与背景颜色(bg_color),还有进度条的风格,就是显示哪一些图片等。

6.2 boot_menu

这个是启动项菜单的设置,可以调整启动项的位置,字体大小,启动项高度,各个启动项之间的间隔,启动项前的图标大小等。

6.3 image

笔者的这个theme.txt有一个image,用来显示KDElogo的,这个可以选择直接不要,删除全部即可,如果想更换成自己喜欢的图片,可以直接修改文件位置,或者再新建一个image:



如果是自己的文件需要把图片放到与theme.txt同一个文件夹,其他宽度,高度之类的,设置合适就好了。

6.4 /etc/default/grub



一些系统相关的基本上不用改,经常改的是默认项,timeout这几个。

  • GRUB_DEFAULT:设置默认启动项,按menuentry排序(menuentry顺序可以通过/boot/grub/grub.cfg查看),从0开始计数,从0开始计数,从0开始计数,重要的事再说一遍不是从1开始计数,若设为“saved”的话表示保存上次项,需要配合GRUB_SAVEDEFULT使用。
  • GRUB_SAVEDEFAULT:当GRUB_DEFAULT设置为“saved”时这个选项才生效,默认为false,设为true的话默认的启动项是上次启动项。
  • GRUB_TIMEOUT:进入默认项的等待时间,单位秒,有其他键被按下这个时间会取消,默认为5,设为0表示立即启动,不会显示启动项菜单,设为-1的话表示无限等待。
  • GRUB_TIMEOUT_STYLE:默认为"menu"(不设置这个值与设为“menu”等价),表示显示启动项菜单,如果设为"countdown",不会显示启动项菜单,会显示一行倒计时文字,若设为“hidden”,效果与“countdown”类似,不过不会显示倒计时文字,等待GRUB_TIMEOUT结束后启动默认启动项。若设为"countdown"或"hidden",想要显示启动项菜单按Esc即可。

不过这里其实有一个坑,就是只需要按Esc一次即可显示启动项菜单,一次即可,两次就会进入grub中的shell,这个要把握好时机,按快了的话没效果或者会进入grub,按慢了就直接启动默认启动项了,当然这个如果GRUB_TIMEOUT稍微大一点就无所谓,笔者说这个因为经历过把GRUB_TIMEOUT设为1,然后GRUB_TIMEOUT_STYLE设为了“hidden”这样的情形,然后就悲剧了。。。想进去启动菜单要重启好几次。。。。因此,GRUB_TIMEOUT_STYLE不太建议设为“countdown”或“hidden”,笔者“血的教训”。。。

/etc/default/grub还有其他设置,不过一般不怎么用,需要的话可以来这里看一下。

6.5 /boot/grub/grub.cfg

执行update-grub后会更新这个文件,手动修改这个文件是因为想修改启动项的文字,因为太长了,感觉没必要。

注意,如果手动修改过/etc/default/grub,也就是需要执行update-grub后使其生效后,需要重新修改/boot/grub/grub.cfg.

sudo vim /boot/grub/grub.cfg

笔者只是想改文字,因此这里搜索找到menuentry直接修改:



改短一点就好了,submenu同理:

6.6 背景

这个比较简单,这接把想要的背景复制到/boot/grub/themes/主题名/下,重命名叫background.png即可,或者可以在theme.txt中修改:

7 最终效果

这是笔者的最终效果,主要就是加了一个头像,换个背景啥的。(手机问题。。。)

8 配置文件

这是需要的配置文件以及主题。

github

自定义grub主题的更多相关文章

  1. 更换 grub 主题

    默认的 grub 界面比较简陋 然后突然有想法了,想换个主题 具体操作 1.下载 grub 主题包 去这个地址下载主题(应该是这个地址): https://www.gnome-look.org/bro ...

  2. Gentoo启动菜单设置:使用官方LiveDVD Grub主题

    设置Gentoo Grub启动主题 拷贝官方LiveDVD grub主题: 下载官方DVD,找到 /boot/grub/themes/GenGrub目录,并拷贝出来. 安装GenGrub主题: 将Ge ...

  3. 自定义ExtJS主题

    ExtJS提供的可以使用的主题包对于创建一个干净专业的程序来说已经很有创意了,然而,你可能还是会希望提供自己的一种设计方式或现在存在的企业设计方式. 从历史上来说,给程序美化就是指的给html标签提供 ...

  4. 自定义element-ui主题

    自定义element主题颜色:主要参考这个文章https://blog.csdn.net/wangcuiling_123/article/details/78513245,再自己做了一遍成功.感谢. ...

  5. Soda Theme sublime 自定义编辑器主题

    1.Soda ThemeSublime Text 3中较为常用的一款自定义编辑器主题,用过的人都说好.Soda Theme包含代码着色.标签.图标,拥有light和dark两种颜色主题便于用户在不同时 ...

  6. CodeMix使用教程:构建自定义DevStyle主题

    [MyEclipse CI 2019.4.0安装包下载] DevStyle主题允许开发人员自定义工作台,无论是喜欢带有明亮图标的浅色背景还是带有柔和色彩的神色背景,开发人员都可以将工作台调整到适合的色 ...

  7. 如何自定义echarts主题

    上一篇,选择echarts原有的主题样式,那么如何自定义自己的主题 与选择原有主题类似 1.echarts官网地址http://echarts.baidu.com/echarts2/doc  在工具中 ...

  8. react中自定义antd主题与支持less(第二部)

    自定义主题 首先自定义主题需要修改antd,antd本身也是less写的之后编译成css的,所以当我们需要使用less. 1.yarn add react-app-rewire-less --dev ...

  9. 自定义putty主题

    PuTTY很早之前就没有更新了(0.62),因为都是开源的所以有人branch出来做了增强,如这个PuTTY tray,增加了超链等功能: https://puttytray.goeswhere.co ...

随机推荐

  1. [转]hpp.h与.h的区别

    原文网址:https://blog.csdn.net/liuzhanchen1987/article/details/7270005 hpp,其实质就是将.cpp的实现代码混入.h头文件当中,定义与实 ...

  2. Mybatis【20】-- Mybatis延迟加载怎么处理?

    注:代码已托管在GitHub上,地址是:https://github.com/Damaer/Mybatis-Learning ,项目是mybatis-16-lazyload,需要自取,需要配置mave ...

  3. EF多个表映射

    public class Media // One entity table { public int Id { get; set; } public string Name { get; set; ...

  4. 分布式流转开发常见报错FAQ

    鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] HarmonyOS开发中分布式协同是非常重要的一个功能,大家在刚接触的时候可能会出现各种各样的错误.我 ...

  5. TextView 的append后面 马上调用fullScroll(),会发现无法滚动到真正的底部

    如果在TextView的append后面马上调用fullScroll,会发现无法滚动到真正的底部,这是因为Android下很多(如果不是全部的话)函数都是基于消息的,用消息队列来保证同步,所以函数调用 ...

  6. pytorch(15)损失函数

    损失函数 1. 损失函数概念 损失函数:衡量模型输出与真实标签的差异 \[损失函数(Loss Function): Loss = f(\hat y,y) \] \[代价函数(Cost Function ...

  7. 13. Vue CLI脚手架

    一. Vue CLI 介绍 1. 什么是Vue CLI? Vue CLI 是一个基于 Vue.js 进行快速开发的完整系统.Vue CLI 致力于将 Vue 生态中的工具基础标准化.它确保了各种构建工 ...

  8. CSV 注入实战

    oxo1 前言 之前看到过 CSV 注入的文章,具体想了解的请搜索学习,这里不多作介绍.今天刚好碰到了导出功能,就随手测试一波,没想到还真的存在 CSV 注入漏洞. oxo2 经过 1.测试漏洞 看到 ...

  9. go-优雅地关机或重启

    目录 优雅地关机或重启 优雅地关机 什么是优雅关机? 如何实现优雅关机? 优雅地重启 总结 优雅地关机或重启 我们编写的Web项目部署之后,经常会因为需要进行配置变更或功能迭代而重启服务,单纯的kil ...

  10. 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba。

    题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列.例如输入字符串abc,则打印出由字符a,b,c所能排列出来的所有字符串abc,acb,bac,bca,cab和cba. 输入描述: 输 ...