这是一个关于如何在 Kali Linux 中更改 GRUB 背景的简单指南(实际上它是 Kali Linux 的 GRUB 启动图像)。 Kali 开发团队在这方面做的不多,他们好像太忙了,所以在这篇文章中,我会对 GRUB 解释一二,但是不会冗长到我失去写作的激情。 那么我们开始吧……

这通常是所有人首先会遇到的一个问题,在哪里设置?有很多方法来查找 GRUB 设置。每个人都可能有自己的方法,但我发现 update-grub 是最简单的。如果在 VMWare 或 VirtualBox 中执行 update-grub,你将看到如下所示的内容:

  1. root@kali:~# update-grub
  2. Generating grub configuration file ...
  3. Found background image: /usr/share/images/desktop-base/desktop-grub.png
  4. Found linux image: /boot/vmlinuz-4.0.0-kali1-amd64
  5. Found initrd image: /boot/initrd.img-4.0.0-kali1-amd64
  6. No volume groups found
  7. done
  8. root@kali:~#

如果您是双系统,或者三系统,那么您将看到 GRUB 以及其他操作系统入口。然而,我们感兴趣的部分是背景图像,这是在我这里看到的(你会看到完全相同的内容):

  1. Found background image: /usr/share/images/desktop-base/desktop-grub.png

GRUB 启动图像搜索顺序

在 grub-2.02 中,对基于 Debian 的系统来说,它将按照以下顺序搜索启动背景:

  1. /etc/default/grub 里的 GRUB_BACKGROUND 行
  2. 在 /boot/grub/ 里找到的第一个图像(如果发现多张,将以字母顺序排序)
  3. 在 /usr/share/desktop-base/grub_background.sh 中指定的
  4. 在 /etc/grub.d/05_debian_theme 里 WALLPAPER 行列出的

现在将此信息留在这里,我们会尽快重新检查它。

Kali Linux GRUB 启动图像

在我使用 Kali Linux 时(因为我喜欢用它做事),会发现 Kali 正在使用这里的背景图像:/usr/share/images/desktop-base/desktop-grub.png

为了确定,我们来检查一下这个 .png 文件的属性。

  1. root@kali:~#
  2. root@kali:~# ls -l /usr/share/images/desktop-base/desktop-grub.png
  3. lrwxrwxrwx 1 root root 30 Oct 8 00:31 /usr/share/images/desktop-base/desktop-grub.png -> /etc/alternatives/desktop-grub
  4. root@kali:~#

Change GRUB background in Kali Linux - blackMORE OPs -1

什么?它只是 /etc/alternatives/desktop-grub 的一个符号链接? 但是 /etc/alternatives/desktop-grub 不是图片文件。看来我也要检查一下它的属性。

  1. root@kali:~#
  2. root@kali:~# ls -l /etc/alternatives/desktop-grub
  3. lrwxrwxrwx 1 root root 44 Oct 8 00:27 /etc/alternatives/desktop-grub -> /usr/share/images/desktop-base/kali-grub.png
  4. root@kali:~#

Change GRUB background in Kali Linux - blackMORE OPs -3

好吧,真让人费解。 /etc/alternatives/desktop-grub 也是一个符号链接,它指向/usr/share/images/desktop-base/kali-grub.png,来自最初同样的文件夹。呃! 无语。 但是现在我们至少可以替换该文件并将其解决。

在替换之前,我们需要检查 /usr/share/images/desktop-base/kali-grub.png 的属性,以确保下载相同类型和大小的文件。

  1. root@kali:~#
  2. root@kali:~# file /usr/share/images/desktop-base/kali-grub.png
  3. /usr/share/images/desktop-base/kali-grub.png: PNG image data, 640 x 480, 8-bit/color RGB, non-interlaced
  4. root@kali:~#

可以确定这是一个 PNG 图像文件,像素尺寸为 640 x 480。

GRUB 背景图像属性

可以使用 PNGJPG/JPEG 以及 TGA 类型的图像文件作为 GRUB 2 的背景。必须符合以下规范:

  • JPG/JPEG 图像必须是 8-bit (256 色)
  • 图像应该是非索引的,RGB

默认情况下,如果安装了 desktop-base 软件包,符合上述规范的图像将放在 /usr/share/images/desktop-base/ 目录中。在谷歌上很容易找到类似的文件。我也找了一个。

  1. root@kali:~#
  2. root@kali:~# file Downloads/wallpaper-1.png
  3. Downloads/wallpaper-1.png: PNG image data, 640 x 480, 8-bit/color RGB, non-interlaced
  4. root@kali:~#

Change GRUB background in Kali Linux - blackMORE OPs -6

方式 1:替换图像

