업그레이드하는 동안 기존 패키지를 추가하려고 시도했지만 일부 오류로 인해 부분 패키지 - 부분 gnutls가 생성되었습니다.
패키지의 이 부분을 제거하려고 하면 다음 오류가 발생합니다.
File /usr/local/share/locale/cs/LC_MESSAGES/pkg.qX9SMkCPZb does not exist
File /usr/local/share/locale/de/LC_MESSAGES/pkg.Dfpr8PbT3X does not exist
File /usr/local/share/locale/en@boldquot/LC_MESSAGES/pkg.wIH7fQJbhK does not exist
File /usr/local/share/locale/en@quot/LC_MESSAGES/pkg.c8llMmPSGl does not exist
Read failed: Input/output error at /usr/libdata/perl5/OpenBSD/md5.pm line 59
소스코드를 확인해봤습니다. 일부 동료는 일부 데이터 구조에 파일을 추가하지만(대부분 삭제할 파일을 파악하는 중임) 파일이 더 이상 존재하지 않기 때문에 추가하지 못합니다.
이 부분 패키지를 어떻게 제거합니까?
답변1
나열된 각 파일에 대해 빈 파일을 만들어 볼 수 있습니다. 예를 들면 다음과 같습니다.
touch /usr/local/share/locale/cs/LC_MESSAGES/pkg.qX9SMkCPZb
등. 파일이 존재하면 pkg_delete -qq
기록된 체크섬을 비교하지 않고 삭제할 수 있습니다.
그래도 문제가 해결되지 않으면 /var/db/pkg/<pkg-name>/+CONTENTS
패키지 내용과 설치 파일 위치를 나열하여 해당 정보를 사용하여 파일을 수동으로 제거한 다음 /var/db/pkg/<pkg-name>
문제의 디렉터리를 삭제할 수도 있습니다.