Ubuntu 26.04 강좌 / Ubuntu LTS 업그레이드 준비와 수행하기

Ubuntu LTS 릴리스 업그레이드는 운영체제의 세대를 바꾸는 작업으로 일상적인 패키지 업데이트와 다릅니다. 26.04를 새로 설치했다면 이 강좌를 진행하기 위해 다른 릴리스로 옮길 필요는 없습니다. 기존 24.04 LTS 등에서 옮길 때 공식 제공 경로와 복구 수단을 확인하고 진행합니다.

현재 버전과 제공되는 경로 확인하기

cat /etc/os-release
uname -r
df -h / /boot
apt-mark showhold
dpkg --audit

LTS 사이에서는 인접한 다음 LTS로 순서대로 옮기며 여러 세대를 건너뛰지 않습니다. 실제 제공 여부는 배포 측의 제어나 알려진 문제에 따라 달라질 수 있으므로 대상 릴리스 노트와 업그레이더 안내를 확인합니다. 안내가 없다고 저장소 코드명을 바꾸거나 -d로 강제하지 않습니다.

Ubuntu Server 공식 업그레이드 안내에서 지원 경로와 사전 조건을 확인합니다.

실패했을 때 돌아갈 기준 상태 준비하기

  1. 독립된 백업을 만들고 별도 VM이나 디렉터리에서 복원을 시험합니다. 실행 중 DB와 볼륨의 일관성도 확인합니다.
  2. 복제 VM에서 먼저 이전을 시험하고 고정 IP나 호스트 식별 정보가 운영 서버와 동시에 활성화되지 않도록 격리합니다.
  3. 콘솔·전원·여유 공간·작업 시간·앱 호환 버전·책임자를 확인합니다. SSH가 끊겨도 콘솔로 복구할 수 있게 준비합니다.
  4. 서드파티 저장소와 독자 변경을 기록합니다. 업그레이드 중 비활성화된 저장소는 새 릴리스 지원을 확인해 필요한 것만 다시 사용합니다.

스냅샷만 되돌리면 외부 데이터베이스나 다른 서버와 상태가 어긋날 수 있습니다. 업그레이드 전에 되돌릴 범위와 되돌릴 수 없는 외부 변경을 적고, 일반적인 패키지 다운그레이드로 운영체제 전체를 되돌릴 수 있다고 가정하지 않습니다.

현재 시스템을 정상적으로 업데이트하기

sudo apt update
apt-get -s dist-upgrade -o APT::Get::Always-Include-Phased-Updates=true

시뮬레이션의 삭제·보류·의존 관계를 검토합니다. 이 옵션은 일상 운영에서 단계적 업데이트를 강제로 앞당기는 권장이 아니라 릴리스 업그레이드에 필요한 업데이트를 확인하기 위한 것입니다. 백업과 작업 시간을 확보하고 검토 결과에 문제가 없을 때만 다음을 실행합니다.

sudo apt dist-upgrade -o APT::Get::Always-Include-Phased-Updates=true
test ! -e /run/reboot-required || cat /run/reboot-required

필요한 재부팅 후 기존 릴리스로 정상 부팅하고 SSH·네트워크·앱이 동작하는지 확인합니다. 보류된 패키지나 깨진 dpkg 상태는 원인을 조사하며 잠금 파일 삭제나 무조건적인 보류 해제로 우회하지 않습니다.

제공 여부를 확인하고 대화형으로 실행하기

sudo apt install update-manager-core
grep -E "^Prompt=" /etc/update-manager/release-upgrades
sudo do-release-upgrade -c

LTS만 따르는 계획이면 Prompt=lts인지 확인합니다. 다르면 파일을 백업하고 sudoedit로 운영 방침에 맞게 고칩니다. -c는 제공 여부만 확인합니다. 새 릴리스가 없다고 나오면 해당 환경에 제공될 때까지 기다리거나 별도 신규 구축과 자료 이전을 계획합니다.

sudo do-release-upgrade

이 명령은 준비된 복제 VM이나 승인된 유지보수 작업에서 실행합니다. 변경 목록·삭제 예정·설정 파일 차이를 읽고 기존 설정 유지와 새 버전 채택을 각각 판단합니다. 원격 복구용 추가 포트를 안내받아도 무제한 공개하지 않습니다. 처리 중 강제 종료와 전원 차단을 피하고 실패하면 표시된 오류와 /var/log/dist-upgrade 기록을 보존합니다.

재부팅 뒤 실제 서비스까지 확인하기

완료 후 콘솔에서 새 릴리스·실행 중 커널·실패 서비스·네트워크를 확인하고 새 SSH 연결·앱 읽기와 쓰기·HTTPS·공유·컨테이너를 대상에 맞게 시험합니다. 오래된 패키지 정리는 복구용 커널과 업무 동작을 확인한 뒤 판단합니다. 일반 업데이트와 백업을 재개하고 복원 시험 및 변경 기록을 갱신해야 이전이 완료됩니다.