因为对FreeBSD比较熟悉,所以在自己的工作机上用virtualbox虚拟了一个FreeBSD。屏幕分辨率是唯一的问题,今天得空解决了。
首先生成/etc/X11/xorg.conf。
sudo X -configure
如果命令出错,可能是没有安装virtualbox-ose-additions。
sudo pkg install virtualbox-ose-additions virtualbox-ose-kmod
遵照pkg install结尾的信息,将如下配置追加到/etc/rc.conf中:
vboxguest_enable="YES" vboxservice_enable="YES"
拷贝"X -configure"生成的/root/xorg.conf.new到/etc/X11。此时重启X,分辨率并未变化。
上网找了一下配置分辨率的资料。找到这个 :
新装好的Xorg需要手工设定屏幕分辨率,否则不会工作在本地电脑显示器的最佳分辨率上。
好多人会发现,按照手册上所说的添加“1024*768”后没有效果,其实这串参数不规范。
规范有效的操作:
命令示范:
结果会显示类似这样两行(不同的显示器数值不一样,不能照抄):
1024*768_70.00 …… Modeline "1024*768_70.00" 76.16 1024 1080 1192 1360 768 769 772 800 -HSync +Vsync
要做的是手工填入 xorg.conf:
1、把 “Modeline …… ”整行加到 Section "Monitor"; 2、把 “Modes 1024*768_70.00” 填入 Section "Screen"。 看清楚,两行都要加入,缺一不可! 这样显示器就不需要依赖于任何桌面软件的设置就能正常工作了。
步骤1没问题。步骤2报错。按照手册 指导,使用xrandr来选择分辨率1920x1080,却依旧失败。去查了一下/var/log/Xorg.log,发现提示”video memory 6170K“,猜测可能是virtualbox设置的显存太小了。停FreeBSD,重新设置显存,同时发现下面有一个“启用3D加速”的复选框,我也选了。
重启FreeBSD。这下X能够启动了,但是显示不清楚,都是花纹,同时窗口只占显示屏很小的一块区域。去掉“3D加速”的选项,反复试验分辨率,发现1600x1200显示正常。
学习了gtf和xrandr两个工具。