좀 더 자세히 살펴보면 시스템의 디렉토리 또는 파일을 삭제 해야하거나 삭제 해야한다고 생각하지 않습니다 .
perl -MCPAN -e 'upgrade'
명령 행에서 명령 을 실행하면 시스템에 추가 모듈이 설치 되지 않습니다 .
그것은 것입니다 만 CPAN 패키지 관리 시스템을 통해, 설치된 모듈을 업그레이드하려고 하지 시냅스를 통해 .
이는 'r'명령을 실행 한 다음 cpan[1]>
프롬프트 에서 upgrade 명령을 실행하는 것과 유사 합니다. 여기를 참조 하십시오 .
CPAN과 Synaptic은 별개의 두 가지 패키지 관리 시스템입니다.
이 되지 않습니다 CPAN에서 가능한 모든 펄 모듈을 설치합니다. 기존 시스템 패키지 dB도 수정하지 않습니다. 따라서이를 안전하게 롤백 할 수 있습니다.
그러나 응용 프로그램 또는 시스템이 특정 버전의 Perl 모듈에 의존하는 경우 여전히 위험 할 수 있습니다.
업그레이드 프로세스를 중단 한 경우 시스템 손상을 피할 수 있습니다.
복구 옵션 :
명령 행에서 시작 cpan
하고 r 명령을 실행하여 설치된 모듈 및 사용 가능한 업그레이드 목록을보십시오. 예를 들어 다음은 내 cpan의 약식 출력입니다.
cpan[7]> r
Package namespace installed latest in CPAN file
App::Cpan 1.5701 1.61 BDFOY/App-Cpan-1.61.tar.gz
DBD::mysql 4.020 4.022 CAPTTOFU/DBD-mysql-4.022.tar.gz
DBI 1.616 1.623 TIMB/DBI-1.623.tar.gz
DB_File 1.821 1.827 PMQS/DB_File-1.827.tar.gz
Error 0.17010 0.17019 SHLOMIF/Error-0.17019.tar.gz
Eval::Closure 0.06 0.08 DOY/Eval-Closure-0.08.tar.gz
....
Eval::Closure
이 예제 에서는 모듈을 사용하십시오. perl -MCPAN -e 'upgrade'
명령을 완료하고 버전 0.08이 설치 되었다고 가정 해 봅시다 .
Synaptic을 보면이 경우 저장소의 최신 버전이 여전히 0.06 (0.06-1, 특히 내 경우)임을 알 수 있습니다.
다음 명령을 실행하여 시스템 버전으로 롤백 할 수 있습니다.
sudo apt-get install --reinstall libeval-closure-perl
Perl 모듈을 수동으로 설치하고 이전 버전으로 롤백하려는 경우 source.cpan.org 또는 다른 곳에서 다시 다운로드 한 후 수동으로 다시 설치해야합니다.
요약 : CPAN 내에서 Perl 모듈을 업그레이드 하면 시스템 저장소에 영향을 미치지 않아야 합니다.
행운을 빌어 요. 당황하지 마십시오.
apt-get
시스템이 완전히 삭제하고 필수 데이터베이스를 업데이트하도록 또는 Synaptic 과 같은 것을 사용하는 것이 좋습니다 .