Dostosowujesz geometrię wyświetlania na maszynie wirtualnej?

11

Uruchomiona wersja beta 11.04 na maszynie wirtualnej Parallels 5.0, ale to pytanie będzie dotyczyć dowolnego oprogramowania do wirtualizacji.

Narzędzia Parallels 5 Linux (dodatki dla gości) nie działają w wersjach 10.10 i 11.04 i nie chcę ich. Podoba mi się to, jak VM jest zintegrowane w obecnej postaci. Jedyne, co wymaga strojenia, to geometria ekranu.

Żadna z opcji w Systemach -> Preferencje -> Monitory idealnie pasują do mojego wyświetlacza. Potrzebuję go w rozdzielczości 1080 x 1920 (9:16) lub 1920 x 1080 (16: 9) .

Działa wiele różnych rozdzielczości (patrz zrzut ekranu poniżej), między innymi:

  • 1680 x 1080 (zbyt wąski w poziomie i nieco za krótki w pionie)
  • 1920 x 1200 (idealnie w poziomie, ale nieco za wysoko w pionie)

Jak ręcznie ustawić rozdzielczość ekranu (rozmiar wyświetlacza / monitora)?

Co próbowałem do tej pory

$ cvt 1920 1080
# 1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
$ sudo xrandr --newmode "1920x1080"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync
xrandr: Failed to get size of gamma for output default

$ cvt 1080 1920 
# 1080x1920 59.96 Hz (CVT) hsync: 119.26 kHz; pclk: 176.50 MHz
Modeline "1080x1920_60.00"  176.50  1080 1168 1280 1480  1920 1923 1933 1989 -hsync +vsync
$ sudo xrandr --newmode "1080x1920"  176.50  1080 1168 1280 1480  1920 1923 1933 1989 -hsync +vsync

$ sudo xrandr -q
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1920 x 1200, maximum 1920 x 1200
default connected 1920x1200+0+0 0mm x 0mm
   1920x1200       0.0* 
   1600x1200       0.0  
   1680x1050       0.0  
   1400x1050       0.0  
   1280x1024       0.0  
   1440x900        0.0  
   1280x960        0.0  
   1280x800        0.0  
   1024x768        0.0  
   800x600         0.0  
   640x480         0.0  
  1920x1080 (0x11d)  173.0MHz
        h: width  1920 start 2048 end 2248 total 2576 skew    0 clock   67.2KHz
        v: height 1080 start 1083 end 1088 total 1120           clock   60.0Hz
  1080x1920 (0x11e)  176.5MHz
        h: width  1080 start 1168 end 1280 total 1480 skew    0 clock  119.3KHz
        v: height 1920 start 1923 end 1933 total 1989           clock   60.0Hz

Dwie nowe rozdzielczości nie są wyświetlane w interfejsie GUI preferencji monitora: wprowadź opis zdjęcia tutaj

Wypróbowanie rozwiązania Takkat

Oto co robię i otrzymuję:

$ gtf 1920 1080 60 -x

  # 1920x1080 @ 60.00 Hz (GTF) hsync: 67.08 kHz; pclk: 172.80 MHz
  Modeline "1920x1080_60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync

$ sudo xrandr --newmode "1920x1080_60.00"  172.80  1920 2040 2248 2576  1080 1081 1084 1118  -HSync +Vsync

$ sudo xrandr --addmode default 1920x1080_60.00

$ xrandr 
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 640 x 480, current 1680 x 1050, maximum 1920 x 1200
default connected 1680x1050+0+0 0mm x 0mm
   1920x1200       0.0  
   1600x1200       0.0  
   1680x1050       0.0* 
   1400x1050       0.0  
   1280x1024       0.0  
   1440x900        0.0  
   1280x960        0.0  
   1280x800        0.0  
   1024x768        0.0  
   800x600         0.0  
   640x480         0.0  
   1920x1080_60.00   60.0  

Też próbowałem gtf 1920 1080 60 -x.

W obu przypadkach nie mogę przejść do tej rozdzielczości i uzyskać:

  • Nie można ustawić konfiguracji CRTC 262

wprowadź opis zdjęcia tutaj

