7.4. 명령줄을 사용하여 가상 머신 직렬 콘솔 열기
virsh console
명령을 사용하면 VM(가상 머신)의 직렬 콘솔에 연결할 수 있습니다.
이 기능은 VM: * VNC 프로토콜을 제공하지 않으므로 GUI 툴에 대한 비디오 디스플레이를 제공하지 않을 때 유용합니다.
- 에는 네트워크 연결이 없으므로 SSH를 사용하여 상호 작용할 수 없습니다.
사전 요구 사항
호스트의 GRUB 부트 로더는 직렬 콘솔을 사용하도록 구성해야 합니다. 확인하려면 호스트의
/etc/default/grub
파일에GRUB_TERMINAL=serial
매개변수가 포함되어 있는지 확인합니다.sudo grep GRUB_TERMINAL /etc/default/grub
$ sudo grep GRUB_TERMINAL /etc/default/grub GRUB_TERMINAL=serial
Copy to Clipboard Copied! Toggle word wrap Toggle overflow VM에는 콘솔
type='pty'와 같은 직렬 콘솔
장치가 구성되어 있어야 합니다. 확인하려면 다음을 수행합니다.virsh dumpxml vm-name | grep console
# virsh dumpxml vm-name | grep console <console type='pty' tty='/dev/pts/2'> </console>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow VM에는 커널 명령줄에 직렬 콘솔이 구성되어 있어야 합니다. 이를 확인하려면 VM의
cat /proc/cmdline
명령 출력에 console=<console-name>이 포함되어야 합니다. 여기서 < console-name >은 아키텍처에 따라 다릅니다.AMD64 및 Intel 64의 경우:
ttyS0
참고이 절차의 다음 명령은
ttyS0
을 사용합니다.cat /proc/cmdline BOOT_IMAGE=/vmlinuz-6.12.0-0.el10_0.x86_64 root=/dev/mapper/rhel-root ro console=tty0 console=ttyS0,9600n8 rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb
# cat /proc/cmdline BOOT_IMAGE=/vmlinuz-6.12.0-0.el10_0.x86_64 root=/dev/mapper/rhel-root ro console=tty0 console=ttyS0,9600n8 rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap rhgb
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 직렬 콘솔이 VM에 올바르게 설정되지 않은 경우 virsh 콘솔 을 사용하여 VM에 연결하면 응답하지 않는 게스트 콘솔에 연결됩니다. 그러나 Ctrl+] 바로 가기를 사용하여 응답하지 않는 콘솔을 계속 종료할 수 있습니다.
VM에서 직렬 콘솔을 설정하려면 다음을 수행합니다.
VM에서
console=ttyS0
커널 옵션을 활성화합니다.grubby --update-kernel=ALL --args="console=ttyS0"
# grubby --update-kernel=ALL --args="console=ttyS0"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 변경 사항이 적용되지 않을 수 있는 커널 옵션을 지웁니다.
grub2-editenv - unset kernelopts
# grub2-editenv - unset kernelopts
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - VM을 재부팅합니다.
serial-getty@<console-name>
서비스를 활성화해야 합니다. 예를 들어 AMD64 및 Intel 64에서 다음을 수행합니다.systemctl status serial-getty@ttyS0.service
# systemctl status serial-getty@ttyS0.service ○ serial-getty@ttyS0.service - Serial Getty on ttyS0 Loaded: loaded (/usr/lib/systemd/system/serial-getty@.service; enabled; preset: enabled)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
프로세스
호스트 시스템에서
virsh console
명령을 사용합니다.libvirt
드라이버가 안전한 콘솔 처리를 지원하는 경우 다음 예제는 guest1 VM에 연결합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 표준 명령줄 인터페이스와 동일한 방식으로 virsh 콘솔과 상호 작용할 수 있습니다.