Linux önyüklemesi sırasında video modu geçişini azaltma


12

Üzerinde sadece Linux bulunan masaüstü bilgisayarımı açtığımda, video modu ve / veya konsol yazı tipi dört kez değiştiriliyor:

  • GRUB başladığında, 80x25 metinden grafik moduna geçer, böylece menünün arkasına güzel bir arka plan çizebilir;
  • GRUB menüden bir şey seçtikten sonra 80x25 metne geri dönüyor;
  • Ekran kartımın KMS sürücüsü yüklendiğinde, çok daha yüksek çözünürlüklü bir metin moduna geçer (bunun bir donanım metin modu olup olmadığını bilmiyorum);
  • Sonunda X başlar ve grafiklere gider ve bu şekilde kalır. Bu son anahtarın video modunun çözünürlüğünü değiştirmediğini , sadece grafiksel olduğunu düşünüyorum.

Bu mod anahtarlarından mümkün olduğunca çok kurtulmak istiyorum. İdeal olarak, GRUB BIOS'tan devraldığında, doğrudan KMS sürücüsünün seçtiği aynı yüksek çözünürlüklü metin moduna geçecek ve X başlayıp grafik getirene kadar ekran bu modda kalacaktı. Bunun çekirdek komut satırı ve / veya GRUB konsol modülü yük parametreleri ile mucking yoluyla mümkün olduğu izlenimi altındayım, ancak ayrıntıları bilmiyorum.

GRUB 1.98 + 20100706, çekirdek 2.6.32.15 Nouveau video sürücüleri kullanarak. Distro Debian kararsız. Lütfen herhangi bir şeyi yeniden derlemeyi veya kanayan kenar çekirdek / sürücü kombinasyonlarını birlikte kaldırmayı içeren cevaplar yok, bu kadar sorunla başa çıkmak için yeterince umursamıyorum.

EDIT: Tobu GRUB_GFXMODE, monitörün tam piksel çözünürlüğüne ayarlanmasını GRUB_GFXPAYLOAD_LINUX=keepve menü kaybolduktan sonra mod geçişini önlemeyi önerir . Bu istediğimin bir parçası, ama genel olarak daha kötü olmak rüzgarlar. Menüden sonra mod geçişi yok, ancak hala ağrılı yavaş bir ekran boyası var (muhtemelen GRUB'un gfxmode'undan vazgeçmeliyim, 1920x1200'de çok yavaş). Daha ciddisi, şimdi nouveaufb yüklendiğinde çift modlu bir anahtar var.dmesg

[    5.923798] [drm] nouveau 0000:02:00.0: allocated 1920x1200 fb: 0x40250000, bo ffff8801ba5f4600
[    5.923802] fb: conflicting fb hw usage nouveaufb vs EFI VGA - removing generic driver
[    5.923821] [drm] nouveau 0000:02:00.0: PFIFO_INTR 0x00000010 - Ch 1
("PFIFO_INTR" message repeats 400+ times)
[    5.925609] Console: switching to colour dummy device 80x25
[    5.925802] Console: switching to colour frame buffer device 240x75

"Grafikselliğin" ne olduğunu merak ediyorum.
sonraki duyuruya kadar duraklatıldı.

1
Belirli bir piksel çözünürlüğü için, bir video modu grafiksel (her bir piksel adreslenebilir) veya metin olabilir (bir karakter hücresi terminalini eski günlerden simüle edebilir). "Grafiksel" ile kastettiğim, listelediğim dördüncü video modu anahtarı piksel çözünürlüğünü değiştirmeden metinden grafiğe gidiyor, sanırım yine de.
zwol

Yanıtlar:


2

Plymouth bu konuda yardımcı olmak için tasarlanmıştır:

Fikir, önyükleme işleminin başlangıcında bilgisayarın yerel modunun ayarlanmış olması, plymouth'un bu modu kullanması ve bu modun tüm önyükleme işlemi boyunca X başladıktan sonra ve sonra kalmasıdır. İdeal olarak, hedef başlatma sırasında tüm titremelerden kurtulmaktır.

Yalnızca tek bir işletim sistemi yüklüyken, grup çözünürlüğü değişikliklerini (arka plan grafiği yok) ve hatta menünün kendisini devre dışı bırakmak, 80x25'i bırakmak Plymouth devralıncaya kadar hiçbir değişikliğe neden olmaz.


1

Çözünürlüğünüzü ve renk derinliğinizi araştırın:

xrandr -q
xdpyinfo | grep 'depth of root window' | awk '{ print $5 }'

Set GRUB_GFXMODE=<width>x<height>x<depth>içinde /etc/default/grubgrub menü çözünürlüğü KMS çözünürlüğü eşleşecek şekilde.

Belki GRUB_GFXPAYLOAD_LINUX=keepvarsayılanlara da ekleyin , böylece grub menüsünden sonra ve KMS'yi ayarlamadan önce ara bir adım olmaz. X11, KMS'nin kullandığı şeyi korumalıdır, yani endişelenecek bir X11 anahtarı yoktur.

Düzenlemelerinizi şununla uygulayın:

sudo update-grub

Teşekkürler! Bu istediğimin bir parçasıydı, ancak bunu statükodan daha kötü yapan olumsuz yan etkileri vardı. Soruya ayrıntıları ekledim.
zwol

0

KUB'ı GRUB'dan hemen sonra aktif hale getirebilirsiniz ve bu genellikle çekirdek komut satırına onu açan bir parametre içerir. Intel için bu i910.modeset=1, ancak bunun ötesinde dağıtımınızın dokümanlarını bu konuda kontrol etmeniz gerekir.


KMS, nouveau sürücüsü yüklendiğinde aktif, sanırım, ancak bu sadece udev'in ilk cihaz taraması sırasında, kullanıcı alanı çalıştıktan bir süre sonra gerçekleşir. Ben biraz video = ve vga = komut satırı seçenekleri ile berbat ama herhangi bir şans yoktu.
zwol

Bu yöntemle daha önce yüklemesini söyleyebilirsiniz
Daenyth

Çekirdeği nouveauderlenmiş modülle (çok fazla sorun) derlemenin kısa yapması, yapabildiğim en iyisi sopa nouveau'dur /etc/initramfs-tools/modules... ama tek yapmanız gereken çift mod anahtarını daha önce, içeriden "Beklemek / dev "Yükleniyor, lütfen bekleyin ..." ifadesinden hemen sonra doldurulmalıdır. Amaç, mod anahtarlarını ortadan kaldırmaktır .
zwol

Bu durumda, KMS kapasitesine sahip bir önyükleyici kullanmanız gerekir. Sanırım grub2 bunu yapabilir, ama eğer yapmazsa, o zaman tamamen şansın yok.
Daenyth

grub2 modu ayarlar ve sette bırakır (GRUB_GFXPAYLOAD_LINUX = tutmak başarılı olur) ama bu bir şekilde nouveau ve / veya fb alt sistemi için yeterince iyi değil, dolayısıyla "Çakışan fb hw kullanımı" hata mesajları. Bu arada, dizüstü bilgisayarımda i915 ile tam olarak aynı davranış.
zwol
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.