VirtualBox의 데비안 7에서 xrandr 설정을 안정적으로 자동화 할 수 없습니다


23

문제에 대한 몇 가지 기존 질문 (가장 도움 되는 답변은 이것입니다 )과 다른 포럼의 다양한 스레드가 있지만 xrandrVirtualBox의 Debian 7에서 설정을 안정적으로 설정할 수는 없습니다 .

xrandr디스플레이 설정을 자동화 하거나 Gnome 데스크탑 환경 디스플레이 설정을 사용하지 않는 i3창 관리자를 사용하고 있기 때문에 데스크탑 환경에서 자동으로 설정하는 대신 내 디스플레이 설정을 제어 하는 데 사용하려고합니다 .

설정:

데비안이 실제로 모니터 설정에 대한 많은 정보에 액세스 할 수 있다고 생각 하지 않기 때문에, 특히 하드웨어와 관련이 있는지는 잘 모르겠습니다 . 내가 알 수있는 한 VirtualBox는 가상 모니터가 하드웨어 모니터 인 것처럼보고합니다.

하드웨어

  • nVidia 그래픽이 장착 된 Lenovo 노트북 (통합 Intel GPU는 사용되지 않음, AFAIK--이 작업을 수행하는 데 사용한 BIOS 설정이 있음)
    • 윈도우 7
    • 32GB RAM
    • 최신 (내가 생각하는) NVIDIA 드라이버 (340.84)를 사용하여 -이 있습니다 내가 버추얼 (아래 참조)에서 3D 가속을 사용할 수 있기 때문에, 문제가 생각을 수있는 게스트 OS하면 호스트 하드웨어에 액세스 할 수 있도록
  • 도킹 스테이션을 통해 HDMI를 통한 Seiki 4K TV (모니터로 사용) (DisplayPort를 내부적으로 HDMI로 변환)
  • 삼성 SyncMaster 243T 모니터가 세로로 바 turned

VirtualBox

  • VirtualBox 4.3.20 사용
  • 게스트 추가 (동일 버전)가 설치됨
  • 모니터 수 : 2 (전체 화면 모드 인 경우 Seiki 및 SyncMaster에 할당)
  • 사용 된 최대 비디오 메모리 (128MB)
  • 3D 가속 사용

손님 설정

  • 32 비트 데비안 7
  • gnomegdm3설치
  • 선호하는 WM은 i3

행동:

