반응형
부제: XML repodata에서 sqlite DB를 만들어 구형 yum 클라이언트 지원하기
sqliterepo_c /srv/repo # repodata의 XML로부터 sqlite DB 생성
sqliterepo_c -f /srv/repo # 기존 DB 덮어쓰기
sqliterepo_c --xz /srv/repo # xz 압축으로 DB 저장
Usage:
sqliterepo_c [OPTION?] <repo_directory>
Generate sqlite DBs from XML repodata.
-f, --force Overwrite existing DBs.
--keep-old Do not remove old DBs. (use with --force)
--xz Use xz for repodata compression.
--checksum=<type> checksum type in repomd.xml for sqlite DBs.sqliterepo_c는 createrepo_c에 포함된 도구로, 저장소의 XML 메타데이터(primary/filelists/other)를 sqlite 데이터베이스로 변환해 repomd.xml에 등록한다. dnf는 XML만으로도 동작하지만 예전 yum 클라이언트는 sqlite DB를 기대하므로, 구형 시스템과 호환이 필요할 때 만들어 준다. 데비안 계열에는 없는, RHEL 저장소 포맷 전용 도구다.
repo_directory(repodata를 품은 상위 폴더)를 인자로 받아 그 안에 DB를 만든다. 이미 DB가 있으면 -f로 덮어써야 하고, NFS에서 생성이 말썽이면 --local-sqlite로 로컬에서 만들어 옮기는 옵션이 있다.
이렇게도 쓴다
기존 sqlite DB를 강제로 다시 만든다.
sqliterepo_c -f /srv/repo
xz 압축으로 DB 크기를 줄여 배포 대역을 아낀다.
sqliterepo_c --xz /srv/repo
이전 DB를 지우지 않고 새 것과 함께 남긴다(롤백 대비 조합).
sqliterepo_c -f --keep-old /srv/repo
repomd.xml에 기록할 체크섬 타입을 지정한다.
sqliterepo_c --checksum=sha256 /srv/repo
NFS 마운트에서 생성이 실패할 때 로컬 임시 폴더에서 만든다.
sqliterepo_c --local-sqlite /srv/repo
createrepo_c로 XML을 만든 뒤 sqlite DB까지 이어 붙인다(도구 조합).
createrepo_c /srv/repo && sqliterepo_c -f /srv/repo반응형
'명령어 > Linux' 카테고리의 다른 글
| [RHEL] sss_override SSSD 사용자·그룹 속성 로컬 재정의 (0) | 2026.08.16 |
|---|---|
| [RHEL] sss_obfuscate SSSD 비밀번호 난독화 (0) | 2026.08.16 |
| [RHEL] sos report 진단·지원 번들 수집 (0) | 2026.08.16 |
| [RHEL] sos collect 여러 노드 진단 번들 한 번에 수집 (0) | 2026.08.16 |
| [RHEL] skopeo 이미지를 pull 없이 다루기 (0) | 2026.08.16 |