Wszystkie pozostałe rezolucje działają.

Aleksandr Levchuk
źródło
1
Czy zainstalowałeś dodatki dla gości? (lub open-vmware-tools, jeśli używasz vmware)
OpenNingia
@OpenNingia, instaluję go na Parallels 5. Chciałbym uniknąć dodawania gości. Wszystko czego potrzebuję to zmienić rozdzielczość ekranu.
Aleksandr Levchuk
@Alexsandr Levchuk celem dodawania gości, narzędzi vmware itp. Jest: zapewnienie lepszej obsługi sterowników graficznych, integracji klawiatury / myszy oraz innych różnorodnych urządzeń i obsługi sieci.
Jeremy Bicha
@ jbicha, dlatego nie potrzebuję dodatków gości - dla mnie wszystkie wymienione punkty działają dobrze bez dodatków gości. Dodatki gości są przerywane przy każdej aktualizacji jądra. W przypadku Parallels 5 są one po prostu niedostępne dla Ubuntu 10.10 i 11.4
Aleksandr Levchuk
poza tym, że sterownik karty graficznej nie działa poprawnie, dlatego otworzyłeś to pytanie
Jeremy Bicha,

Odpowiedzi:

16

Wyświetl ustawienia geometrii w polu wirtualnym

W Oracle Virtual Box możesz dostosować rozdzielczość wirtualnego ekranu po zainstalowaniu Dodatków dla gości, po prostu przeciągając okno myszką lub wybierając tryb pełnoekranowy. Nie musisz nic robić z xorg.conf. XServer 1.10 (zawarty w 11.04) i dlatego Unity 3D działa tylko w Virtual Box> = 4.0.6 .

1. Użyj myszki, aby dostosować rozmiar ekranu

Regulacja ekranu poprzez zmianę rozmiaru Virtual Box Windows za pomocą myszy pozwala na dowolną rozdzielczość ekranu do rozdzielczości ekranu hosta.

2. Użyj predefiniowanych standardowych rozmiarów ekranu

Jeśli potrzebujesz stałej (standardowej) rozdzielczości, możesz także wybrać Ustawienia systemowe -> Monitory (dla 11.04) lub Wyświetlacze (dla 12.04), aby wybrać stałe rozdzielczości (tutaj pokazane dla 12.04):

wprowadź opis zdjęcia tutaj

  • Aby uzyskać maksymalną rozdzielczość ekranu hosta, musisz uruchomić Virtual Box w trybie pełnoekranowym ( Host+ F)
  • Aby uzyskać stałą rozdzielczość ekranu hosta, musimy wyłączyć automatyczną zmianę rozmiaru ekranu gościa ( HOST+ G) z menu Widok Virtual Box Manager .

3. Zdefiniuj nową geometrię za pomocą xrandr

Jeśli potrzebujesz stałej geometrii, której nie ma na liście rozdzielczości dla monitorów, będziesz musiał użyć xrandr, aby zdefiniować nową rozdzielczość:

Najpierw używamy gtfdo obliczania modelu możliwych rozdzielczości:

gtf <xres> <yres> <refresh> [-x]

Podaj żądane wartości rozdzielczości x, rozdzielczości y i częstotliwości odświeżania. Flaga -x jest domyślna i można ją pominąć. W przypadku rozdzielczości pionowej 480 x 640 przy 60 Hz otrzymasz następującą moc wyjściową:

$ gtf 480 640 60 -x
$ 480x640 @ 60.00 Hz (GTF) hsync: 39.78 kHz; pclk: 24.82 MHz Modeline "480x640_60.00" 24.82 480 504 552 624 640 641 644 663 -HSync +Vsync

Z tego możemy skopiować i wkleić modeline, aby dodać ją do listy znanych rozdzielczości xrandr:

xrandr --newmode "480x640_60.00" 24.82 480 504 552 624 640 641 644 663 -HSync +Vsync

i dodaj to do Virtual Box Monitor:

xrandr --addmode VBOX0 480x640_60.00

Wymień VBOX0na odpowiedni monitor, jeśli skonfigurowałeś Virtual Box z wieloma monitorami (lub dowolną inną nazwą wyjściową raportowaną przez sterownik).

