如何让Ubuntu Server笔记本仅使用外接显示器输出?
解决Ubuntu Server外接1920x1080显示器的两个问题
咱们一步步来搞定你遇到的这两个问题——Ubuntu Server默认是纯命令行环境,和带桌面的Ubuntu Desktop逻辑不一样,所以得针对性调整配置:
问题1:xrandr -q 返回“Can't open display”
这个报错的核心原因很直白:Ubuntu Server默认没安装X Window系统,而xrandr是依赖X的显示器配置工具,没有X的支撑自然没法运行。解决步骤如下:
- 先更新系统包列表:
sudo apt update - 安装X基础组件、Intel显卡驱动和xrandr工具:
Intel GMA4500MHD的开源驱动已经包含在sudo apt install xserver-xorg xrandr xserver-xorg-video-intelxserver-xorg-video-intel里,不用额外折腾闭源驱动。 - 现在启动X会话再试:
进入X环境后运行startxxrandr -q,就能正常识别你的外接显示器和内置屏了。
问题2:修改/etc/default/grub后无效果
修改grub没生效,大概率是两个原因:要么没更新grub配置让修改落地,要么配置项没写对,或者因为Server版默认用命令行,grub的显示参数需要对应调整。咱们来修正:
- 编辑grub配置文件:
sudo nano /etc/default/grub - 找到或添加以下两个配置项(如果原来有注释符号
#,记得去掉):GRUB_GFXMODE=1920x1080 GRUB_GFXPAYLOAD_LINUX=1920x1080GRUB_GFXMODE负责设置grub启动界面的分辨率GRUB_GFXPAYLOAD_LINUX负责设置系统启动后控制台(tty)的分辨率
- 保存并退出编辑器(按
Ctrl+O,回车确认,再按Ctrl+X) - 必须执行更新命令让配置生效:
sudo update-grub - 重启系统验证:
sudo reboot
额外配置:默认用外接显示器并禁用内置屏
现在X和grub都配置好了,咱们来设置开机自动切换到外接显示器(1920x1080),同时关闭内置屏:
- 启动X会话后,运行
xrandr查看显示器名称,你会看到类似:- 内置屏:
LVDS1(或eDP1) - 外接VGA显示器:
VGA1(或DP1、HDMI1)
- 内置屏:
- 执行以下命令设置外接显示器为主屏并禁用内置屏(把名称换成你实际看到的):
xrandr --output VGA1 --mode 1920x1080 --primary --output LVDS1 --off - 要让这个设置开机自动生效,编辑
~/.xinitrc文件:
把上面的nano ~/.xinitrcxrandr命令加进去,保存退出。 - 最后设置开机自动启动X,编辑
~/.bash_profile:
添加一行:nano ~/.bash_profilestartx,保存退出。这样每次登录后就会自动启动X并加载显示器配置。
内容的提问来源于stack exchange,提问作者Zazula
相关产品推荐
相关产品推荐

