Software/Linux

[Linux] 윈도우 VirtualBox Ubuntu 22.04 LTS + ROS 2 Humble 설치

_winmin 2025. 1. 4. 17:51

윈도우의 VirtualBox 가상머신에서 Ubuntu 22.04 LTS 및 ROS 2를 설치하는 방법입니다.

 

1. VirtualBox 설치

우선 Oracle VirtualBox를 설치하겠습니다. 

하단 링크에서 공식 배포 버전을 다운로드 할 수 있습니다. 

 

https://www.virtualbox.org/wiki/Downloads

 

Downloads – Oracle VirtualBox

This VirtualBox Extension Pack Personal Use and Educational License governs your access to and use of the VirtualBox Extension Pack. It does not apply to the VirtualBox base package and/or its source code, which are licensed under version 3 of the GNU Gene

www.virtualbox.org

 

윈도우를 선택하여 다운로드합니다.

 

 

2. Ubuntu .iso 파일 다운로드

하단의 링크를 들어가 Ubuntu 22.03 LTS의 desktop image를 다운받습니다.

https://releases.ubuntu.com/jammy/

 

Ubuntu 22.04.5 LTS (Jammy Jellyfish)

Select an image Ubuntu is distributed on three types of images described below. Desktop image The desktop image allows you to try Ubuntu without changing your computer at all, and at your option to install it permanently later. This type of image is what m

releases.ubuntu.com

 

 

3. Ubuntu 가상 머신 추가

설치한 Oracle VirtualBox를 실행하고 New를 눌러줍니다.

 


앞에서 다운로드 받은 .iso 파일을 ISO Image로 선택하면 Type, Subtype, Version이 자동으로 선택됩니다.

Name만 원하는 것으로 입력해주세요.

 


Unattended Install 메뉴로 넘어가 Username과 Password를 입력해주세요.

Guest Addtions도 체크하여 앞에서와 같은 .iso 파일을 선택합니다.

 

 

 

◆ Guest Additions

가상머신에 설치하는 일종의 확장 프로그램으로 여러 편의 기능을 제공한다.

 

- 호스트 OS, 게스트 OS 간의 공유

  마우스 포인터

  디렉토리

  클립보드 등

 

- 하드웨어 가속 그래픽

- 호스트, 게스트 간 시간 동기화

- 로그인 자동화 

 

자세한 기능은 아래 링크를 참고하면 됩니다.

https://www.virtualbox.org/manual/ch04.html 

 

Chapter 4. Guest Additions

The previous chapter covered getting started with Oracle VM VirtualBox and installing operating systems in a virtual machine. For any serious and interactive use, the Oracle VM VirtualBox Guest Additions will make your life much easier by providing closer

www.virtualbox.org

 


Hardware 메뉴에서 가상머신에 할당할 메모리의 크기를 설정하고 Finish를 눌러줍니다.

 

 

Finish를 누르면 우분투 설치가 시작됩니다. >> 시간이 조금 걸립니다

 

3. Ubuntu 환경 설정 

ubuntu 설치가 완료되었으면 앞에서 설정한 user 프로파일이 나올 것입니다.

선택하시고, 설정한 비밀번호를 눌러 로그인해주세요.

 

Online Account를 연결할 수 있는 창이 나오는데, Skip하셔도 됩니다.

 

 

Ubuntu Pro로 업그레이드할지 선택하는 창이 나옵니다. 

이또한 Skip 하셔도 됩니다.

 

 

Ubuntu에게 시스템 정보를 공유할지 선택하는 창입니다. 

No 선택하셔도 됩니다.

 

 

위치 정보 사용할지 선택하는 창입니다. 

저는 enable 안하고 넘어갔습니다.

 

 

Done 누르면 세팅은 끝났습니다.

 

4. ROS 2 설치

 

터미널 창을 열어 ROS 2 를 설치해보겠습니다.

(터미널 단축키: Ctrl + Alt + t)

 

터미널 창 안켜지는 문제

 

저는 처음에 우분투를 설치하고 실행했을 때 터미널이 위 사진과 같이 로딩만 하다 꺼져버리는 현상이 발생했었습니다.

 

찾아보니 ubuntu 22.04에서 많이들 겪는 문제 같았습니다.

 

해결법으로는 /etc/default/locale 파일에 en_US 대신 en_US.UTF-8 로 설정하고, sudo locale-gen --purge 명령 수행 후 리부팅을 하면 된다고 합니다.

 

일단은 터미널이 열리지 않으니 Ctrl + Alt + F3로 가상콘솔창에 들어갑니다.

 

 

login에는 root을 입력하고 비밀번호는 처음에 설정해준 걸로 입력합니다.

 

