기본 모니터에 대한 사용자 정의 해상도를 설정하려고 하는데 모니터가 사용 가능한 해상도를 광고하지 않습니다. Windows에서는 NVIDIA 제어판에서 사용자 정의 해상도를 설정한 다음 명령줄을 사용하여 해당 해상도로 전환할 수 있습니다.qres.
이제 Linux를 사용하고 있으므로 디스플레이에 대한 사용자 정의 모드를 생성하고 xrandr을 사용해야 할 때 해당 모드로 전환하고 싶습니다. 그러나 내가 찾은 모든 가이드는 실패했고 결국 "BadMatch" 오류가 발생했습니다.
ellitedev@twrreborn:~$ xrandr
Screen 0: minimum 8 x 8, current 3640 x 2580, maximum 32767 x 32767
DP-0 connected 1080x1920+0+660 left (normal left inverted right x axis y axis) 531mm x 298mm
1920x1080 60.00*+ 144.00 119.98 119.88 100.00 99.93 74.99 59.94 50.00
1440x900 119.85
1280x1024 119.96 75.02 60.02
1280x960 99.78
1280x720 60.00 59.94 50.00
1024x768 119.99 75.03 60.00
800x600 119.97 99.66 75.00 60.32
720x576 50.00
720x480 59.94
640x480 119.52 75.00 59.94 59.93
DP-1 disconnected (normal left inverted right x axis y axis)
DP-2 disconnected (normal left inverted right x axis y axis)
DP-3 connected (normal left inverted right x axis y axis)
1280x768 59.99 +
1920x1080 60.00 59.94 50.00
1360x768 60.02
1360x765 60.00
1280x800 59.81
1280x720 60.00 59.94 50.00
1024x768 75.03 70.07 60.00
800x600 75.00 72.19 60.32 56.25
720x576 50.00
720x480 59.94
640x480 75.00 72.81 59.94 59.93
HDMI-0 connected primary 2560x1080+1080+1080 (normal left inverted right x axis y axis) 798mm x 334mm
2560x1080 59.98*+ 74.99 50.00
3840x2160 29.97 25.00 23.98
2560x1440 59.95
1920x1080 75.00 60.00 59.94 50.00
1680x1050 59.95
1600x900 60.00
1280x1024 75.02 60.02
1280x800 59.81
1280x720 60.00 59.94 50.00
1152x864 60.00
1024x768 75.03 60.00
800x600 75.00 60.32
720x576 50.00
720x480 59.94
640x480 75.00 59.94 59.93
DP-4 disconnected (normal left inverted right x axis y axis)
DP-5 connected 1920x1080+1400+0 (normal left inverted right x axis y axis) 531mm x 299mm
1920x1080 60.00*+ 59.94 50.00
1680x1050 59.95
1600x900 60.00
1440x900 59.89
1280x1024 75.02 60.02
1280x800 59.81
1280x720 60.00 59.94 50.00
1152x864 75.00
1024x768 75.03 70.07 60.00
800x600 75.00 72.19 60.32 56.25
720x576 50.00
720x480 59.94
640x480 75.00 72.81 59.94
DVI-D-1-0 disconnected (normal left inverted right x axis y axis)
HDMI-1-0 disconnected (normal left inverted right x axis y axis)
DP-1-0 disconnected (normal left inverted right x axis y axis)
DP-1-1 disconnected (normal left inverted right x axis y axis)
ellitedev@twrreborn:~$ cvt 2400 1080 60
# 2400x1080 59.97 Hz (CVT) hsync: 67.16 kHz; pclk: 216.00 MHz
Modeline "2400x1080_60.00" 216.00 2400 2552 2808 3216 1080 1083 1093 1120 -hsync +vsync
ellitedev@twrreborn:~$ xrandr --newmode "2400x1080_60.00" 216.00 2400 2552 2808 3216 1080 1083 1093 1120 -hsync +vsync
ellitedev@twrreborn:~$ xrandr --addmode HDMI-0 "2400x1080_60.00"
X Error of failed request: BadMatch (invalid parameter attributes)
Major opcode of failed request: 140 (RANDR)
Minor opcode of failed request: 18 (RRAddOutputMode)
Serial number of failed request: 65
Current serial number in output stream: 66
이 모니터 하나를 교체해도 다른 모든 모니터는 그대로 유지되는지 확인하고 싶습니다.
나는 이것이 아마도 다른 게시물과 중복된 것이라는 것을 알고 있지만 어찌할 바를 모르겠습니다.
답변1
해결책을 찾았습니다! 남자에게서 내가 알아야 할 기본 사항을 얻었습니다.포럼 게시물및 YouTube 동영상을 볼 수 있습니다.
포럼 게시물에서 xorg 구성에 추가해야 할 특정 옵션을 발견했습니다. 저는 Pop!_OS를 사용하고 있기 때문에 /usr/share/X11/xorg.conf.d/
. 실제로 변경해야 했던 파일은 10-nvidia.conf
.YouTube 동영상에서 xorg가 시작 시 파일 이름 순서로 구성을 로드하는 것을 보았기 때문에 이런 경우라고 생각했습니다. nvidia 드라이버가 있으므로 nvidia.h라는 파일이 될 것이라고 가정합니다.
이제 추가해야 할 줄은 다음과 같습니다.
Option "ModeValidation" "AllowNon60hzmodesDFPModes, NoEDIDDFPMaxSizeCheck, NoVertRefreshCheck, NoHorizSyncCheck, NoDFPNativeResolutionCheck, NoMaxSizeCheck, NoMaxPClkCheck, AllowNonEdidModes, NoEdidMaxPClkCheck"
이제 내 구성은 다음과 같습니다.
Section "OutputClass"
Identifier "nvidia"
MatchDriver "nvidia-drm"
Driver "nvidia"
Option "AllowEmptyInitialConfiguration"
Option "ModeValidation" "AllowNon60hzmodesDFPModes, NoEDIDDFPMaxSizeCheck, NoVertRefreshCheck, NoHorizSyncCheck, NoDFPNativeResolutionCheck, NoMaxSizeCheck, NoMaxPClkCheck, AllowNonEdidModes, NoEdidMaxPClkCheck"
ModulePath "/usr/lib/x86_64-linux-gnu/nvidia/xorg"
EndSection
이 구성을 저장하고 재부팅한 후 모니터에 사용자 정의 모드를 성공적으로 추가할 수 있었습니다. :) 혼란스러워하는 다른 사람들에게 도움이 되기를 바랍니다.