Możemy teraz przejść do nowo zdefiniowanej geometrii, jak opisano powyżej ( 2. ).

Takkat
źródło
3
Virtual box 4.0 ma nowy „tryb skali” dla rozmiaru ekranu. virtualbox.org/wiki/Changelog
djangofan
2
Bardzo polecam korzystanie z VirtualBox (VB); działa na każdym systemie operacyjnym, nie tylko na komputerach Mac. Jest to oprogramowanie typu open source i dlatego znajduje się w repozytoriach Ubuntu, jeśli chcesz, aby Ubuntu był systemem operacyjnym hosta, a narzędzia guest-utils znajdują się w repozytoriach, jeśli chcesz, aby Ubuntu był gościem (ale chcesz się upewnić, że gość -utils numer wersji odpowiada wersji VB). Ponieważ większość z nas nie ma zainstalowanych Parallels, trudniej jest znaleźć wsparcie społeczności od użytkowników Ubuntu.
Jeremy Bicha
Drogi @ Takkat, utknąłem w ostatniej części - xrandr --addmode VBOX0 480x60_60.00. Nie mam VBOX0. Gdzie mogę uzyskać listę dostępnych monitorów?
Aleksandr Levchuk
@Takkat, dziękuję za wyjaśnienie, jak wyszukać monitor (mój był „domyślny”). Jestem dalej, ale nadal mam blokera. Proszę zobaczyć moją aktualizację w pytaniu.
Aleksandr Levchuk
@Takkat, wszystkie moje operacje były w trybie pełnoekranowym.
Aleksandr Levchuk
3

W VirtualBox używam minimalnej wersji starego dobrego xorg.conf:

Section "Monitor"
    Identifier      "Monitor0"
    HorizSync       30.0 - 96.0
    VertRefresh     50.0 - 160.0
EndSection

Section "Device"
    Identifier      "Device0"
    Driver          "vesa"
EndSection

Section "Screen"
    Identifier      "Screen0"
    Monitor         "Monitor0"
    Device          "Device0"
    DefaultDepth    24
    SubSection "Display"
        Depth       24
        Modes       "1280x1024"
    EndSubSection
EndSection

Section "ServerLayout"
    Identifier      "Layout0"
    Screen          "Screen0"
EndSection

Nie wiem, czy musisz podać HorizSync i VertRefresh dla TFT, ale w żadnym wypadku nie kopiuj moich wartości!

htorque
źródło
Prawdopodobnie już nie jest to konieczne. Virtual box 4.0 ma nowy „tryb skali” dla rozmiaru ekranu. virtualbox.org/wiki/Changelog
djangofan
To mi nie zadziałało. Po umieszczeniu pliku xorg.conf i ponownym uruchomieniu komputera ekran staje się czarny. Odzyskano za pomocą ctrl + alt + f1
Aleksandr Levchuk
0

Miałem ten problem z Windows8 (Host Ubuntu). Nie skaluje się do rozmiaru zewnętrznego monitora.

W Virtualbox, Plik, Preferencje [CTRL] + [G], Wyświetlanie, wybierz Maksymalny rozmiar ekranu gościa - Automatycznie.

Rozwiązany. VirtualBox - Ustawienia

GUI Junkie
źródło
0

Podsumowując zwięźle roboczą odpowiedź. Testowane w 18.04 z lubuntu-desktop:

  1. Zainstaluj dodatki dla gości na maszynie wirtualnej:sudo apt-get install virtualbox-guest-dkms
  2. Uruchom ponownie maszynę wirtualną: sudo shutdown -r now
  3. Po zalogowaniu się do maszyny wirtualnej zmień rozmiar okna VirtualBox do pożądanego rozmiaru. (Ekran maszyny wirtualnej w oknie nie zmienia się jeszcze automatycznie).
  4. Na maszynie wirtualnej przejdź do Preferencje -> Ustawienia monitora -> wybierz Auto -> Zastosuj -> OK

(Możesz pominąć krok 1, jeśli dodatki gości są już zainstalowane. Sprawdź, czy sudo lsmod | grep vboxnajpierw coś zwraca.)

krubo
źródło