เมื่อมองดูใกล้ ๆ นี้ฉันไม่คิดว่าคุณจะต้องหรือควรลบไดเรกทอรีหรือไฟล์ใด ๆ ในระบบของคุณ
การรันคำสั่งperl -MCPAN -e 'upgrade'
จากบรรทัดคำสั่งจะไม่ติดตั้งโมดูลเพิ่มเติมลงในระบบของคุณ
มันจะเพียง แต่พยายามที่จะติดตั้งโมดูลอัพเกรดผ่านระบบการจัดการแพคเกจ CPAN ที่และไม่ผ่าน Synaptic
สิ่งนี้คล้ายกับการเรียกใช้คำสั่ง 'r' จากนั้นเรียกใช้คำสั่งอัปเกรดที่cpan[1]>
พรอมต์ ดู ที่นี่
CPAN และ Synaptic เป็นระบบการจัดการบรรจุภัณฑ์ที่แตกต่างกันสองระบบ
สิ่งนี้จะไม่ติดตั้งโมดูล Perl ทั้งหมดที่เป็นไปได้จาก 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 หรือที่อื่น ๆ ) และติดตั้งใหม่ด้วยตนเอง
ในการสรุป: การอัพเกรดโมดูล Perl ภายใน CPAN ไม่ควรส่งผลกระทบต่อที่เก็บข้อมูลระบบของคุณ
ขอให้โชคดี อย่าตกใจ
apt-get
หรือ Synaptic เพื่อให้ระบบทำการลบอย่างละเอียดและอัพเดตฐานข้อมูลที่จำเป็น