linux에서는 비밀번호 입력시 화면에 보이지 않는 게 정상입니다!!

 

로그인 완료 모습

 

root로 로그인이 되었으면 아래 명령을 입력하여 locale 파일에 대한 텍스트 에디터를 엽니다.

sudo nano /etc/default/locale

 

 

방향키를 이용해 LANG 행으로 이동하고 LANG="en_US"를 LANG = "en_US.UTF-8"로 변경합니다.

 

 

변경 후 Ctrl + X로 텍스트 에디터를 종료하는데, 저장할 것인가라는 메세지에 Y를 누르고 

 

 

어떤 파일명으로 저장할 건지에 대해 이름 변경 없이 Enter를 누르면 됩니다.

 

 

아래 명령으로 기존에 생성된 locale들을 모두 삭제해주고

sudo locale-gen --purge

 

리부팅 해줍니다.

sudo reboot

 

 

이제 터미널이 잘 열릴 것입니다!

 

 

ROS 설치

그럼 다시 ROS 2 Humble 설치로 넘어가보겠습니다.

터미널에 단계별로 아래 명령어를 실행시켜주면 됩니다.

 

 

Ubuntu Universe repository를 활성화합니다.

sudo apt install software-properties-common
sudo add-apt-repository universe

 

 

ROS2 GPG 키를 추가해줍니다.

sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg

 

 

ROS repository를 소스 리스트에 추가해줍니다.

echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

 

 

이전에 설정한 repository 를 업데이트 및 업그레이드 해줍니다.

sudo apt update && apt upgrade

 

 

ROS2 desktop을 설치합니다.

sudo apt install ros-humble-desktop

 

 

ROS 개발툴을 설치합니다.

sudo apt install ros-dev-tools

 

 

환경설정을 위해 setup.bash 파일을 sourcing 해줍니다.

이는 터미널을 새로 열 때마다 실행해주어야합니다.

source /opt/ros/humble/setup.bash

 

 

bashrc에 추가하여 터미널이 열릴 때 위의 명령이 자동으로 실행되게 하는 방법이 있습니다.

echo "source /opt/ros/humble/setup.bash" >> ~/.bashrc
source ~/.bashrc

 

 

설치가 잘 되었는지 확인합니다.

ros2 run demo_nodes_cpp talker

 

해당 패키지가 작동하면 ROS2는 정상 설치된 것입니다!

 


VirtualBox 추가 기능들

1) Host Key 변경

VirtualBox 내에서는 주요 기능들에 대해 단축키가 존재하는데요, (Host Key + 다른 키) 의 조합으로 이루어지게 됩니다. 

Host Key가 디폴트로는 Right ctrl key로 설정이 되어있는데, 제 키보드와 마찬가지로 많은 분들의 키보드에서는 right ctrl key가 한자 등 다른 입력으로 매핑되어있을 거예요.

 

사용하기 편하게 다른 key로 설정해보겠습니다.

 

VirtualBox 실행 > File > Preferences

 

Input > Virtual Machine 선택

 


Host Key Combo 선택하시고 원하는 키를 입력하면 됩니다.

저는 F7으로 변경한 상태입니다.

 

 


화면 깨짐 버그

저의 경우 윈도우 11 환경에서 7.1.4 버전을 설치 후 ubuntu를 실행하였을 때, 화면을 default resolution 인 600x800보다 확장할 경우 화면이 깨지는 현상이 발생했습니다 .. 

출처: virtualbox forum

 

구글링 해보니 VirtualBox 7.0, 7.1 버전에서 많은 사람들이 같은 현상을 겪는 것 같았습니다. 

포럼을 참고하니 아직 정식 배포 버전은 아니지만 test 버전에서는 버그를 해결한 듯합니다. 

https://forums.virtualbox.org/viewtopic.php?t=110982

 

Graphical corruption with VB 7.0.14 and Ubuntu 22.04.3 - virtualbox.org

Discussions about using Linux guests in VirtualBox. mkdr Posts: 3 Joined: 30. Jan 2024, 05:37 Post by mkdr » 30. Jan 2024, 05:44 I installed VB 7.0.14 on Windows 11 host (winver 23h2 22631.3085) with Nvidia RTX4080 driver 551.23 with a fresh Ubuntu 22.04.

forums.virtualbox.org

 

 

하단의 링크에서 7.1x test build를 설치하니 문제는 해결되었습니다.

https://www.virtualbox.org/wiki/Testbuilds

 

Testbuilds – Oracle VirtualBox

VirtualBox test builds Here we provide you with regularly updated links to recent builds. If one of these links does not work at any time feel free to ask us to update it on IRC or the development mailing list. See below for information about installing Li

www.virtualbox.org