Qemu 게스트 콘솔=tty0을 stdin/stdout 호스트로 리디렉션하는 방법은 무엇입니까?

Qemu 게스트 콘솔=tty0을 stdin/stdout 호스트로 리디렉션하는 방법은 무엇입니까?

다음 구성 옵션을 갖춘 Linux 커널이 있습니다.

CONFIG_CMDLINE_BOOL=y
CONFIG_CMDLINE="console=tty0 init=/init"
CONFIG_CMDLINE_OVERRIDE=y

나는 다음과 같이 Qemu를 실행합니다.

qemu-system-x86_64 -nographic -kernel my-vmlinuz

-nographic게스트가 ttyS0대신 tty0호스트 stdin/ 에 암시적으로 연결되어 있기 때문에 이것은 (올바르게) 출력을 표시하지 않습니다 stdout. 게스트를 tty0호스트 stdin/ 에 연결하도록 Qemu에 어떻게 지시합니까 stdout?

인용하다:

답변1

내 생각엔 당신이 할 수 없을 것 같아요. 가상 터미널( tty1등)은 기본적으로 메모리 매핑된 문자 배열(+ 속성)을 시스템에 제공하는 VGA 텍스트 모드 위에 구현됩니다. 그런 다음 커널은 필요에 따라 배열에 씁니다. 그러나 파일 스트림은 stdout본질적으로 선형이므로 완전히 호환되지 않습니다.

그러나 수행할 수 있는 작업은 qemu -curses다음을 사용하여 게스트의 텍스트 모드 VGA 출력을 보는 것입니다. 또는 console=ttyS0커널 명령줄을 입력하고 게스트가 직렬 포트를 콘솔로 사용하도록 합니다. ( grub직렬 포트를 사용하도록 구성해야 할 수도 있습니다 .)

답변2

나는 다음이 당신에게 도움이 될 것이라고 믿습니다:

CONFIG_CMDLINE="console=tty0 console=ttyS0,9600n8 init=/init"

이것은에서 비롯됩니다tldp용 원격 직렬 콘솔 HOWTO

당신은 또한 볼 수 있습니다이 문제

관련 정보