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. RecycleView 点击事件监听

    1.定义RecycleView 监听接口类 1 package com.example.*****; 2 3 import android.view.View; 4 5 public interfac ...

  2. css优先级和权重

    1. 权重概念: 权重,是一个相对的概念,是针对某一指标而言.某一指标的权重是指该指标在整体评价中的相对重要程度. 权重系数,是表示某一指标项在指标项系统中的重要程度,它表示在其它指标项不变的情况下, ...

  3. Apache支持Vue router使用 HTML5History 模式

    一.前言 前端Vue router 使用history模式,URL会比hash模式好看,这种模式要玩好,还需要后端配置支持,否则会报404错误. 注:1.前端代码省略. 2.此处后台使用Apache服 ...

  4. MySQL like查询使用索引

    在使用msyql进行模糊查询的时候,很自然的会用到like语句,通常情况下,在数据量小的时候,不容易看出查询的效率,但在数据量达到百万级,千万级的时候,查询的效率就很容易显现出来.这个时候查询的效率就 ...

  5. spring boot +dubbo 踩坑记录

    今天初次搭建spring boot +duboo的demo.记录一下踩坑记录. 首先搭建3个小demo,一个maven项目,两个spring boot (服务提供者和服务消费者)项目. 两 sprin ...

  6. Android - 利用扩展函数为Bitmap添加文字水印

    <异空间>项目技术分享系列--扩展函数为Bitmap添加文字水印 对图片Bitmap绘制文字水印还是比较常见的需求,毕竟版权意识都在增强(用户可以给自己图片加上用户名),还可以为用户提供更 ...

  7. Arrays.Sort()中的那些排序算法

    本文基于JDK 1.8.0_211撰写,基于java.util.Arrays.sort()方法浅谈目前Java所用到的排序算法,仅个人见解和笔记,若有问题欢迎指证,着重介绍其中的TimSort排序,其 ...

  8. rabbitmq如何保证消息可靠性不丢失

    目录 生产者丢失消息 代码模拟 事务 confirm模式确实 数据退回监听 MQ事务相关软文推荐 MQ丢失信息 消费者丢失信息 之前我们简单介绍了rabbitmq的功能.他的作用就是方便我们的消息解耦 ...

  9. 数据库事务 ACID属性、数据库并发问题和四种隔离级别

    数据库事务 ACID属性.数据库并发问题和四种隔离级别 数据库事务 数据库事务是一组逻辑操作单元,使数据从一种状态变换到另一种状态 一组逻辑操作单元:一个或多个DML操作 事务处理原则 保证所有事务都 ...

  10. HTML5基础入门一天学完

    HTML 什么是HTML HTML:Hyper Text Markup Language(超文本编辑语言) HTML的发展史 HTML5优势 世界知名浏览器厂商对HTML5的支持 市场的需求 跨平台 ...