这个目录包含了用于管理 NVIDIA EDID 虚拟显示器配置的实用脚本。
功能: 全面检查虚拟显示器配置状态
使用方法:
./check-virtual-display.sh检查项目:
- 内核参数 (nvidia-drm.modeset)
- NVIDIA DRM 模块状态
- EDID 文件完整性
- Xorg 配置文件
- LightDM 服务状态
- 虚拟显示器连接状态
- X.Org 日志中的 EDID 加载记录
- GPU 信息
使用场景:
- 初次配置后验证
- 故障排查
- 系统更新后检查
- 定期维护检查
功能: 快速启用/禁用虚拟显示器
使用方法:
./toggle-virtual-display.sh操作流程:
- 脚本会检测当前状态(启用/禁用)
- 提示是否切换状态
- 移动配置文件(启用/禁用)
- 提示重启 LightDM
注意事项:
- 需要 sudo 权限
- 切换后需要重启 LightDM:
sudo systemctl restart lightdm - 或者重启系统以完全应用更改
使用场景:
- 临时需要使用物理显示器
- 测试不同配置
- 故障排查时禁用虚拟显示器
功能: 备份所有 NVIDIA EDID 相关配置文件
使用方法:
./backup-config.sh备份内容:
/lib/firmware/edid/1920x1080.bin- EDID 固件文件/etc/default/grub- GRUB 配置/etc/mkinitcpio.conf- initramfs 配置/etc/X11/xorg.conf.d/10-nvidia-dummy.conf- Xorg 配置
备份位置:
~/nvidia-edid-backups/nvidia-edid-config-YYYYMMDD_HHMMSS.tar.gz
使用场景:
- 修改配置前备份
- 系统更新前备份
- 定期备份(建议每月一次)
- 测试新配置前备份
功能: 从备份恢复配置文件
使用方法:
./restore-config.sh操作流程:
- 列出所有可用备份
- 选择要恢复的备份
- 显示备份内容
- 确认后恢复文件
- 提示后续操作步骤
恢复后步骤:
# 1. 重新生成 GRUB 配置
sudo grub-mkconfig -o /boot/grub/grub.cfg
# 2. 重新生成 initramfs
sudo mkinitcpio -P
# 3. 重启系统
sudo reboot使用场景:
- 配置出错需要回滚
- 系统更新导致配置失效
- 测试失败后恢复
- 迁移配置到新系统
-
检查当前状态:
cd ~/nvidia-edid-scripts ./check-virtual-display.sh
-
创建初始备份:
./backup-config.sh
查看虚拟显示器状态:
DISPLAY=:0 xrandr查看 GPU 状态:
nvidia-smi查看 LightDM 日志:
sudo journalctl -u lightdm -n 50查看 X.Org 日志:
sudo tail -100 /var/log/Xorg.0.log-
运行状态检查:
./check-virtual-display.sh
-
查看详细日志:
# LightDM 日志 sudo journalctl -u lightdm -n 100 --no-pager # X.Org 日志 sudo cat /var/log/Xorg.0.log | tail -100 # 内核日志 (EDID 相关) sudo dmesg | grep -i edid
-
临时禁用虚拟显示器:
./toggle-virtual-display.sh sudo systemctl restart lightdm
-
如果问题严重,恢复备份:
./restore-config.sh
A: 某些操作需要 sudo 权限,脚本会自动提示输入密码。
A: 按照检查结果逐项修复:
- 内核参数未启用 → 检查 GRUB 配置
- EDID 文件不存在 → 重新生成 EDID 文件
- Xorg 配置不存在 → 重新创建配置文件
- LightDM 未运行 →
sudo systemctl start lightdm
A:
- SSH 连接到机器
- 运行
./check-virtual-display.sh检查状态 - 查看
/var/log/Xorg.0.log日志 - 如需恢复,运行
./restore-config.sh
A: 手动删除旧备份:
cd ~/nvidia-edid-backups
ls -lt # 查看所有备份
rm nvidia-edid-config-YYYYMMDD_HHMMSS.tar.gz # 删除指定备份A:
- 复制备份文件到新机器
- 运行
./restore-config.sh - 根据新机器的 GPU PCI 地址修改 Xorg 配置中的 BusID
- 重新生成 GRUB 和 initramfs
- 重启
# 1. 检查状态
./check-virtual-display.sh
# 2. 创建备份
./backup-config.sh
# 3. 清理旧备份(保留最近 5 个)
cd ~/nvidia-edid-backups
ls -t nvidia-edid-config-*.tar.gz | tail -n +6 | xargs rm -f# 1. 备份当前配置
./backup-config.sh
# 2. 记录当前状态
./check-virtual-display.sh > ~/nvidia-status-before-update.txt
# 3. 执行系统更新
sudo pacman -Syu
# 4. 更新后检查
./check-virtual-display.sh
# 5. 如有问题,对比状态或恢复备份# 1. 检查驱动版本
nvidia-smi
# 2. 重新生成 initramfs
sudo mkinitcpio -P
# 3. 检查虚拟显示器状态
./check-virtual-display.sh
# 4. 如有问题,重启系统
sudo reboot创建每周自动备份:
# 编辑 crontab
crontab -e
# 添加以下行(每周日凌晨 2 点备份)
0 2 * * 0 /home/icepie/nvidia-edid-scripts/backup-config.sh > /dev/null 2>&1在本地机器上检查远程机器状态:
ssh 192.168.0.74 "bash -s" < ~/nvidia-edid-scripts/check-virtual-display.sh如果有多台机器需要配置:
# 1. 在第一台机器上完成配置
# 2. 创建备份
./backup-config.sh
# 3. 复制备份到其他机器
scp ~/nvidia-edid-backups/nvidia-edid-config-*.tar.gz user@other-machine:~/
# 4. 在其他机器上恢复
ssh user@other-machine
./restore-config.sh- 完整配置文档:
~/NVIDIA_EDID_虚拟显示器配置文档.md - NVIDIA 官方文档: https://download.nvidia.com/XFree86/Linux-x86_64/590.48.01/README/
- Arch Wiki: https://wiki.archlinux.org/title/NVIDIA
- 初始版本
- 包含 4 个基础管理脚本
- 支持状态检查、备份、恢复、切换功能
维护者: Claude Code 最后更新: 2026-02-04 许可: MIT