문제 해결 동기화
동기화는 여러 이유로 실패할 수 있습니다. 연결 문제에 대한 자세한 내용을 확인하려면 다음 명령을 실행합니다.
export URLGRABBER_DEBUG=DEBUG spacewalk-repo-sync -c <channelname> <options> > /var/log/spacewalk-repo-sync-$(date +%F-%R).log 2>&1
Zypper가 생성한 로그는 /var/log/zypper.log
에서도 확인할 수 있습니다.
- GPG 키 불일치
-
SUSE Multi-Linux Manager는 타사 GPG 키를 자동으로 신뢰하지 않습니다. 패키지 동기화가 실패하면 신뢰할 수 없는 GPG 키 때문일 수 있습니다.
/var/log/rhn/reposync
를 열고 다음과 같은 오류를 찾으면 이러한 경우에 해당하는지 확인 가능:['/usr/bin/spacewalk-repo-sync', '--channel', 'sle-12-sp1-ga-desktop- nvidia-driver-x86_64', '--type', 'yum', '--non-interactive'] RepoMDError: Cannot access repository. Maybe repository GPG keys are not imported
문제를 해결하려면 GPG 키를 SUSE Multi-Linux Manager로 임포트해야 합니다. GPG 키 임포트에 대한 자세한 내용은 리포지토리 메타데이터에서 확인할 수 있습니다.
spacewalk-repo-sync
에서 GPG 키 제거-
spacewalk-repo-sync
를 사용하여 리포지토리용 GPG 키를 수동으로 임포트했고 이 키가 더 이상 필요하지 않은 경우(예: 키가 손상되었거나 테스트 목적으로만 사용된 경우),spacewalk-repo-sync
에서 사용하는 zypper RPM 데이터베이스에서 제거할 수 있습니다. 이를 위해 사용할 수 있는 명령은 다음과 같습니다.rpm --dbpath=/var/lib/spacewalk/reposync/root/var/lib/rpm/ -e gpg-pubkey-*
여기서
gpg-pubkey-*
는 제거할 GPG 키의 이름입니다. - GPG 키 갱신
-
GPG 키를 갱신하려면 먼저 이전 키를 제거한 후 새 키를 생성하여 임포트합니다.
- 체크섬 불일치
-
체크섬이 실패한 경우
/var/log/rhn/reposync/*.log
로그 파일에 다음과 같은 오류가 표시될 수 있습니다.Repo Sync Errors: (50, u'checksums did not match 326a904c2fbd7a0e20033c87fc84ebba6b24d937 vs afd8c60d7908b2b0e2d95ad0b333920aea9892eb', 'Invalid information uploaded to the server') The package microcode_ctl-1.17-102.57.62.1.x86_64 which is referenced by patch microcode_ctl-8413 was not found in the database. This patch has been skipped.
이 오류는
-Y
옵션을 사용하여 명령 프롬프트에서 동기화를 실행하여 해결 가능합니다.spacewalk-repo-sync --channel <channelname> -Y
이 옵션은 로컬로 캐시된 체크섬이 아닌 동기화 전에 리포지토리 데이터를 확인합니다.
- 연결 시간 제한
-
다운로드 시간이 다음 오류와 함께 초과하는 경우에 해당합니다.
28, '작업이 너무 느립니다. 최근 300초 내에 전송된 초당 1000바이트 미만
이 오류는
/etc/rhn/rhn.conf
에서reposync_timeout
및reposync_minrate
구성 값을 지정하여 해결할 수 있습니다. 기본적으로 300초 동안 초당 1000바이트 미만이 전송되면 다운로드가 중단됩니다.reposync_minrate
로 초당 바이트 수를 조정하고reposync_timeout
으로 대기 시간(초)을 조정할 수 있습니다. - Manually Trusting the Key During reposync
-
It is possible that in some cases when
reposync
is run, you may need to accept the GPG key manually. For example:# spacewalk-repo-sync -c nvidia-compute-sle-15-x86_64-we-sp3 17:07:40 ====================================== 17:07:40 | Channel: nvidia-compute-sle-15-x86_64-we-sp3 17:07:40 ====================================== 17:07:40 Sync of channel started. New repository or package signing key received: Repository: nvidia-compute-sle-15-x86_64-we-sp3 Key Fingerprint: 610C 7B14 E068 A878 070D A4E9 9CD0 A493 D42D 0685 Key Name: cudatools <cudatools@nvidia.com> Key Algorithm: RSA 4096 Key Created: Thu Apr 14 16:04:01 2022 Key Expires: (does not expire) Rpm Name: gpg-pubkey-d42d0685-62589a51 Note: Signing data enables the recipient to verify that no modifications occurred after the data were signed. Accepting data with no, wrong or unknown signature can lead to a corrupted system and in extreme cases even to a system compromise. Note: A GPG pubkey is clearly identified by its fingerprint. Do not rely on the key's name. If you are not sure whether the presented key is authentic, ask the repository provider or check their web site. Many providers maintain a web page showing the fingerprints of the GPG keys they are using. Do you want to reject the key, trust temporarily, or trust always? [r/t/a/?] (r):