现在我们只需简单的用新文件将 /usr/share/images/desktop-base/kali-grub.png 替换掉。值得注意这是最简单的方法,不需要修改 grub-config 文件。 如果你对 GRUB 很熟,建议你简单的修改 GRUB 的默认配置文件,然后执行 update-grub

像往常一样,我会将原文件重命名为 kali-grub.png.bkp 进行备份。

  1. root@kali:~#
  2. root@kali:~# mv /usr/share/images/desktop-base/kali-grub.png /usr/share/images/desktop-base/kali-grub.png.bkp
  3. root@kali:~#

Change GRUB background in Kali Linux - blackMORE OPs -4

现在我们将下载的文件重命名为 kali-grub.png

  1. root@kali:~#
  2. root@kali:~# cp Downloads/wallpaper-1.png /usr/share/images/desktop-base/kali-grub.png
  3. root@kali:~#

Change GRUB background in Kali Linux - blackMORE OPs -5

最后执行命令 update-grub

  1. root@kali:~# update-grub
  2. Generating grub configuration file ...
  3. Found background image: /usr/share/images/desktop-base/desktop-grub.png
  4. Found linux image: /boot/vmlinuz-4.0.0-kali1-amd64
  5. Found initrd image: /boot/initrd.img-4.0.0-kali1-amd64
  6. No volume groups found
  7. done
  8. root@kali:~#

Change GRUB background in Kali Linux - blackMORE OPs -7

下次重新启动你的 Kali Linux 时,你会看到 GRUB 背景变成了你自己的图像(GRUB 启动界面)。

下面是我现在正在使用的新 GRUB 启动背景。你呢?要不要试试这个办法?

Change GRUB background in Kali Linux - blackMORE OPs -9

这是最简单最安全的办法,最糟的情况也不过是在 GRUB 看到一个蓝色的背景,但你依然可以登录后修复它们。现在如果你有信心,让我们尝试一个改变 GRUB 设置的更好的方法(有点复杂)。后续步骤更加有趣,而且可以在任何使用 GRUB 引导的 Linux 上使用。

现在回忆一下 GRUB 在哪 4 个地方寻找启动背景图像?再看一遍:

  1. /etc/default/grub 里的 GRUB_BACKGROUND 行
  2. 在 /boot/grub/ 里找到的第一个图像(如果发现多张,将以字母顺序排序)
  3. 在 /usr/share/desktop-base/grub_background.sh 中指定的
  4. 在 /etc/grub.d/05_debian_theme 里 WALLPAPER 行列出的

那么我们再在 Kali Linux 上(或任意使用 GRUB2 的 Linux系统)试一下新的选择。

方式 2:在 GRUB_BACKGROUND 中定义图像路径

所以你可以根据上述的查找优先级使用上述任一项,将 GRUB 背景图像改为自己的。以下是我自己系统上  /etc/default/grub 的内容。

  1. root@kali:~# vi /etc/default/grub

按照 GRUB_BACKGROUND="/root/World-Map.jpg" 的格式添加一行,其中 World-Map.jpg 是你要作为 GRUB 背景的图像文件。

  1. # If you change this file, run 'update-grub' afterwards to update
  2. # /boot/grub/grub.cfg.
  3. # For full documentation of the options in this file, see:
  4. #   info -f grub -n 'Simple configuration'
  5. GRUB_DEFAULT=0
  6. GRUB_TIMEOUT=15
  7. GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
  8. GRUB_CMDLINE_LINUX_DEFAULT="quiet"
  9. GRUB_CMDLINE_LINUX="initrd=/install/gtk/initrd.gz"
  10. GRUB_BACKGROUND="/root/World-Map.jpg"

一旦使用上述方式完成更改,务必执行 update-grub 命令,如下所示。

  1. root@kali:~# update-grub
  2. Generating grub configuration file ...
  3. Found background: /root/World-Map.jpg
  4. Found background image: /root/World-Map.jpg
  5. Found linux image: /boot/vmlinuz-4.0.0-kali1-amd64
  6. Found initrd image: /boot/initrd.img-4.0.0-kali1-amd64
  7.   No volume groups found
  8. done
  9. root@kali:~#

现在重启机器,你会在 GRUB 看到自定义的图像。

方式 3:把图像文件放到 /boot/grub/ 文件夹

如果没有在 /etc/default/grub 文件中指定 GRUB_BACKGROUND 项,理论上 GRUB 应当使用在 /boot/grub/ 文件夹找到的第一个图像文件作为背景。如果 GRUB 在 /boot/grub/ 找到多个图像文件,它会按字母排序并使用第一个图像文件。

方式 4:在 grub_background.sh 指定图像路径

