설치하고자 하는 버전의 Ubuntu ISO 파일을 설치합니다.
Ubuntu 22.04.5 LTS ISO 파일 다운로드

서버용 Ubuntu를 사용할 예정이기에 Server install image를 선택합니다.
부팅 가능한 USB를 만들기 위해 rufus를 다운로드 합니다.
rufus 다운로드

이후 ① 에서 설치한 ISO 파일을 선택 후 ② 통해 부팅 USB를 만들어줍니다.
부팅 후 가장 먼저 보이는 화면은 운영체제를 설치할 수 있는 메뉴입니다.
기본으로 선택된 Try or Install Ubuntu Server를 그대로 Enter 하면 설치 과정이 시작됩니다.
이 단계에서는 서버에서 사용할 언어 환경을 설정합니다.
저는 문서와 설정 자료를 참고하기 편하도록 English를 선택했습니다.
인스톨러 업데이트 여부를 묻는 단계입니다.
빠르게 설치를 진행하고 싶다면 Continue without updating을 선택하고,
최신 안정 버전을 사용하고 싶다면 Update to the new installer를 선택하면 됩니다.
다음은 키보드 레이아웃을 설정하는 화면입니다.
기본값은 English (US)로 되어 있으며, 한국어 키보드를 사용하더라도 대부분 큰 문제 없이 그대로 진행할 수 있습니다.
Ubuntu Server 설치 유형을 고르는 화면입니다.
저는 기본 패키지가 포함된 Ubuntu Server를 선택해 진행했습니다.
필요하다면 ‘Search for third-party drivers’를 체크해 드라이버를 추가할 수도 있습니다.
서버가 다른 장비와 통신할 수 있도록 네트워크 인터페이스를 설정하는 과정입니다.
저는 기본적으로 DHCP로 IP가 잡혀 있었기 때문에 별다른 수정 없이 넘어갔습니다.
이번 단계는 프록시(Proxy) 주소를 입력하는 화면입니다.
특정 네트워크 환경에서 외부 인터넷 접속 시 프록시가 필요하다면 주소를 입력해야 하지만, 일반적인 경우라면 비워두고 Done을 눌러 진행하면 됩니다.
패키지 저장소를 지정하는 화면입니다.
별도로 변경할 필요가 없다면 기본값을 그대로 두고 Done을 눌러 진행하면 됩니다.
스토리지 구성 화면에서는 디스크를 전체 사용하거나, 직접 커스텀 설정할 수 있습니다.
별도의 요구사항이 없다면 기본값인 ‘전체 디스크 사용(Use an entire disk)’을 선택하는 것이 편리합니다.
스토리지 구성을 마치면, 파티션 요약 화면이 나타납니다.
여기에서는 /(루트), /boot 파티션이 어떻게 할당되었는지 확인할 수 있습니다.
기본값으로는 루트와 부트 파티션이 자동으로 설정되며, 가상머신 환경이라면 그대로 진행해도 무방합니다.
루트 파티션의 크기를 변경하면 요약 화면에서도 수정된 값이 반영됩니다.
예시 화면에서는 / 파티션이 전체 용량으로 설정된 것을 확인할 수 있습니다.
실습 환경에서는 이렇게 간단히 루트 전체를 하나로 두는 경우가 많습니다.
스토리지 구성을 세밀하게 하고 싶다면, 논리 볼륨(Logical Volume)을 직접 수정할 수도 있습니다.
이 화면에서는 볼륨 이름, 크기, 파일 시스템 형식(ext4 등), 마운트 위치(/)를 지정할 수 있습니다.
실제 운영 환경에서는 /home, /var, /tmp 등을 나누어 설정하기도 하지만, 테스트 환경에서는 기본 루트 하나만 두는 방식이 가장 간단합니다.
스토리지 구성을 완료하고 나면, 실제 디스크에 포맷이 진행되기 전 최종 확인 창이 나타납니다.
이 단계에서 Continue를 누르면 디스크에 저장된 기존 데이터는 모두 삭제되고 새로운 파티션 구조로 설치가 진행됩니다.
서버에서 사용할 사용자 이름과 비밀번호를 설정하는 단계입니다.
Your name, Pick a username, Choose a password를 입력하고, 서버의 호스트 이름도 함께 지정할 수 있습니다.
이 계정은 나중에 SSH 접속이나 서버 관리 시 가장 기본이 되므로 반드시 기억해두어야 합니다.
Ubuntu Pro는 보안 업데이트와 장기 지원(LTS)을 강화한 유료 서비스입니다.
기업 환경이나 보안 규제가 필요한 경우 유용하지만, 개인 실습이나 기본 서버 구축이라면 Skip for now를 선택해 넘어가면 충분합니다.
추후 필요할 때 pro attach 명령으로 언제든 가입할 수 있습니다.
이 단계에서는 원격 접속을 가능하게 해주는 SSH 서버 설치 여부를 설정합니다.
Install OpenSSH server를 체크하면 서버 설치가 끝난 뒤 바로 SSH 접속을 통해 원격 관리가 가능합니다.
비밀번호 로그인 허용 여부도 함께 선택할 수 있으며, 공개키 인증을 사용할 경우 Import SSH key를 통해 키를 등록할 수 있습니다.
설치 과정 중에는 서버에서 자주 쓰이는 패키지들을 추가로 설치할 수 있는 화면이 나옵니다.
여기서는 Docker, PostgreSQL, Prometheus, AWS CLI 등 다양한 툴을 선택할 수 있습니다.
테스트 환경이라면 기본값 그대로 두고 Done을 눌러 진행하면 됩니다.
설치를 진행하면서 필요한 패키지들이 자동으로 설치되고 업데이트됩니다.
이 단계에서는 커널, 부트로더, 네트워크 설정, OpenSSH 서버 등 필수 요소들이 순차적으로 세팅됩니다.
사용자는 특별히 조작할 필요 없이 설치가 완료될 때까지 기다리면 됩니다.
모든 과정이 끝나면 ‘Installation complete!’ 메시지가 나타납니다.
이제 Reboot Now를 눌러 서버를 재부팅하면 Ubuntu Server가 정상적으로 실행됩니다.
재부팅 후에는 앞서 설정한 사용자 계정으로 로그인해 서버를 사용할 수 있습니다.
설치가 완료되면 ‘설치 미디어를 제거하라’는 메시지가 표시됩니다.
CD-ROM, ISO 이미지 같은 설치 매체를 분리한 후 Enter 키를 눌러야 정상적으로 서버가 재부팅됩니다.
이 단계를 거치지 않으면 설치 과정이 다시 시작될 수 있으니 꼭 확인하는 것이 좋습니다.
재부팅이 시작되면 다양한 시스템 서비스가 순서대로 실행되는 로그 화면이 나타납니다.
네트워크 설정, 방화벽, 시간 동기화 등 서버 운영에 필요한 기본 서비스들이 활성화되는 과정입니다.
모든 항목이 [ OK ]로 표시되면 정상적으로 부팅이 진행되고 있다는 뜻입니다.
설치가 완료된 뒤 첫 부팅을 하면, 서버에서 자동으로 SSH 보안 키가 생성됩니다.
이 키는 원격 접속 시 보안을 확인하는 용도로 사용되며, 서버마다 고유하게 발급됩니다.
실제 화면에서는 긴 문자열이 출력되지만, 블로그에서는 보안을 위해 가려 두었습니다.
마지막으로 로그인 프롬프트가 나타나면, 설치 과정에서 설정한 사용자 이름과 비밀번호로 접속할 수 있습니다.

서버 설치가 끝나고 재부팅하면, 앞서 설정한 사용자 계정으로 로그인할 수 있습니다.
처음에는 비밀번호 입력 오류로 로그인 실패 메시지가 뜰 수 있지만, 올바른 비밀번호를 입력하면 정상적으로 서버 쉘에 접속됩니다.
로그인 직후에는 시스템 정보가 간단히 표시됩니다.
이 화면이 나온다면 Ubuntu Server 설치가 무사히 완료된 것입니다. 이제부터는 SSH를 통해 원격 접속하거나 필요한 서버 환경을 직접 구축할 수 있습니다.