web-dev-qa-db-ja.com

テキストコンソールで解像度を設定する方法( `vga = ...`が失敗した場合のトラブルシューティング)

これは、vga=...カーネルパラメーターを使用して、テキストコンソール(通常はCtrl-Alt-F1からCtrl-Alt-F6で使用可能)の解像度を設定する一般的な方法です。 Ubuntu 10.04 Lucidを使用しています。uname -aの出力は次のとおりです。

Linux  2.6.32-33-generic #70-Ubuntu SMP Thu Jul 7 21:13:52 UTC 2011 x86_64 GNU/Linux

利用可能なモードを特定するには、次のレポートを使用するSudo hwinfo --framebufferを使用します。

02: None 00.0: 11001 VESA Framebuffer                            
  [Created at bios.464]  
  Unique ID: rdCR.R1b4duaxSqA  
  Hardware Class: framebuffer  
  Model: "NVIDIA G73 Board - p456h1  "  
  Vendor: "NVIDIA Corporation"  
  Device: "G73 Board - p456h1  "  
  SubVendor: "NVIDIA"  
  SubDevice:   
  Revision: "Chip Rev"  
  Memory Size: 256 MB  
  Memory Range: 0xc0000000-0xcfffffff (rw)  
  Mode 0x0300: 640x400 (+640), 8 bits  
  Mode 0x0301: 640x480 (+640), 8 bits  
  Mode 0x0303: 800x600 (+800), 8 bits  
  Mode 0x0305: 1024x768 (+1024), 8 bits  
  Mode 0x0307: 1280x1024 (+1280), 8 bits  
  Mode 0x030e: 320x200 (+640), 16 bits  
  Mode 0x030f: 320x200 (+1280), 24 bits  
  Mode 0x0311: 640x480 (+1280), 16 bits  
  Mode 0x0312: 640x480 (+2560), 24 bits  
  Mode 0x0314: 800x600 (+1600), 16 bits  
  Mode 0x0315: 800x600 (+3200), 24 bits  
  Mode 0x0317: 1024x768 (+2048), 16 bits  
  Mode 0x0318: 1024x768 (+4096), 24 bits  
  Mode 0x031a: 1280x1024 (+2560), 16 bits  
  Mode 0x031b: 1280x1024 (+5120), 24 bits  
  Mode 0x0330: 320x200 (+320), 8 bits  
  Mode 0x0331: 320x400 (+320), 8 bits  
  Mode 0x0332: 320x400 (+640), 16 bits  
  Mode 0x0333: 320x400 (+1280), 24 bits  
  Mode 0x0334: 320x240 (+320), 8 bits  
  Mode 0x0335: 320x240 (+640), 16 bits  
  Mode 0x0336: 320x240 (+1280), 24 bits  
  Mode 0x033d: 640x400 (+1280), 16 bits  
  Mode 0x033e: 640x400 (+2560), 24 bits  
  Config Status: cfg=new, avail=yes, need=no, active=unknown  

0x305、0x307、0x317、0x318、0x31a、0x31bなどの多くの高解像度モードが利用できるようです(ちなみに、モードのリストでプラス番号は何を意味していますか?)。ただし、カーネルオプション文字列の行vga=0x305でこれらのモードのいずれかを設定すると、真っ黒なテキストコンソール、または点滅する色/ bwドットで満たされた画面が表示されます。

テキストコンソールに高解像度を設定する「モダン」で「堅牢な」方法は何ですか?

29
mbaitoff

新しいカーネルはデフォルトで [〜#〜] kms [〜#〜] を使用するため、KMSのネイティブ解像度と競合するため、vga=をgrub行に追加しないでください。 。ただし、使用しているビデオドライバーによって異なります。独自のNvidiaドライバーは [〜#〜] kms [〜#〜] をサポートしていませんが、回避できます。

/etc/default/grubを編集し、GFXMODEが正しく設定されていることを確認してから、GFXPAYLOADエントリを次のように追加することで、フレームバッファーでフル解像度を取得できるはずです。

GRUB_GFXMODE=1680x1050x24

# Hack to force higher framebuffer resolution
GRUB_GFXPAYLOAD_LINUX=1680x1050

後でSudo update-grubを実行することを忘れないでください。

27
jasonwryan

Nvidiaを使用する新しいDebianおよびUbuntuディストリビューションの場合、次のことを行う必要がありました。

まず、/ etc/default/grubを編集します。次の行を変更します。

#GRUB_GFXMODE=640x480 

これに:

GRUB_GFXMODE=1280x800 
GRUB_GFXPAYLOAD_LINUX=keep

1280x800を目的の解像度に置き換えます。

次に:

echo "echo FRAMEBUFFER=y" | Sudo tee /etc/initramfs-tools/conf.d/splash
Sudo update-initramfs -u
Sudo update-grub

フォントサイズを変更するには、次のコマンドを使用します。

Sudo dpkg-reconfigure console-setup
14
mchid

ここにあなたの最良の選択肢があります:

説明されているようにSudo hwinfo --framebufferを使用し、コンソールでの起動中に表示するビデオモードを選択して、カーネルブートパラメータにオプションvga=nnnを追加します。

唯一のトリックは、nnnhwinfoによって生成されたリストから選択したビデオモードであることです。--10進数に変換 !!!

vga=0xwhateverを試してもうまくいきません。

たとえば、ビデオモード0x307(1280x1024(+1280)、8ビット)を選択し、0x307を775である10進数に変換し、isolinux/extlinuxのブートパラメーターでvga=775を使用しました。

Printfを使用して、16進数を10進数に変換できます:$ printf "%d\n" 0x307 775

そして、最初からすべてのコンソールで素敵な細かいテキストを受け取りました。

成功!

9
chris_startx