如果没有在 /etc/default/grub 文件中指定 GRUB_BACKGROUND 项,而且 /boot/grub/ 目录下没有图像文件,GRUB 将会开始在 /usr/share/desktop-base/grub_background.sh 文件中指定的图像路径中搜索。Kali Linux 是在这里指定的。每个 Linux 发行版都有自己的特色。

方式 5:在 /etc/grub.d/05_debian_theme 文件的 WALLPAPER 一行指定图像

这是 GRUB 搜寻背景图像的最后一个位置。如果在其他部分都没有找到,它将会在这里查找。

原文发布时间为:2017-03-31

本文来自云栖社区合作伙伴“Linux中国”

在 Kali Linux 中更改 GRUB2 背景的 5 种方式相关推荐

  1. Linux中设置服务自启动的三种方式

    有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s                       在/etc/rc.d/rc*.d目录中建立/e ...

  2. Linux中设置服务自启动的三种方式(转)

    有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s                       在/etc/rc.d/rc*.d目录中建立/e ...

  3. linux 运行apj,Linux中设置服务自启动的三种方式

    有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统服务 主要用三种方式进行这一操作: ln -s                       在/etc/rc.d/rc*.d目录中建立/e ...

  4. linux重启网卡命令_如何在 Linux 中更改 MAC 地址 | Linux 中国

    在向你展示如何在 Linux 中更改 Mac 地址之前,让我们首先讨论为什么要更改它.-- Dimitrios Savvopoulos 在向你展示如何在 Linux 中更改 MAC 地址之前,让我们首 ...

  5. kali linux 2022更改国内软件源 WSL适用

    kali linux 2022更改国内软件源 WSL适用 更改方法 更新软件 更改方法 在kali 终端输入 sudo nano /etc/apt/sources.list 打开源文件列表后 在列表中 ...

  6. linux中更改文件所有者

    linux中更改文件所有者 touch test #创建一个文件:testls -lchown root test #改变所有者chgrp root test #改变所有组ls -l 运行结果如下: ...

  7. kali linux 截图位置,Kali Linux中使用截图工具

    Kali Linux中默认好像没有安装截图工具,于是网上找了下,本打算安装shutter,但估计是源的问题没成功,一不小心发现了Scrot, 因为可以命令行截图的缘故,就试了下,参考: https:/ ...

  8. 如何在Kali Linux中安装Google Chrome浏览器

    介绍 目的 我们的目标就是在 Kali Linux 上安装好 Google Chrome Web 浏览器.同时,请参阅附录为可能出现的问题进行排查. 要求 需要获得已安装 Kali Linux 或者 ...

  9. KALI Linux中GURB安装失败如何处理

    KALI  Linux中GURB安装失败如何处理 # GRUB安装失败 # 无法将grub-pc软件包安装到/target/中,如果没有GRUB启动引导器,所安装的系统将无法启动. 解决办法: 点击返 ...

最新文章

  1. 路印协议受邀参加澳洲新南威尔士政府孵化器Haymarket HQ分享论坛
  2. 中科院自动化所介绍深度强化学习进展:从AlphaGo到AlphaGo Zero
  3. 【 C 】指针数组案例分析(const的作用)
  4. android 中使用ExpandableListView控件结合服务器json文件的下载
  5. urllib设置debuglevel打开调试开关
  6. boost::mp11::mp_starts_with相关用法的测试程序
  7. mysql 当前用户连接数_实战:判断mysql中当前用户的连接数-分组淘选
  8. 操作系统上机题目(多线程2)
  9. zabbix 安装(yum)
  10. IKAnalyzer实现扩展词库+动态更新词库的方法
  11. 【QT】无需写connect代码关联信号和槽函数
  12. white-space 空白处理、强制内容不换行,word-wrap 文本自动换行,text-overflow 文本溢出
  13. 洞察药监局数据,挖掘万亿价值
  14. 阿铭linux苹果客户端,2018年5月 – 阿铭Linux
  15. 有关java的几个日期类的转换
  16. 深入理解MPU(内存保护单元)
  17. TensorFlow中CNN的两种padding方式“SAME”和“VALID”
  18. CCNA上机实验_19-PPP
  19. AUTOSAR Diagnostic
  20. 俄罗斯留学语言C1级什么水平,俄语等级考试介绍 去俄罗斯留学语言要求高不高...

热门文章

  1. numpy 中的axis轴问题
  2. Caused by: java.net.UnknownHostException: localhost.localdomain: localhost.localdomain的问题解决...
  3. ssh框架 验证码实现
  4. MySQL--字符编码和字符集
  5. 根据id来实现小程序tab切换,
  6. (转) Deep Learning Resources
  7. iOS 网络编程(二)
  8. CSS 样式表(小结)
  9. python初学小甲鱼_Python零基础入门学习 作者:小甲鱼
  10. 百度seo排名规则_百度seo排名优化要点讲解(已帮助5184人)