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. fail模块场景(ansible)

    更多见博客 : https://blog.csdn.net/qq_35887546/article/details/105242720 创建剧本 /home/alice/ansible/lvm.yml ...

  2. Android 7.0 TextView点击事件无效修复方案

    public class PostTextView extends TextView { private Handler handler = new Handler(Looper.getMainLoo ...

  3. RabbitMQ-RPC版主机管理程序

    一.作业需求 1.可以对指定机器异步的执行多个命令 例子: 请输入操作指令>>>:run ipconfig --host 127.0.0.0 in the call     tack ...

  4. 最简单的,在win,linux中,用powershell,自动获取Let's Encrypt证书方法

    powershell传教士原创 2020-04-12 Let's Encrypt证书有效期3个月,支持泛域名[*.你的网站.net].支持n天内(一般10天内就够用了),用脚本自动续期. 简介: 这个 ...

  5. JVM 中的StringTable

    是什么 字符串常量池是 JVM 中的一个重要结构,用于存储JVM运行时产生的字符串.在JDK7之前在方法区中,存储的是字符串常量.而字符串常量池在 JDK7 开始移入堆中,随之而来的是除了存储字符串常 ...

  6. 通达OA后台getshell

    GIF演示图 https://github.com/jas502n/OA-tongda-RCE/blob/master/Auth-Getshell.gif 1.通过弱口令或其它手段进入后台 2.选择  ...

  7. cve-2019-2725 反序列化远程代码执行

    描述:部分版本WebLogic中默认包含的wls9_async_response包,为WebLogic Server提供异步通讯服务.由于该WAR包在反序列化处理输入信息时存在缺陷,攻击者可以发送精心 ...

  8. 零投资!零风险!手把手教你挖pi币

    为什么说PI币属于区块链4.0代币呢?我们先从人类社会的生产力生产关系的递进来做一波有利的证明! 原始社会--封建王朝--君主立宪--资本主义--社会主义 原始社会:社会物质财富分配既有弱肉强食也有按 ...

  9. docker+compose+nginx+php

    Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化. 我用docker做什么? 快速搭建开发所需环境,测试实验新 ...

  10. javascript 之对象-13

    对象 无序属性的集合,属性可以包含基本值.对象或者函数,简单理解为对象是若干属性的集合:我们常说的面向对象(oop)编程其实是指的一种编码的思想,简单理解为用对象来封装数据,利用封装.继承.多态对代码 ...