LabHub

패키지 관리 · 로컬 저장소와 오프라인 설치 · 실습

오프라인 반입 번들 만들기

LabHub 에서 이어서 보기

목표

패키지 하나와 그 의존성 전체를 "반입 번들" 로 묶고, 체크섬 매니페스트로 검증한 뒤, 그 번들만으로 설치를 재현합니다. 폐쇄망 반입 절차의 축소판입니다.

왜 중요한가

폐쇄망에서 가장 흔한 실패는 "받아 갔는데 의존성이 모자라서 다시 나와야 하는 것" 입니다. 반입 심의가 하루에 한 번뿐인 조직에서는 왕복 한 번이 하루입니다. 그래서 숙련자는 바깥에서 의존성 그래프를 통째로 푼 결과를 들고 들어갑니다. 그리고 매체를 통과한 파일이 온전한지 확인할 방법이 필요합니다 — 체크섬은 전송 중 손상을 잡고, 서명은 출처를 보증합니다. 이 실습은 그 절차의 뼈대를 손에 익힙니다.

단계

1. /root/offline 디렉터리를 만들고, cowsay 를 설치할 때 받아야 할 파일들의 URI 목록을 /root/offline/uris.txt 로 저장하세요. (실제로 설치하면 안 됩니다.)
2. cowsay 와 그 의존성을 내려받기만 하고, 받은 .deb 파일을 /root/offline/pool/ 로 모으세요. 최소 2개 이상이어야 합니다.
3. /root/offline/pool 안의 모든 .deb 에 대한 SHA-256 매니페스트를 /root/offline/manifest.sha256 으로 만드세요.
4. 그 매니페스트로 검증을 수행하고 결과를 /root/offline/verify.txt 로 저장하세요. 모든 줄이 정상(OK)이어야 합니다.
5. /root/offline/pool 을 저장소로 만들기 위해 PackagesPackages.gz 를 생성하세요.
6. /etc/apt/sources.list.d/labhub-airgap.list 로 이 저장소를 등록하고 색인을 갱신하세요.
7. cowsay재설치해서 반입분으로도 설치가 되는지 확인하고, 설치 후 cowsay labhub 실행 결과를 /root/offline/run.txt 로 저장하세요.
8. /root/offline/report.txt 를 다음 4줄로 만드세요.
PACKAGES=<pool 안 .deb 개수> / BYTES=<pool 안 .deb 파일 크기 합계(바이트)> / VERIFY=OK / SNAPSHOT=<오늘 날짜 YYYY-MM-DD>

참고

단계 8개

  1. 무엇을 받아야 하는지 먼저 계산
  2. 패키지 내려받기
  3. 체크섬 매니페스트 생성
  4. 매니페스트로 검증
  5. 반입분으로 저장소 색인 만들기
  6. 반입 저장소 등록
  7. 반입 저장소에서 재설치
  8. 반입 보고서