내가 시작 i3하고 쿼리 할 때 xrandr기본 디스플레이 설정 은 VirtualBox가보고하는 두 "모니터" VBOX0와 and 사이에서 항상 동일한 것으로 보입니다 (적어도 그것을 이해하는 방법입니다. 내가 알 수있는 한, 시행 착오가 부족한 모니터를 VBOX #가 무엇인지 알 수있는 좋은 방법은 없습니다.VBOX1xrandr

일반적으로 여기에는 수직 SyncMaster에 대한 합리적인 (기본보다 약간 낮은 경우) 해상도가 포함되지만 Seiki에는 4K 해상도가 없습니다. VirtualBox의 "자동 크기 조정 게스트 표시"옵션은 영향을 미치지 않는 것으로 보입니다 xrandr.

위의 답변에 설명 된 스크립트를 다양하게 수정 했지만 일반적으로 다양한 xrandr오류가 발생합니다. 내가 시도한 다양한 것과 내가 얻은 오류 사이에 많은 상관 관계를 찾지 못했지만 다음은 중요 할 수있는 주요 사항입니다.

스크립트 조정

  • (보통) VBoxService재시작 단계를 건너 뜁니다 ( xrandr동작 을 변경하지 않는 것 같습니다 )
  • xrandr --fb다른 xrandr명령 보다 먼저 옵션을 사용하십시오 . 이로 인해 때때로 "지정된 화면이 충분하지 않습니다"오류가 아래에 표시됩니다
  • 60 대신 30fps를 사용하십시오 (현재 HDMI를 통한 4K는 최대 30fps이지만 VirtualBox 내에서 이것이 중요 하지 않다고 생각 합니다.
  • cvt대신 사용하십시오 gtf(이것은 본질적으로 동일한 방식으로 작동합니다)
  • gtf(일반적으로 약 200 또는 300 인) 첫 번째 숫자를 다음 과 같이 작은 숫자로 100.00바꿉니다.
  • 를 사용하여 새로운 모드 이름을 무작위 화하십시오 $RANDOM(또한 이름을 다루는 다양한 다른 방법을 시도했습니다)
  • --rmmode다음을 사용하여 작성하기 전에 명시 적으로 모드 --newmode(아래에 나열된 "글꼴"오류를 방지하는 것으로 나타남)
  • 사용 --right-of또는 --left-of설정 --output의 (화면은 보통 기본적으로 미러링되기 때문에)

오류 메시지

  • xrandr: specified screen 5120x2160 not large enough for output VBOX0 (3840x2160+3840+0) X Error of failed request: BadValue (integer parameter out of range for operation) 모니터가 적절한 해상도로 이미 조정 된 후 (다음 섹션에서 설명 된 해결 방법을 사용하여) 스크립트를 다시 실행할 때이 기능을 사용했습니다. 이것은 xrandr다음을보고 하기 때문에 놀랐습니다 . Screen 0: minimum 64 x 64, current 5120 x 2160, maximum 16384 x 16384
  • X Error of failed request: BadMatch (invalid parameter attributes) 이 작업을 수행하려고 할 때 가끔 발생합니다 --newmode. 아마도 스크립트가 실패하는 가장 일반적인 이유 일 것입니다. 나는 생각 이 발생할 수 있습니다 xrandr를 설정하는 이전 시도에서 모드의 이름을 "기억"하지만, 사용 $RANDOM않습니다 되지 는 다른 문제가 될 수 있도록 지속적으로 문제를 해결하기 위해 나타납니다. ( $RANDOM하지만 이름 충돌이있을 수 있다고 가정합니다 .)을 사용하기 시작한 후이 오류 --rmmode가 표시되지 않았지만 해당 명령을 추가 한 후 스크립트를 충분히 실행하지 않아서 행동, 행위.
  • X Error of failed request: BadMatch (invalid parameter attributes) 이 작업을 수행하려고 할 때 가끔 발생합니다 --addmode. 아마도 스크립트가 실패하는 가장 일반적인 이유 일 것입니다. 때로는 스크립트에서 사용하는 동일한 순서의 명령을 수동으로 (즉, 터미널에서) 실행하는 것이이 오류에 대한 실행 가능한 해결 방법 인 것처럼 보입니다.

그놈 해결 방법 :

나는 그놈 데스크탑에 로그인하는 경우, 다음 다음, 버추얼 박스의 "자동 크기 조절 게스트 표시"기능을 수행 로그 아웃하고 다시와에서 발견 한 i3, xrandr일반적으로 자사의 자동 생성에 모두 세이 키에 대한 올바른 해상도와 싱크를 포함 4K 해상도는 각 VBOX 화면의 "선호"해상도로 설정됩니다. 이 날은 간단하게 사용할 수 있습니다 xrandr --output [4K VBOX] --auto --left-of [SyncMaster VBOX]다음, xrandr --output [SyncMaster VBOX] --mode [SyncMaster resolution]합니다 (싱크 해상도가 수동으로부터 지정해야합니다 xrandr보고서에 대한 동일한 선호하는 해상도 모두 VBOX# 진실 또는 정신 없음 관련의).

이 해결 방법, 수행, 한 번 분명히 종료 및 재부팅이 지속 (즉, 원하는 모드가 여전히 존재하는 xrandr난 여전히 두 개의 실행해야하지만,의 모드 목록 xrandr시작한 후 명령을 i3세션),하지만 않습니다 하지 항상 간단하게 때 지속 로그 아웃하고 새 i3세션을 시작합니다 . 합니다 gdm3로그인 화면이 결코 (내가 본 멀리로) 올바른 해상도가 없습니다. 나는 여기서 일어나는 이상한 것에 대해 더 이상 언급하지 않았다.

편집 : 이 접근 방식은 스크립팅 가능한 것으로 보이지 않으며 동작은 실제로 일관성이없는 것 같습니다.

기타 참고 사항 :

  • xconfetc/X11디렉토리 에 (또는 비슷한) 파일 이 없습니다 .
  • 내 모니터 중 하나를 끌 때마다 VirtualBox가 전체 화면 가상 모니터 중 하나를 종료하기 때문에 디스플레이 수정은 매우 일반적인 문제입니다. (어)

질문 :

  • VirtualBox 내에서 다른 모니터의 실제 하드웨어 기능 (예 : 기본 해상도)을 프로그래밍 방식으로 구별 할 수있는 방법이 있습니까?
  • 이러한 다양한 오류가 나타나는 이유는 무엇입니까? 무슨과에가는 xrandr등?
  • gnome세션 전에 세션을 시작하지 않고도 올바른 전체 화면 해상도를 안정적으로 달성 할 수있는 방법이 i3있습니까?

아마도 관련된 문제

  • 클릭이 감지 된 위치에 마우스 포인터가 올바르게 정렬되지 않습니다. 클릭은 일반적으로 포인터의 오른쪽 아래에서 발생합니다. 화면을 올바르게 구성하면이 문제는 일반적으로 사라지지만 현재 화면의 해상도는 정확하지만 포인터는 여전히 약간 꺼져 있습니다.
  • 해상도를 올바르게 조정하면 화면이 가끔 깜박입니다. 이것은 성가 시지만 살기 좋은 것입니다. 무엇이 원인인지 또는 고칠 수 있는지 아십니까?

노트를 파야하지만 디스플레이에 지원되는 모드는 무엇입니까? i3은 로그인 직전에 스크립트를 시작할 수있는 방법이 있습니까? superuser.com/questions/808737/… 비슷한 물리적 문제로 끝났지 만 귀하의 경우에는 약간의 마무리가 필요할 수 있습니다.
Journeyman Geek

@JourneymanGeek 4K는 60 hz에서 대부분의 표준 모드를 ​​지원하고 30 hz에서 더 큰 모드 (4K 포함)를 지원합니다. SyncMaster는 1920x1280의 기본 (수직) 해상도로 대부분의 일반 모드를 지원하는 것으로 보입니다. i3 구성 스크립트는 로그인시 스크립트 실행을 지원합니다. 이 기능을 사용하여 위에서 설명한 스크립트를 자동으로 실행합니다.이 스크립트는 귀하의 것과 비슷하지만 이상한 xrandr오류가 계속 발생합니다.
Kyle Strand

i3을 어떻게 시작합니까? 자체 X 초기화 루틴이 있습니까? 아니면 당신은 그것을 떨어 뜨리고 .xinitrc사용 startx합니까? 내가 사용하는 xmonad (내가 이해하는 것처럼 i3과 비슷합니까?)를 사용 startx합니다. 내 xrandr스크립팅은 모두 .xinit창 관리자가 시작되기 직전에 수행됩니다 . 그런 식으로 훌륭한 결과를 얻었습니다. X는 갈 준비가되었고, 다른 어떤 것도 방해하지 않았습니다.
Chris

계정의 기본 데스크톱 환경을 사용 gdm3하고 i3선택했습니다.
Kyle Strand

1
불행히도 VBox는 지속적으로 이름을 모니터에 할당하지 않기 때문에 즉시 생각할 수있는 것은 없습니다. xrandr --query(a) 설정이 잘못 감지 된 경우 및 (b) 모든 것이 올바르게 작동 한 후 출력을 게시 할 수 있습니까? 또는 올바르게 작동하는 모든 것 중 하나 이상.
Chris

답변:


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