树莓派配置文件 config.txt - HDMI 热插拔

2022-01-20 21:10:15 浏览数 (3)

关键词:树莓派、找不到config.txt、显示器、HDMI热插拔、hdmi_force_hotplug 如果移动端访问不佳,请访问–> GithubPage 版

快速预览:

  1. config.txt 的路径通常是 /boot/config.txt,如果找不到,可能是 /boot/firmware/config.txt。再找不到,参考文章内【找到 config.txt】的思路去找。
  2. 在 config.txt 里增加如下 2 行内容后重启树莓派即可开启 HDMI 热插拔功能
代码语言:javascript复制
hdmi_force_hotplug=1
hdmi_drive=2

0x00:问题和背景

新到的树莓派4B,安装了带桌面的 Ubuntu 系统,前期为了方便,通过 HDMI 线外接了显示器,方便配置系统。但是配置完毕并拔掉显示器之后发现一个问题:重启树莓派后,如果没有外接显示器,则无法正常进入系统,定位到是 HDMI 检测机制的问题,它默认需要插上显示器才能正常启动。

查到资料需要开启树莓派的 HDMI 热插拔才能不依赖外接显示器。 于是需要我们:

  1. 找到配置文件 config.txt (本文重点)
  2. 修改 config.txt

0x01:定位 config.txt

修改 config.txt 有2大类方法

  1. 取出 SD 卡,在其他电脑上进行读取 SD 卡内容,找到 config.txt 进行修改
  2. 直接在树莓派内部运行中的系统当中进行修改

下面说下方法2:

通常 config.txt 的路径是 /boot/config.txt,但是如果找不到,需要查看下磁盘分区,找到启动分区所在的目录。

代码语言:javascript复制
$ fdisk -l
Device         Boot  Start       End   Sectors  Size Id Type
/dev/mmcblk0p1 *      2048    526335    524288  256M  c W95 FAT32 (LBA)
/dev/mmcblk0p2      526336 124735454 124209119 59.2G 83 Linux

看到2个分区:
- /dev/mmcblk0p1 (启动分区)
- /dev/mmcblk0p2

$ df
Filesystem     1K-blocks     Used Available Use% Mounted on
/dev/mmcblk0p1    258095   113997    144099  45% /boot/firmware
/dev/mmcblk0p2  61862116 11804636  47472868  20% /

可见
- /dev/mmcblk0p2 挂载到 / 目录下,
- /dev/mmcblk0p1 挂载到 /boot/firmware 目录下

那么,config.txt 没在 /boot/下,应该就在 /boot/firmware 下了,即 /boot/firmware/config.txt

0x02:修改 config.txt

添加如下2行到 config.txt 然后重启树莓派即可

代码语言:javascript复制
hdmi_force_hotplug=1
hdmi_drive=2
  • hdmi_force_hotplug=1 设置树莓派使用 HDMI 热插拔模式,即使没有检测到 HDMI 显示器。
  • hdmi_drive=2 将树莓派设置为正常的 HDMI 模式(如果支持和启用,将发送声音)。如果没有这条线,树莓派将默认切换到 DVI(无音频)模式。

参考资料:

  • How do I force the Raspberry Pi to turn on HDMI?
  • 树莓派配置文件config.txt 参数详细介绍
  • 树莓派4系统初始配置
  • Raspberry Pi:强制 HDMI 热插拔

如果有什么建议或者问题可以随时联系我,共同探讨学习

0 人点赞