TTY 행과 열을 실시간으로 변경하는 방법은 무엇입니까?

TTY 행과 열을 실시간으로 변경하는 방법은 무엇입니까?

Compulab이라는 장치에서 실행되는 Linux에 대한 질문입니다. 실용적인 전문가용 버전, 그러나 가능한 경우 모든 플랫폼의 문제를 해결하려면 여기에서 이 질문을 할 가치가 있다고 생각합니다.

나는 함께 있었다스파이, 완벽한리모콘예정TTY 텍스트모드 콘솔.
Utilite를 시작하면우분투12.04그리고HDMI 케이블이 연결됨720p 홈 화면에서 모든 TTY(예: 첫 번째 TTY)에 원격으로 연결할 수 있습니다.

# conspy 1

하지만 만약 내가연결을 끊다케이블을 연결하고 재부팅합니다.

luis@utilite-desktop:~$ sudo conspy 1
conspy: screen too large.  I only handle up to 200x80.

것 같다최대 1080p의 해상도, 따라서 TTY 텍스트 모드의 열/행은 ConSpy가 관리하기에는 너무 큽니다.

Kali v1.0.9와 동일한 결과입니다.

내가 읽은 바에 따르면 Linux는 텍스트 모드 해상도를 변경하는 데 심각한 문제가 있는 것 같습니다(믿기 어렵지만 사실입니다).
내가 찾은 모든 방법에는 다음이 필요합니다.GRUB 수정, 그러나 Utilite는USB 부팅GRUB도 아니고 제가 관리하기에는 너무 난해합니다(데이터를 플래시에 저장할 때의 위험에 대해서는 절대 언급하지 마세요).

있어요?TTY를 변경하는 더 쉬운 방법텍스트 해상도(예: 행과 열)?

나는 시도했다:

# nano /etc/rc.local

...그런 다음 다음을 추가합니다.

stty cols 83 rows 40

그러나 결과는 동일하게 유지됩니다.

답변1

텍스트 버퍼의 크기가 무엇인지 명확하지 않습니다.너무 큰ConSpy( stty --all또는 제공되지 않음)의 경우 텍스트 줄 수 및 cpl에 대한 권장 사항은 다음과 같습니다.

TUI 콘솔에는 다양한 매개변수가 있습니다.

  • 동영상모드(예: 스캔 라인 수 × 화면 너비(포인트))
  • 얼마나캐릭터 박스존재합니다(예: 텍스트 줄 × cpl).

일반적으로:
   텍스트 줄 수 = 스캔 줄 수 / 문자 높이
   cpl = 화면 너비(포인트) / 문자 너비
문자 높이와 너비는 포인트 단위입니다. 나누기는 정수로 하고 나머지는 반올림합니다.

텍스트 줄 수를 줄이려면 문자 높이가 더 큰 글꼴을 로드하세요. cpl(줄당 문자 수)을 줄이려면 문자 너비가 12 이상인 글꼴을 로드하세요. 예를 들어:

 setfont /usr/share/consolefonts/Uni3-TerminusBold24x12.psf.gz

(IMHO Terminus는 여러 면에서 보기 흉하지만).

Ubuntu에서는 /etc/init/console-setup.conf시작 시 실행할 사용자 정의 스크립트를 생성할 수 있습니다. 즉, 대신

exec loadkeys /etc/console-setup/cached.kmap.gz

누군가 쓸 수도 있겠지

script
    setfont /usr/share/consolefonts/Uni3-TerminusBold24x12.psf.gz
    loadkeys /etc/console-setup/cached.kmap.gz
end script

cashed.kmap.gz는 다음과 같습니다.(키맵)이며 글꼴을 방해하지 않습니다. setfont"console-setup.conf"에서 실행할 필요가 없습니다 . 왜냐하면"콘솔"이라는 단어의 의미선택은 논리적인 것처럼 보였습니다.
고쳐 쓰다:/etc/init/console-font.conf우분투에는 작업이 있습니다.

아니면 읽어보세요우분투에서 이것저것 물어보세요, 아마도 유용한 것을 찾을 수 있을 것입니다.

위 제안의 대부분은 프레임버퍼( fbdev) 드라이버가 활성화되어 있다고 가정합니다. 또한 이 경우 fbset인수가 없는 명령(또는 sudo fbset사용자 셸에서)은 다음과 같이 현재 비디오 모드의 형상을 보고합니다.
   geometry 화면 너비 스캔 라인 수

존재하다유사한 하드웨어 VGA 모드, 이는 최신 Linux에서는 더 이상 사용되지 않으며 최대 문자 너비는 9입니다. 따라서 cpl(줄당 문자 수)은 비표준(축소된) 화면 너비를 활성화하고 더 낮은 픽셀 클록 주파수를 사용하는 비표준 모드를 ​​활성화해야만 줄일 수 있습니다. 이것이 항상 가능하고 안전한 것은 아닙니다.


Linux 가상 콘솔의 텍스트 라인 × cpl에 대한 추가 참고 사항입니다. 이 값은 다음과 같이 얻을 수 있습니다.
sudo od -t u1 -N 2 /dev/vcsa숫자
첫 번째 십진수는 텍스트 줄이고 두 번째 십진수는 cpl입니다. 이것이 어떻게 작동하는지에 대한 설명은 vcs(4) 및 od(1)를 참조하십시오.

관련 정보