คุณควรจะสามารถทำงานกับไฟล์สถานะที่ดีที่รู้จักก่อนหน้านี้และอัปเดตจากที่นั่น ทุกครั้งที่คุณจะติดตั้งหรือปรับปรุงไฟล์สถานะจะถูกบันทึกไว้ในการสำรองข้อมูลบีบอัดภายใต้/ var / การสำรองข้อมูล การทำls -l dpkg * ในไดเร็กทอรีแสดง:
-rw-r--r-- 1 root root 2266732 2010-09-30 08:35 dpkg.status.0
-rw-r--r-- 1 root root 624182 2010-09-29 08:49 dpkg.status.1.gz
-rw-r--r-- 1 root root 623844 2010-09-28 08:55 dpkg.status.2.gz
-rw-r--r-- 1 root root 620358 2010-09-24 11:04 dpkg.status.3.gz
-rw-r--r-- 1 root root 619021 2010-09-23 15:34 dpkg.status.4.gz
-rw-r--r-- 1 root root 619013 2010-09-23 08:03 dpkg.status.5.gz
-rw-r--r-- 1 root root 618968 2010-09-21 08:33 dpkg.status.6.gz
นอกจากนี้ยังมีการสำรองข้อมูลของไฟล์ที่สร้างขึ้นในไดเรกทอรี / var / lib / dpkg / ที่มีชื่อว่า status-old การทำสถานะ ls -l * ในไดเรกทอรีจะแสดง:
-rw-r--r-- 1 root root 2266732 2010-09-30 08:35 status
-rw-r--r-- 1 root root 2267191 2010-09-30 08:35 status-old
ดังนั้นเพื่อกู้คืนจากความเสียหายคุณควรจะสามารถทำต่อไปนี้:
1. ทำการสำรองข้อมูลไฟล์สถานะที่เสียหาย :
mv /var/lib/dpkg/status /var/lib/dpkg/status_bkup
2. คัดลอกไฟล์สถานะ dpkg ล่าสุดลงในสถานที่จากแหล่งใดแหล่งหนึ่งข้างต้น:
ทั้ง
cp /var/lib/dpkg/status-old /var/lib/dpkg/status
หรือ
cp /var/backups/dpkg.status.#.gz /var/lib/dpkg/
gunzip -d /var/lib/dpkg/dpkg.status.#.gz
mv /var/lib/dpkg/dpkg.status.# /var/lib/dpkg/status
3. จากนั้นเรียกใช้การปรับปรุง apt-get:
sudo apt-get update
ที่ควรทำ
status
ไฟล์ใหม่ได้อย่างสมบูรณ์: มันเป็นแหล่งข้อมูลหลักและในขณะที่ไฟล์ส่วนใหญ่นั้นซ้ำซ้อน แต่ไม่ใช่ทั้งหมด อย่างไรก็ตามอาจเป็นไปได้ที่จะซ่อมแซมไฟล์ด้วยตนเอง โพสต์ไฟล์ขนาดเล็กรอบบรรทัดที่มีปัญหาพูดประมาณ 20-40 บรรทัดรวมถึงอย่างน้อยหนึ่งPackage:
บรรทัดก่อนและหลังบรรทัด 15945