Red Hat은 설치 미디어에서 사용자 정의 저장소를 찾지 못합니다.

Red Hat은 설치 미디어에서 사용자 정의 저장소를 찾지 못합니다.

최신 버전으로 업데이트된 감소된 rpm 세트를 사용하여 Red Hat 7.8 ISO를 생성하려고 합니다. 필요한 패키지를 분리하고 다운로드하는 방법을 알아냈지만 새 ISO를 생성하면 부팅되고 설치 프로그램이 시작되지만 로컬 미디어에서 설치 소스를 찾지 못합니다. 나는 다음 단계를 따랐습니다.

  1. 소스 ISO 마운트
  2. 전체 파일 구조를 임시 폴더에 복사
  3. 필요한 RPM으로만 rpm을 필터링하세요.
  4. yumdownloader를 사용하여 각 RPM의 최신 버전을 새 패키지로 다운로드하세요.
  5. 원래 패키지 폴더를 삭제하고 newPackages 패키지의 이름을 바꿉니다.

다음 단계는 패키지에서 다음 명령을 실행하여 새 저장소를 생성하는 것입니다.

createrepo -dpo .. .

repodata 폴더에 새 repo 파일을 생성하고 repomd.xml 파일을 대체합니다.

그러나 부팅할 때 ISO에서 저장소를 찾을 수 없습니다.

새 저장소를 인식하기 위해 업데이트해야 하는 다른 파일이 있습니까, 아니면 ISO 호환 저장소를 만드는 데 필요한 몇 가지 옵션이 있습니까? 초기 설치에 필요한 rpm을 삭제했나요?

답변1

나는 comps.xml을 참조하는 여러 페이지를 찾았고 마침내 소스 ISO의 comps.xml이 파일 이름이 훨씬 길고 아카이브에 있다는 것을 알아냈습니다. 내 경우 파일 이름은 다음과 같습니다.

c0dee7823d016c47d3d8ad66d65f6cbce5284a00f349dc4d7a72a971c283edd0-comps.xml.gz

이 사실을 파악한 후 파일을 추출하여 새 ISO 트리의 상위 폴더에 배치했습니다. 그런 다음 다음 명령을 사용하여 내 패키지 폴더의 축소된 패키지 목록으로 원본 저장소를 성공적으로 업데이트할 수 있었습니다(패키지 폴더에서 이 명령을 실행).

createrepo --update -g ../../comps.xml -dpo .. .

명령을 분석하면 다음과 같습니다.

  • --update는 createrepo에게 repodata 폴더의 기존 파일을 업데이트하도록 지시합니다.
  • -g ../../comps.xml은 소스 comps.xml 파일에서 패키지 그룹을 복사합니다.
  • -dp -d 플래그는 데이터베이스 파일을 생성하고 -p는 XML 파일을 보기 좋게 만듭니다.
  • -o는 출력 위치를 지정합니다. 이 경우 원래 repodata 폴더가 있던 상위 폴더는

끝의 마침표(.)는 모든 패키지가 있는 현재 폴더를 나타냅니다.

관련 정보