운영체제/RHEL&CENTOS

[Linux] KVM GUI가상머신 관리자에서 생성한 VM에 virsh console로 접속하기

louky 2019. 6. 25. 18:02
반응형

VM 환경

  • OS : Centos 7.6

** Centos 7  기준입니다. 

 

Linux KVM GUI가상머신 관리자로 생성한 VM에 virsh console을 통해 접속하려 할때 아래와 같은 증상이 발생한다. 

 

세션은 연결이 되었으나 더 이상 진행이 되지 않는다. 

그렇다고해서 VM이 멈추어 있는건 아니다. 

 

확인을 해보니 해당 VM내에 console접속할 수 있는 설정이 되어 있지 않아 발생하는 현상이다. 

 

아래와 같이 설정한다. 

 

먼저 해당 VM에 GUI던 ssh던 접속한다. 

필자는 ssh로 접속하여 설정하였다. 

 

/etc/default/grub을 수정한다. 

 

<원래 설정>

[root@centos76 ~]# cat /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet"
GRUB_DISABLE_RECOVERY="true"

< 수정 > 

[root@centos76 ~]# vi /etc/default/grub
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL="serial console"
GRUB_SERIAL_COMMAND="serial --speed=115200"
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap console=ttyS0,115200n8"
GRUB_DISABLE_RECOVERY="true"

 

수정된  grub을 업데이트 한다.

[root@centos76 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-3.10.0-957.el7.x86_64
Found initrd image: /boot/initramfs-3.10.0-957.el7.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-35f53fa5f74147739a113e1cd5937648
Found initrd image: /boot/initramfs-0-rescue-35f53fa5f74147739a113e1cd5937648.img
done

 

해당 VM을 종료한다. 

[root@cronus ~]# virsh shutdown centos7.6

 

해당 VM의 virsh edit를 통해 수정한다. 

[root@cronus ~]# virsh edit centos7.6
~(생략)
/* ------여기서 부터 
    <channel type='spicevmc'>
      <target type='virtio' name='com.redhat.spice.0'/>
      <address type='virtio-serial' controller='0' bus='0' port='2'/>
    </channel>
    <input type='tablet' bus='usb'>
      <address type='usb' bus='0' port='1'/>
    </input>
----------  여기까지 삭제 */
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>   
    
~(생략)   
/* ------여기서 부터
    <graphics type='spice' autoport='yes'>
      <listen type='address'/>
      <image compression='off'/>
    </graphics>
    <sound model='ich6'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'/>
    </sound>
    <video>
      <model type='qxl' ram='65536' vram='65536' vgamem='16384' heads='1' primary='yes'/>
    </video>  
 ----------  여기까지 삭제 */

해당 VM을 시작한다. 

[root@cronus ~]# virsh start centos7.6
도메인 centos7.6가 시작됨

console에 접속한다. 

[root@cronus ~]# virsh console centos7.6
도메인 centos7.6에 연결되었습니다
Escape character is ^]

CentOS Linux 7 (Core)
Kernel 3.10.0-957.el7.x86_64 on an x86_64

centos76 login:
반응형