글을 쓰는 배경
필자는 평상시 업무를 할 때 Ubuntu를 자주 이용하는 사람은 아니고 전문가도 아닙니다. 그러나 가끔 뭔가를 확인해야 할 때 Ubuntu와 필요한 Application을 설치하고 확인합니다. 아무개에게 Ubuntu Instance 1개를 부탁하여 받아 사용할 수도 있지만, Instance를 여러개 이용해야 하는 경우, 그리고 조금 이용하다가 이용하지 않는 경우도 많아, 필자의 맥북에 설치하여 확인하는 것이 편합니다. 그런데 이런 경우가 자지 있지 않으므로 (1년에 2~3번 정도), 다시 기억을 더듬어 처음부터 다시 시작하려니 시간과 노력을 쏟아야 합니다. 최근 (2021년7월)에도 유사한 경우가 있어, 이번 기회에 웹사이트에 필자 자신이 참조할 수 있는 문서를 상세하게 만들어 놓고, 다음부터 참조하자고 생각하고 이 글을 씁니다.
Host 환경
- Macbook BigSur 11.5.1
- Memory: 8GB 이상
- Disk: SSD 256GB 이상
전체 순서
- VirtualBox를 Oracle 사에서 다운로드하고 설치합니다. 다운로드 사이트는 Google에서 "virtualbox download oracle"를 검색합니다.
- Ubuntu 18.04를 https://releases.ubuntu.com/ 에서 다운로드 합니다.
- Virtualbox에서 Machine > New 를 선택하여 VM Instance를 생성하고 Ubuntu ISO image를 지정하고 부팅합니다.
- Ubuntu를 설치하고 리부팅합니다.
- VM instance와 VMHOST (맥북OS)사이에 clipboard 내용을 copy paste를 할 수 있도록 "Guest Additions"을 읽어 설치합니다. Power OFF 하고 clipboard 내용을 copy paste할 수 있는 설정을 합니다. 부팅합니다.
- apt install ssh, apt update, apt upgrade를 수행합니다. Power OFF 합니다.
- 여기까지 만든 VM image를 Clone을 이용하여 보관합니다.
- 사용할 VM instance를 부팅합니다.
- VMHOST에서 VM instance로 ssh 할 수 있도록 port forwarding을 설정합니다.
1. Virtualbox 다운로드
Virtualbox를 이용하는 이유는 익숙해서입니다. 특별한 이유는 없습니다.
Google Search에서 "Virtualbox download"라고 입력하고 Oracle 링크를 선택하여 접근합니다. 현재 (2021년 7월) 기준 https://www.oracle.com/virtualization/technologies/vm/downloads/virtualbox-downloads.html 입니다.
Oracle VM VirtualBox Base Packages - 6.1.24가 현재 최근 버전이라는 것을 알 수 있습니다. 맥북에 설치하므로 MAC OS X "dmg img"를 선택하여 다운로드 합니다. 현재 시점에서 다운받은 파일은 "VirtualBox-6.1.24-145767-OSX.dmg" 입니다. 약 124MB이며, 1분 이내에 다운로드 합니다. 맥북의 Downloads 디렉토리에 저장됩니다.
Virtualbox 설치 프로그램을 선택하여 설치합니다. 맥북 시스템환경설정 > Security & Privacy > 일반에서 Oracle에서 받은 Software를 허용해 주고 리부팅합니다. 그러지 않으면 Virtualbox에서 생성한 VM instance를 제대로 실행할 수 없습니다.
2. Ubuntu OS 다운로드
Ubuntu는 현재 21까지 발표되어 있으며, 공식적으로 제안하는 안정 버전은 20입니다. 다만 필자는 18.04를 선택하였습니다. 여유가 생기면 20.04도 다운로드 받아 확인해 볼 예정입니다.
Google Search에서 "Ubuntu 18 download"라고 입력하고 결과에서 "Ubuntu 18.04.5 LTS (Bionic Beaver) - Ubuntu Releases" 를 선택합니다. "ubuntu 20 download"에 대해서는 "Ubuntu 20.04.2.0 LTS (Focal Fossa)"를 선택하면 됩니다.
필자는 GUI 환경과 terminal 환경을 동시에 이용하므로 Desktop image 64-bit PC (AMD64) desktop image
를 선택하여 다운로드합니다. 받은 파일은 "ubuntu-18.04.5-desktop-amd64.iso"입니다. (20.04 버전 파일은 ubuntu-20.04.2.0-desktop-amd64.iso 입니다) 파일 크기가 2~3GB 정도이므로 다운로드하는 시간은 몇분입니다. 맥북의 Downloads 디렉토리에 저장됩니다.
3. VM instance 생성
Virtualbox 실행 및 Instance 생성
VirtualBox 실행. 상단 중앙 "New" 선택
Name and operating system
Memory size: 4096MB
Hard disk: Create a virtual hard disk now 선택
Hard disk file type: VDI 선택
Storage on physical hard disk: Fixed size 선택
File location and size: 크기만 20GB로 변경
Instance 설정
Oracle VM VirtualBox Manager의 좌측에서 instance를 선택하고, 상단 중앙의 Settings 선택
화면 상단 중앙에서 Storage 선택
화면 좌측 Controller IDE 에서 "add otpical drive" 선택
화면 좌측 상단에서 "Add"를 선택
Downloads 디렉토리에 있는 Ubuntu 18.04 ISO image 선택
선택 결과
OK 선택 결과
4. Ubuntu 설치
Oracle VM VirtualBox Manager 상단 중앙에서 "Start" 클릭
시스템에 로그인 합니다.
5. Guest Addtions 설치, Clipboard 설정
Oracle VM VirtualBox Manager 의 메뉴에 있는 Devices > Insert Guest Additions CD image 선택
Run 실행
관리자 비밀번호 입력
실행
Power OFF: VM instance를 OFF 합니다. 우측 상단 아래 화살표를 선택하면 볼 수 있음
VM instance 선택 > Settings > General > Advanced, Shared Clipboard를 Bidirectional로 변경하고 OK
Start를 선택하여 부팅
Ubuntu 안에서 문자열을 Copy하고 맥북으로 이동하여 Paste 선택. 정상 동작 확인
6. ssh and apt update/upgrade
ssh를 설치하는 이유는 GUI 환경에서 terminal 로 작업하는 것이 비효율적이기 때문입니다. 즉 remote에서 연결하여 작업하는 것이 편리합니다. 즉 remote 연결을 위해 ssh 를 설치합니다.
배포판에 설치되어 있는 software를 갱신하기 위해 update, upgrade를 합니다. upgrade를 수행하면 몇분 걸립니다.
salsal@u1804base:~$ sudo apt install ssh
salsal@u1804base:~$ sudo apt update
salsal@u1804base:~$ sudo apt upgrade
sudo reboot 명령어로 정상 리부팅되는지 확인합니다.
salsal@u1804base:~$ sudo reboot
7. VM image 보관
VM instance를 설치하고 나서 Disk 정보를 살펴보면 약 20GB 중에서 6.6GB를 이용하는 것을 알 수 있습니다.
salsal@u1804base:~$ df -k
Filesystem 1K-blocks Used Available Use% Mounted on
udev 1990324 0 1990324 0% /dev
tmpfs 403088 1584 401504 1% /run
/dev/sda1 20509264 6610632 12833776 34% /
이 상태에서 VM instance 실행을 멈추고 ($ sudo shutdown -h now 실행) Oracle VM VirtualBox Manager로 돌아갑니다.
VM instance를 선택하고 마우스 우측 버튼을 클릭하여 Clone을 선택합니다.
보관해 놓을 이미지 이름을 지정합니다. 여기에서는 u1804base day0로 지정합니다.
Full clone을 선택합니다.
복제를 합니다. 몇초 걸립니다.
원본과 복제본을 좌측에서 볼 수 있습니다.
8. VM 실행
VM instance u1804base를 선택하고 실행하고 이용합니다.
9. VMHOST인 맥북에서 ssh 로 로그인할 수 있게 port forwarding 설정하기
VM instace 안에서 Terminal 를 실행하여 작업을 할 수 있습니다. 그러나 VMHOST인 맥북에서 VM instace로 ssh 로그인하여 작업하는 것이 보다 효율적인 경우가 많습니다. 이것을 설정하는 방법은 다음과 같습니다.
1. 제일 먼저 VM instance를 shutdown 합니다. 그리고 VirtualBox에서 해당 VM instance를 선택합니다. 그리고 Settings를 선택하고 Network을 선택합니다.
2. Port forwarding을 선택합니다.
3. 우측 상단의 plus (+) 아이콘을 선택하여 forwarding rule을 설정합니다.
Name: ssh
Protocol: TCP
Host Port: 50001 (임의로 선택한 값입니다)
Guest Port: 22 (ssh 포트를 말합니다)
위 3번과 같이 설정하면 맥북 shell prompt에서 ssh salsal@localhost -p50001 을 입력하여 VM instance로 로그인할 수 있습니다. 아래는 그 과정을 나타낸 것입니다.
과정
제일 먼저 VM instance를 shutdown 합니다. 그리고 VirtualBox에서 해당 VM instance를 선택합니다. 그리고 Settings를 선택하고 Network을 선택합니다. 그리고 아래 그림에서 Port Forwarding을 선택합니다.
우측 상단의 plus (+) 아이콘을 선택합니다.
forwarding rule을 설정합니다. OK를 선택합니다.
Name: ssh
Protocol: TCP
Host Port: 50001 (임의로 선택한 값입니다)
Guest Port: 22 (ssh 포트를 말합니다)
이것이 의미하는 바는 VMHOST (host)의 port 50001으로 가는 것을 VM instance (Guest) port 22로 forwarding 시키라는 것입니다.
VM Instance를 실행합니다. 그리고 나서 VMHOST인 맥북에서 terminal을 실행한 후에 ssh 명령어를 실행합니다.
chrisjangmac:~ chrisjang$ ssh salsal@localhost -p50001
주의할 사항은
- salsal 이라는 username이 VM instance 안에 존재해야 합니다. 즉 존재하는 것을 입력합니다.
- 50001은 port forwarding에서 설정한 Host port 입니다.
- VM instance 안에서는 ssh server를 수행해 놔야 합니다.
아래 그림을 보면 ssh를 실행하면 login prompt (salsal@localhost's password:)를 만나며, 비밀번호를 입력하면 VM instance 안으로 로그인하는 것을 알 수 있습니다.
설치중 겪은 오류 또는 어려움
- Guest Additions CD image가 없다고 함
- 아래처럼 Ubuntu ISO image를 추가하면 부팅하지 않습니다.
Controller: IDE 밑에 있는 Empty가 ubuntu-18.04.5-desktop-amd64 밑에 있어야 제대로 부팅합니다. 이 순서가 아니라면 해당 항목을 지우고 새로 추가하는 것이 좋습니다.
- VM instance를 생성하고 ISO 이미지를 추가하고 실행하는데 만난 error msg. Google Search를 해 보니
Kernel driver not installed (rc=-1908)
Make sure the kernel module has been loaded successfully.
where: suplibOsInit what: 3 VERR_VM_DRIVER_NOT_INSTALLED (-1908) - The support driver is not installed. On linux, open returned ENOENT.
맥북 System Pref > Security & Privacy > General 에서 Oracle에서 다운로드한 파일을 허용해 주면 됩니다. 관련 정보는 여기에 있습니다. https://medium.com/@Aenon/mac-virtualbox-kernel-driver-error-df39e7e10cd8
'Ubuntu' 카테고리의 다른 글
VirtualBox 안에서 Ubuntu interface 이름 알아내기 (1) | 2021.07.30 |
---|---|
Macbook, Ubuntu에서 network interface 확인 (0) | 2021.07.30 |
비밀번호 없이 ssh 로그인 하기 (0) | 2021.07.29 |
Ubuntu 이용자 추가, sudo 권한 부여 (0) | 2021.07.29 |
Ubuntu 18.04에 Mysql 5.7.34 설치하기 (0) | 2021.07.28 |