텍스트 콘솔에서 해상도를 설정하는 방법 (`vga =…`가 실패 할 때 문제 해결)


29

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와 같은 많은 고해상도 모드를 사용할 수있는 것처럼 보입니다 (그런데 더하기 숫자는 모드 목록에서 무엇을 의미합니까?). 그러나 커널 옵션 문자열, line에서 이러한 모드를 설정 vga=0x305하면 피치 검정 텍스트 콘솔 또는 깜박이는 색상 / bw 도트로 화면이 채워집니다.

텍스트 콘솔에서 고해상도를 설정하는 '현대적인', '견고한'방법은 무엇입니까?

답변:


25

최신 커널 은 기본적으로 KMS 를 사용 하므로 vga=Krub의 기본 해상도와 충돌하므로 grub 행에 추가하지 않아야합니다 . 그러나 사용중인 비디오 드라이버에 따라 다릅니다. 독점 Nvidia 드라이버는 KMS를 지원하지 않지만이 문제를 해결할 수 있습니다.

를 편집 /etc/default/grub하고 GFXMODE설정이 올바른지 확인한 후 다음 GFXPAYLOAD과 같이 항목 을 추가 하여 프레임 버퍼에서 전체 해상도를 얻을 수 있어야합니다 .

GRUB_GFXMODE=1680x1050x24

# Hack to force higher framebuffer resolution
GRUB_GFXPAYLOAD_LINUX=1680x1050

sudo update-grub나중에 실행해야합니다 .


나는 Driver "nvidia"내 안에 xorg.conf있어서 독점 드라이버 일 것입니다. grub어쨌든 실험 해 보겠습니다 . 그런데 독점 드라이버를 해결하는 방법은 무엇입니까?
mbaitoff

나는 독점적 인 드라이버와 위의 방법 (10.10 상자에서)을 사용하며 괜찮습니다. 당신이 원하는 경우에 당신은 항상 누보 드라이버를 시도해 볼 수도 있습니다 : nouveau.freedesktop.org/wiki/UbuntuPackages
jasonwryan

1
GFXPAYLOAD 접근 방식처럼 보이는 일했다, 그러나 단지로 set gfxpayload=keepgrub2구성 파일.
mbaitoff

2
그러나 여전히 비디오 모드가 네이티브가 아니라는 의혹이 있습니다. 내가 제공 GRUB_GFXPAYLOAD=1920x1080과 함께 GRUB_GFXMODE=1920x1080x24,하지만 난이 아닌 기본 해상도에있는 것처럼 나는 아직도 콘솔에서 흐리게 문자를 참조하십시오.
mbaitoff

1
내 VM을 위해 더 큰 콘솔을 얻으 려고이 문제를 우연히 발견하고 @mbaitoff의 의견에 추가하고 싶었습니다. set gfxpayload=keepgrub2 구성으로 들어가 려면 에 줄 GRUB_GFXPAYLOAD_LINUX=keep을 추가해야 합니다 /etc/default/grub. (이것은 데비안에 있으며, 우분투-YMMV를 다른 것으로 가정합니다). 그럽 문서에서 이것을 사냥해야 했으므로 공유 할 것이라고 생각했습니다.

13

엔비디아를 사용하는 최신 데비안 및 우분투 배포판의 경우 다음을 수행해야했습니다.

먼저 / 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

2
dpkg 재구성 콘솔 설정의 +1
jinowolski

이것은 NVidia 390 드라이버가있는 Kubuntu 16.04에서 나를 위해 일했습니다.
막심 에고 러쉬 킨

이것은 TYPO가 아닙니다. 에코 "echo FRAMEBUFFER = y"가 정확합니다. 나는 이것을 확인하고 확인했으며 파일에 후속 echo 명령이 없으면 작동하지 않습니다. 감사!
mchid

8

최선의 선택은 다음과 같습니다.

sudo hwinfo --framebuffer설명 된대로 사용 하고 콘솔에서 부팅하는 동안 표시 할 비디오 모드를 선택한 다음 vga=nnn커널 부팅 매개 변수에 옵션 을 추가하십시오 .

유일한 트릭은 즉 nnn당신이에 의해 생성 된 목록에서 선택한 비디오 모드 hwinfo- CONVERTED 진수 !

시도 vga=0xwhatever하면 작동하지 않습니다.

예를 들어 비디오 모드 0x307 (1280x1024 (+1280), 8 비트)을 선택하고 0x307을 775 인 10 진수로 변환 한 다음 vga=775isolinux / extlinux의 부팅 매개 변수에 사용 했습니다.

printf를 사용하여 16 진수를 10 진수로 변환 할 수 있습니다. $ printf "%d\n" 0x307 775

그리고 처음부터 모든 콘솔에 좋은 글씨가 있습니다.

성공!

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