본문 바로가기

Linux

리눅스에 가상머신 설치하기 [QEMU]

앞으로 티스토리 대신 blog.stackframe.dev에서 블로깅을 합니다. 이 블로그는 남겨 둘 예정입니다.

리눅스를 메인으로 사용하다보면 윈도우즈나 다른 리눅스 배포판을 꼭 사용해야할 때가 생깁니다. 공인인증서라던가, hwp라던가, 호환성 검사라던가...

듀얼 부팅을 설정해뒀다면 리부팅하여 OS 변경할 수 있지만 몇 번 리부팅하다보면 이마저도 귀찮고 리눅스에서 중요한 작업을 하고 있는데 종료하기도 곤란한 상황이 생깁니다.

 

리눅스에서도 VirtualBox가 지원됩니다. 그러므로 자신이 아직 리눅스에 대해 초보라면 이 글을 따라하는건 그리 추천해드리지 않고 먼저 VirtualBox를 사용하면서 리눅스에 대해 공부하시는걸 권합니다. 리눅스에 대해 어느정도 이해하고 "나는 변태라서 가상머신마저 터미널로 실행하고싶다!"하는 분께 이 글이 도움되실겁니다.

 

이 글을 따라하기에 앞서 하드웨어가 지원되는지 확인해야합니다.

저희가 사용할 qemu는 kvm을 사용하면 속도가 상당히 향상됩니다. kvm은 Kernel-based Virtual Machine의 약자로 가상머신 실행을 도와주는 리눅스 커널 모듈입니다. 이것을 통해 CPU가 지원하는 VT-x / AMD-V 또는 SVM 이란 기술을 사용하여 가상화에 들어가는 오버헤드를 줄입니다.

아무튼 CPU가 지원되어야 kvm을 사용할 수 있고, kvm이 사용되야 QEMU를 실행할 때 속터지지 않으므로 이를 확인합니다.

$ cat /proc/cpuinfo | grep --color -E 'vmx|svm'

/proc/cpuinfo에는 현재 CPU 정보가 들어있습니다. 여기서 CPU가 Intel 제품이면서 VT-x가 지원되면 vmx 플래그가, AMD 제품이면서 AMD-V가 지원되면 svm 플래그가 보입니다. 위의 명령은 /proc/cpuinfo에서 vmx나 svm 문자를 검색하는 명령입니다. 문자들이 표시되면 CPU가 지원하는 겁니다.

vmx 발견

 이제 하드웨어가 지원하는 것을 알았습니다. 여기서 문제는 대부분의 컴퓨터에는 기본적으로 가상화 지원 설정이 꺼져있으므로 BIOS 설정에 진입하여 활성화할 필요가 있습니다. 제 컴퓨터의 BIOS인 InsydeH2O는 System Configuration 탭의 Virtualization Technology에 설정이 있었습니다. 이것은 컴퓨터마다 다르니 BIOS에서 설정을 잘 찾아보시기 바랍니다.

 

가상화 기능을 활성화 시켰으니 이제 kvm 모듈이 존재하는지 확인합니다. 대부분의 배포판들은 kvm 모듈이 기본적으로 들어있으므로 걱정하지 않지만 혹시 모르니 확인해봅시다.

$ lsmod | grep kvm

여기서 어떤 문자열이 나오면 모듈이 로드되어 있으므로 밑의 modinfo와 modprobe를 할 필요가 없습니다.

만약 나오지 않는다면 modinfo로 kvm이 존재하는지 확인합니다.

$ modinfo kvm

모듈이 설치되어 있다면 위처럼 나옵니다. 없다면 배포판이 아예 지원하지 않는 것일 수도 있고 패키지 매니저에서 따로 설치해야 할 수도 있습니다.

modinfo에 나오는데 lsmod에서 표시되지 않는다면 modprobe로 로드합니다.

# modprobe kvm

제가 지금까지 본 배포판 중에 kvm이 기본 설치되지 않은 것을 본 적이 없으므로 modinfo, modprobe할 일은 없을겁니다.

 

이제 QEMU를 설치해야 합니다. Arch Linux는 아래의 명령을 실행하면 자동으로 설치됩니다.

# pacman -S qemu

Debian 계열은 kvm을 지원하는 QEMU가 qemu-kvm 이란 패키지 이름으로 제공되는 것으로 보입니다. 그러므로 아래 명령을 실행하면 패키지 관리자가 알아서 의존하는 패키지를 설치해줄겁니다.

# apt install qemu-kvm

여기까지 하셨으면 컴퓨터에 QEMU가 설치되었습니다.

 

다음 할 일인 OS 설치는 새로운 글로 설명하겠습니다.