xrandr에서 설정 한 외부 모니터 해상도를 유지하는 방법


11

tl; dr

내 랩탑은 연결된 외부 모니터의 올바른 해상도를 잊어 버리고 있습니다. 구성을 "스틱"으로 만들려면 어떻게해야합니까?

세부

Linux Mint를 실행하는 랩톱이 외부 ViewSonic 모니터에 연결되어 있습니다. 외부 모니터를 두 번째 화면 (즉, 미러링되지 않음)으로 사용하도록 설정했습니다. 이것은 몇 주 동안 잘 작동했습니다.

갑자기 랩톱이 더 이상 ViewSonic으로 인식되지 않아 최적의 해상도 ( 1600 x 1200)를 알지 못하여 최대 1028 x 768. 11920 x 1200 해상도 가있는 랩탑에서는 전혀 작동하지 않았습니다 .

많은 좌절 후, 나는 이 대답을 찾았습니다 . 다음과 같이 문제를 해결하는 데 도움이되었습니다 ( cvt명령 의 출력은 다음 명령에서 사용 된 modeline입니다).

cvt 1600 1200
xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00

입니다 정확히 내가 할 수있는 희망했다,하지만 GUI를 통해 할 수 없었던 것. (내가 여전히 커맨드 라인을 좋아하는 이유가 있습니다 ...)

이것은 다시 한 번 잘 작동했습니다. 그러나 오늘 컴퓨터를 부팅하고 로그인하면 작동하지 않는 다른 시도 모드에 대한 오류 메시지가 포함 된 알림 영역 팝업이 표시되고 외부 모니터가 꺼졌습니다. 위의 명령을 반복하면 다시 작동합니다.

nVidia 카드가 있습니다. 문제가 발생했을 때 독점 드라이버를 설치하려고했지만 그 시점에서 외부 모니터가 더 이상 인식되지 않아 오픈 소스 드라이버로 돌아 왔습니다. 나는이없는 Xorg.confXorg.conf.d, 단지를 xorg.conf.failsafe.

컴퓨터를 부팅 할 때마다이 명령을 반복하고 싶지 않습니다. 이것을 내 Xorg.conf또는 다른 곳에 저장할 수있는 방법이 있습니까? X로 많은 일을 한 지 몇 년이 지났습니다. 아무도 나를 도와 줄 수 있습니까?


1 왜 이런 일이 일어 났는지 알 수 없었습니다. 가장 좋은 추측은 문제가있는 드라이버 업데이트입니다.


1
어떤 그래픽 카드를 사용하고 있습니까? ATI / AMD 또는 Nvidia 인 경우 독점 드라이버 또는 오픈 소스 드라이버를 사용하고 있습니까? 현재 /etc/X11/corg.conf파일이 /etc/X11/corg.conf.d있습니까? 따라서 질문을 편집 하고 해당 파일의 내용을 추가하십시오.
terdon

제발 편집 추가 정보를 추가 할 귀하의 질문에, 읽기 어려울 쉬운 코멘트에 미스이다. 예, xorg.conf는 더 이상 필요하지 않습니다. 이제 이런 것들이 udev에 의해 처리됩니다.
terdon

귀하의 질문을 다시보고 내 답변을 쓸 때 내가 놓친 것은 노트북이 있다는 것입니다. udev모니터를 꽂거나 뽑을 때마다 xrandr을 수행하는 스크립트를 호출하는 규칙을 작성하는 것이 컴퓨터를 항상 모니터에 연결하지 않는 것이 훨씬 좋습니다. 그렇지 않으면 항상 같은 장소에 설치하는 것이 행복하다면 Xorg.conf갈 길입니다.
Graeme

답변:


5

더 좋은 방법이 있다고 확신합니다.이 모든 것이 udev지금 처리되고 있다고 생각 하지만 이러한 명령으로 해결할 수 있다는 것을 알고 있다면 항상 스크립트로 만들 수 있습니다.

#!/usr/bin/env bash
cvt 1600 1200
xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
xrandr --addmode VGA-1 1600x1200_60.00

실행 가능하게 만든 다음 데스크탑 환경의 시작 응용 프로그램에 추가하십시오. DE가 옵션을 제공한다면 이것이 최선의 선택 일 것입니다.


위의 작업을 수행 할 수없는 경우 더러운 해킹으로 다음에 추가 할 수 있습니다 ~/.profile.

if [ ! -t 0 ] 
then
    cvt 1600 1200
    xrandr --newmode "1600x1200_60.00"  161.00  1600 1712 1880 2160  1200 1203 1207 1245 -hsync +vsync
    xrandr --addmode VGA-1 1600x1200_60.00
fi

if [ ! -t 0 ]이 GUI에서만 실행하고 확인해야합니다 .profile내가 기억으로는 민트의 로그인 관리자에 의해 공급된다.

지금, 당신은 해야한다 또한 사용할 수 ~/.xsession있지만 무시되고 있다는 문제를 했어. 많은 오래된 접근법이 대체되고 있으며 최신 기술이 무엇인지 잘 모르겠습니다.


다음 두 줄에서 이미 출력을 사용 했으므로 cvt 1600 1200을 사용할 필요가 없습니다.
PraveenMax

4

Nvidia 독점 드라이버를 사용하는 nvdia-settings경우 Xorg.conf파일 을 구성하는 GUI 도구 여야 합니다. Linux Mint에는 자체 패키지가 있어야하므로 설치는 다음과 같이 간단합니다.

sudo apt-get install nvidia-settings

이렇게하면 아이콘이 어딘가에 메뉴에 있어야하며 거기에서 실행할 수 있습니다 (루트 권한을 얻는 방법을 모르겠습니다). 커맨드 라인에서 할 수 있다고 생각합니다.

sudo /usr/lib/nvidia/current/nvidia-settings

커맨드 라인을 원한다면 nvidia-xconfig사용할 도구 인 것 같습니다 ( nvidia-xconfig나를 위해 패키지). 어느 방법을 사용하든 독점 드라이버를 올바르게 구성하면 일반적으로 더 나은 결과를 얻을 수 있습니다. 이러한 도구는 최소한 합리적인 Xorg.conf파일을 생성하여 직접 또는 이러한 프로그램 중 하나를 통해 조정할 수 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.