我运行此命令以允许我在屏幕之间移动窗口:
xrandr --auto
这个神奇的命令为我修复了我的屏幕(在运行此命令之前,我的第二个显示器只是一个可以移动鼠标的空白空间)。当我重新启动时,如何使该命令执行的任何操作保持不变?我对修复我的配置更感兴趣,而不仅仅是重新运行此命令,但我对如何实现这一点一无所知。
我有 2 个显示器,DFP 5 和 DFP 6。运行xrandr
结果如下:
DFP1 disconnected (normal left inverted right x axis y axis)
DFP2 disconnected (normal left inverted right x axis y axis)
DFP3 disconnected (normal left inverted right x axis y axis)
DFP4 disconnected (normal left inverted right x axis y axis)
DFP5 connected 1680x1050+1680+0 (normal left inverted right x axis y axis) 474mm x 296mm
1680x1050 60.0*+
1400x1050 60.0
1280x1024 75.0 60.0
1440x900 60.0
1280x960 75.0 60.0
1280x800 75.0 60.0
1152x864 60.0 75.0
1280x768 75.0 60.0
1280x720 75.0 60.0
1024x768 75.0 60.0
800x600 75.0 60.3
640x480 75.0 59.9
DFP6 connected 1680x1050+0+0 (normal left inverted right x axis y axis) 474mm x 296mm
1680x1050 60.0*+
1400x1050 60.0
1280x1024 75.0 60.0
1440x900 60.0
1280x960 75.0 60.0
1280x800 75.0 60.0
1152x864 60.0 75.0
1280x768 75.0 60.0
1280x720 75.0 60.0
1024x768 75.0 60.0
800x600 75.0 60.3
640x480 75.0 59.9
CRT1 disconnected (normal left inverted right x axis y axis)
我已经使用 debian 中的菜单将 DFP 6 设置为 DFP 5 的右侧Displays
。这是我的 xorg.conf 文件:
Section "ServerLayout"
Identifier "aticonfig Layout"
Screen 0 "aticonfig-Screen[0]-0" 0 0
EndSection
Section "Module"
EndSection
Section "Monitor"
Identifier "aticonfig-Monitor[0]-0"
Option "VendorName" "ATI Proprietary Driver"
Option "ModelName" "Generic Autodetecting Monitor"
Option "DPMS" "true"
EndSection
Section "Device"
Identifier "aticonfig-Device[0]-0"
Driver "fglrx"
BusID "PCI:4:0:0"
EndSection
Section "Screen"
Identifier "aticonfig-Screen[0]-0"
Device "aticonfig-Device[0]-0"
Monitor "aticonfig-Monitor[0]-0"
DefaultDepth 24
SubSection "Display"
Viewport 0 0
Depth 24
virtual 3360 1050
EndSubSection
EndSection
它似乎被配置为所有内容都在一个屏幕上,并xrandr --auto
以某种方式修复了它。有什么方法可以查看这个命令正在做什么以将结果保存到 xorg.conf 吗?您通常如何使用 xrandr 来保持结果?
如果我搜索这个,我要么被告知修改我的 xorg.conf 文件(我不知道该怎么做,因为我不知道什么 xrandr --auto
实际上正在做)或有关如何xrandr
在启动时运行的说明,我猜这是没有必要的,但我可能是错的。
答案1
我创建了以下文件:
/etc/X11/Xsession.d/45custom_xrandr-settings
并将这一行放入其中:
xrandr --output DFP6 --primary
这使得正确的监视器成为主要监视器,并在登录时启动。
答案2
由于这是fglrx
驱动程序,因此可以使用aticonfig
命令生成xorg.conf
文件。从你的xrandr
输出我猜测你需要的命令是这样的:
sudo aticonfig --initial=dual-head --screen-layout=left
如果这没有给您想要的,aticonfig
将自动备份您的xorg.conf
文件(带有.fglrx-x
扩展名),以便您可以轻松恢复原始配置。
如果你没有任何运气aticonfig
,有一个 GUI 工具配置xorg.conf
称为amdcccle
(应该在fglrx-control
包中)。
答案3
使用启动脚本运行它。
第1部分:
为脚本创建一个目录...这可以是任何地方的任何内容,如果您偏离了位置,只需记住该位置,以便可以替换它。
mkdir ~/Scripts
您可以在下一部分中使用任何您喜欢使用的文本编辑器
gedit ~/Scripts/setoutput.sh
将这些添加到脚本 #!/usr/bin/env sh xrandr --auto
我使用“xrandr -s 1440x900”保存/关闭文件。通过运行以下命令完成:
chmod +x ~/Scripts/setoutput.sh
sudo ln -s ~/Scripts/setoutput.sh /etc/X11/Xsession.d/45setoutput
reboot
“reboot”可能需要替换为“shutdown -r now”
当系统启动时,您的设置应该已经运行,只要脚本存在,它们就会持久存在。
部分感谢“xenopeek”于 2011 年 11 月 1 日星期二上午 7:02 发表的帖子Linuxmint其中提供了使用“xrandr --output VGA-0 --primary”执行此操作的说明。即使命令略有变化,基本概念/脚本也相同。
答案4
cvt 2560 1080 600
# copy output, minus 'Modeline'
xrandr --newmode "2560x1080_60.00" 230.00 2560 2720 2992 3424 1080 1083 1093 1120 -hsync +vsync
xrandr --addmode HDMI1 "2560x1080_60.00"
xrandr --output HDMI1 --mode 2560x1080_60.00 --rate 50.0
xrandr --output eDP1 --mode 1920x1080 --rate 60.0
检查 xrandr 以查看您的 HDMI 编号和 eDP1(这是我的内部屏幕笔记本电脑)将这些行添加到 sudo gedit /usr/sbin/lightdm-session
#Guide
#Purge xorg, xserver-* nvidia*
#Install online xorg and xserver-xorg
#Install nvidia-settings and nvidia-prime
#gnome-session-properties
#unity --replace