Ubuntu 26.04 강좌 / Ubuntu 저장소와 서명 키 관리하기

Ubuntu 26.04의 저장소 관리는 실제 .sources 파일과 서명 키의 적용 범위를 확인하는 것부터 시작합니다. 타사 저장소를 추가할 때는 제공자의 26.04 지원과 전체 키 지문을 검증하고 해당 저장소에만 키를 연결합니다.

현재 저장소와 후보 버전 조회하기

cat /etc/os-release
find /etc/apt/sources.list.d -maxdepth 1 -type f -print
cat /etc/apt/sources.list.d/ubuntu.sources
apt-cache policy

기본 Ubuntu 저장소는 보통 /etc/apt/sources.list.d/ubuntu.sources에 있지만 설치·클라우드·업그레이드 이력에 따라 다를 수 있습니다. 오래된 한 줄 형식 .list와 deb822 .sources가 함께 있을 수 있으므로 같은 저장소가 중복 정의되지 않았는지 봅니다.

deb822 필드와 구성 요소 이해하기

필드 판단할 내용
URIs 어느 제공처에서 받는가
Suites resolute·업데이트·보안 저장소 등 릴리스 범위
Components main·restricted·universe·multiverse 등 패키지 영역
Architectures 대상 CPU 아키텍처를 제한하는가
Signed-By 이 저장소를 검증할 키 파일
Enabled no이면 해당 항목 비활성화

구성 요소를 켜는 것과 모든 패키지에 같은 보안 지원이 생기는 것은 다릅니다. Ubuntu Pro와 패키지별 지원 조건도 따로 확인해야 합니다. 제공자가 다른 배포판용으로 안내한 suite 이름을 resolute로 바꾸는 것만으로 호환성이 생기지는 않습니다.

Ubuntu의 타사 저장소 설명은 신뢰 범위와 배포판 업데이트의 영향을 다룹니다.

키 파일과 신뢰 근거 확인하기

gpg --show-keys --with-fingerprint /usr/share/keyrings/ubuntu-archive-keyring.gpg

위 명령은 기존 Ubuntu 아카이브 키 파일을 조회하는 예입니다. 타사 키는 제공자의 HTTPS 문서 등 독립적으로 확인한 근거와 전체 지문을 대조합니다. 파일 이름이나 짧은 키 ID가 같다는 이유로 신뢰하지 않습니다.

직접 관리하는 키는 제공자 지침에 맞는 /etc/apt/keyrings 등의 경로에 두고 Signed-By로 범위를 제한합니다. APT가 읽을 수 있는 권한도 필요합니다. 서명 오류를 없애려고 trusted=yes나 인증 무시 옵션을 넣거나 전역 신뢰 키로 무조건 추가하지 않습니다.

백업 후 한 저장소만 변경하기

backup=$(sudo mktemp -d /root/apt-sources.XXXXXX)
sudo cp -a /etc/apt/sources.list.d "$backup/"
printf 'Backup: %s\n' "$backup"

출력된 백업 경로를 안전한 작업 기록에 남깁니다. 변경할 타사 파일을 식별하고 sudoedit로 편집합니다. deb822의 해당 항목에 Enabled: no를 넣으면 비활성화할 수 있으며, 파일 전체를 다른 확장자로 옮길 때도 해당 파일만 다룹니다.

저장소를 비활성화해도 그곳에서 설치한 프로그램과 데이터가 자동으로 제거되지는 않습니다. 제거·다운그레이드는 별도 의존성 검토가 필요합니다. 서명 키 파일도 다른 저장소가 참조하는지 확인하기 전에는 지우지 않습니다.

검증과 복원

sudo apt update
apt-cache policy

오류 없이 목록이 갱신되는지와 의도한 출처·후보 버전을 확인합니다. 실패하면 변경한 항목만 백업과 비교해 복원하고 다시 갱신합니다. 여러 저장소 파일을 동시에 덮어쓰거나 현재 배포판 코드를 다른 버전으로 바꾸어 문제를 회피하지 않습니다.