1. 개요
Apple Silicon 환경의 UTM 가상머신에서 Ubuntu 22.04 ARM64 환경을 사용하던 중, apt 저장소 미러를 국내 미러로 변경하는 과정에서 404 Not Found 및 Release file 오류가 발생하였다.
처음에는 단순한 미러 주소 변경 문제라고 생각했지만, 실제 원인은 ARM64 환경에서 사용하는 ubuntu-ports 저장소 구조와 일반 amd64 Ubuntu 저장소 구조의 차이 때문이었다.
이번 글에서는 Ubuntu ARM64 환경에서 apt 저장소가 동작하는 방식과, 국내 미러 변경 시 발생했던 문제 및 해결 과정을 정리한다.
2. 환경
- Host
- Apple Silicon MacBook
- UTM 가상머신 환경
- Guest OS
- Ubuntu 22.04 LTS ARM64
- Architecture
결과:
aarch64는 ARM64 계열 아키텍처를 의미한다.
3. 문제 상황
기존 apt 저장소를 국내 미러인 카카오 미러로 변경하려고 하였다.
초기에는 일반 Ubuntu 환경에서 자주 사용하는 방식대로 archive.ubuntu.com 주소를 치환하였다.
하지만 변경 이후 sources.list를 확인해보니 실제 주소는 변경되지 않았다.
확인 결과:
형태의 저장소를 사용하고 있었다.
즉, 현재 환경은 일반 amd64 Ubuntu 저장소가 아니라 ARM64용 ubuntu-ports 저장소를 사용하고 있었기 때문에, 기존 sed 치환 대상 문자열 자체가 존재하지 않았던 것이다.
4. 원인 분석
일반적인 x86_64(amd64) Ubuntu 환경은 다음 저장소를 사용한다.
반면 ARM64 Ubuntu 환경에서는 다음 저장소를 사용한다 (출처).
즉:
이라는 차이가 존재한다.
따라서 기존 치환 명령은 실제 파일 내용과 일치하지 않아 아무런 변경이 발생하지 않았다.
5. ubuntu-ports 저장소로 재변경
ARM64 환경에 맞게 ubuntu-ports 주소를 대상으로 다시 변경을 진행하였다.
변경 이후 확인:
정상적으로 카카오 미러 주소로 변경된 것을 확인할 수 있었다.
6. apt update 오류 발생
하지만 이후 apt update 수행 시 다음 오류가 발생하였다.
오류:
처음에는 네트워크 문제나 DNS 문제로 생각할 수도 있었지만, 실제 원인은 달랐다.
7. 실제 원인
카카오 미러에는 현재 ARM64용 ubuntu-ports 저장소가 존재하지 않거나 정상적으로 제공되지 않고 있었다.
카카오 미러로 `ubuntu-ports` 경로를 지정했을 때 `404 Not Found`가 발생하였다. 이는 해당 경로에서 apt가 필요한 `Release` 파일을 찾지 못했기 때문이다.
즉:
경로 자체가 존재하지 않아 Release file을 찾을 수 없었던 것이다.
따라서 문제의 핵심은:
이었다.
8. 해결 방법
결국 ARM64 ubuntu-ports를 정상 지원하는 KAIST 미러로 변경하였다.
변경 명령:
확인:
최종 결과:
이후:
를 수행하였고 정상적으로 패키지 목록이 갱신되는 것을 확인하였다.
9. 정리
이번 문제를 통해 단순히 “미러 주소를 바꾸는 방법”보다, Ubuntu 아키텍처에 따라 저장소 구조 자체가 달라진다는 점을 확인할 수 있었다.
특히 Apple Silicon 기반 ARM64 Ubuntu 환경에서는 다음 사항을 이해하는 것이 중요하다.
amd64 Ubuntu → archive.ubuntu.com 사용<br /> ARM64 Ubuntu → ubuntu-ports / ports.ubuntu.com 사용
또한 모든 국내 미러가 ubuntu-ports를 지원하는 것은 아니므로, ARM64 환경에서는 실제 지원 여부를 확인해야 한다.
이번 사례에서는 KAIST 미러가 ARM64 ubuntu-ports 저장소를 정상적으로 제공하고 있었기 때문에 해결할 수 있었다.