ไม่สามารถติดตั้ง / ลบ / อัพเกรดแพ็คเกจใด ๆ


11

ดังนั้นฉันจึงพยายามอัพเกรด Ubuntu 11.10 64 บิตในสองสามวันก่อนและได้รับข้อผิดพลาด:

dpkg: ../../src/archives.c:978: tarobject: การยืนยัน `r == stab.st_size 'ล้มเหลว

ดังนั้นผมทำตามนี้อูบุนตูฟอรั่มโพสต์และหนึ่งในนี้

ลบออกubuntu-docsจากโฟลเดอร์ข้อมูลและไฟล์สถานะ

ตอนนี้เมื่อใดก็ตามที่ฉันพยายามติดตั้ง / ลบ / อัพเกรดแพ็คเกจใด ๆ ที่ฉันได้รับข้อผิดพลาด:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/aptdaemon/worker.py", line 968, in simulate
    trans.unauthenticated = self._simulate_helper(trans)
  File "/usr/lib/python2.7/dist-packages/aptdaemon/worker.py", line 1092, in _simulate_helper
    return depends, self._cache.required_download, \
  File "/usr/lib/python2.7/dist-packages/apt/cache.py", line 235, in required_download
    pm.get_archives(fetcher, self._list, self._records)
SystemError: E:I wasn't able to locate a file for the ubuntu-docs package. This might mean you need to manually fix this package.

เมื่อฉันพยายามติดตั้งubuntu-docsจากบรรทัดคำสั่งฉันจะได้รับผลลัพธ์นี้:

 BlockquoteReading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  ubuntu-docs
1 upgraded, 0 newly installed, 0 to remove and 33 not upgraded.
1 not fully installed or removed.
Need to get 1,408 kB of archives.
After this operation, 22.5 MB of additional disk space will be used.
Get:1 http://us.archive.ubuntu.com/ubuntu/ oneiric/main ubuntu-docs all 11.10.4 [1,408 kB]
Fetched 1,408 kB in 5s (265 kB/s)        
(Reading database ... 
dpkg: warning: files list file for package `ubuntu-docs' missing, assuming package has no files currently installed.
(Reading database ... 323646 files and directories currently installed.)
Preparing to replace ubuntu-docs 11.10.4 (using .../ubuntu-docs_11.10.4_all.deb) ...
Unpacking replacement ubuntu-docs ...
dpkg: ../../src/archives.c:978: tarobject: Assertion `r == stab.st_size' failed.
E: Sub-process /usr/bin/dpkg exited unexpectedly

... ซึ่งดูเหมือนกับเมื่อฉันเริ่มมีปัญหาดังนั้นฉันจึงดูในข้อมูล - ไม่มีแพ็คเกจubuntu-docsแต่มีรายการในสถานะดังนั้นฉันจึงลบมันและลองอีกครั้ง แต่ทันทีที่ฉันทำsudo dpkg --configure -aรายการเพื่อubuntu-docsปรากฏขึ้นอีกครั้ง .

ความคิดใด ๆ

แก้ไข (ไม่ใช่ความคิดเห็นเพื่อบันทึกการจัดรูปแบบ) :

กระทู้นี้บอกว่าฉันต้องทำงานsudo apt-get updateหลังจากลบบรรทัดที่เกี่ยวข้องออกจากสถานะ ดังนั้นผมจึงวิ่งตามมาด้วยsudo apt-get clean sudo apt-get updateแต่ฉันได้รับข้อความว่า:

E: dpkg was interrupted, you must manually run 'sudo dpkg --configure -a' to correct the problem.

หลังจากทำงานsudo dpkg --configure -aแล้วไฟล์สถานะจะมีบรรทัดต่อไปนี้:

Package: ubuntu-docs
Status: install reinstreq half-installed
Priority: optional
Section: doc
Version: 11.10.4

ไม่แน่ใจว่ามันช่วยได้หรือไม่

คำตอบ:


7

บางครั้งแพ็คเกจการติดตั้งที่เสียหายอาจทำให้ระบบการจัดการแพคเกจของคุณเสียหายทำให้ Linux ของคุณไม่สามารถติดตั้งหรือลบแพ็คเกจใด ๆ (ซอฟต์แวร์) นี่เป็นข้อผิดพลาดที่ฉันได้รับจาก apt-get หลังจากพยายามติดตั้ง ndas-admin สำหรับ Ubuntu

$ sudo apt-get install mplayer (หรือแพ็คเกจใด ๆ ) กำลังอ่านรายการแพ็กเกจ…เสร็จสิ้นการสร้างแผนผังการพึ่งพาการ
อ่านข้อมูลสถานะ…เสร็จสิ้น E: แพคเกจ ndas-admin จำเป็นต้องติดตั้งใหม่ แต่ฉันไม่พบที่เก็บถาวรสำหรับมัน (นี่เป็นข้อผิดพลาด)

ฉันพยายามsudo apt-get install -fลองแก้ไขปัญหา แต่มีข้อผิดพลาดเดียวกัน ตัวเลือกเดียวที่ฉันมีคือแก้ไขไฟล์สถานะ dpkg ด้วยตนเอง

$ sudo gedit /var/lib/dpkg/status    (if you prefer you can use vi instead of gedit)
Locate the corrupt package, and remove the whole block of information about it and save the file. Mine looked like this:

Package: ndas-admin
Status: deinstall reinstreq half-configured
Priority: extra
Section: alien
Installed-Size: 100
Maintainer: root <root@ubuntu510>
Architecture: i386
Version: 1.0.2-24
Depends: libc6 (>= 2.3.4-1)
Description: Administration toosl for XIMETA,Inc NDAS device driver for Linux operating system
 ndas-admin – This program allows the user to register/enable/disable/unregister the XIMETA NDAS hard disk.
 .
 (Converted from a rpm package by alien version 8.53.)

แก้ไขแล้ว. หวังว่านี่จะช่วยคนอื่นได้


มีปัญหาที่คล้ายกันและสามารถแก้ไขได้ด้วยวิธีนี้! ขอบคุณ!
นักเรียน

6

นี่คือสิ่งที่ทำงานให้ฉัน:

sudo dpkg --force-all -r ubuntu-docs

ฉันจะรายงานว่ามีอะไรผิดปกติเกี่ยวกับเรื่องนี้อีกครั้ง โซลูชัน BTW ถูกโพสต์ที่วิธีทำให้ dpkg ทำงานอีกครั้ง

โอ้คำแนะนำใช่แล้ว: ตอนนี้ฉันต้องใช้ Synaptic เพื่ออัปเดตระบบทุกครั้ง - ทำให้อูบุนตู-docs อยู่ในทุกการอัปเดตและฉันต้องยกเลิกการเลือก: - / คิดว่าฉันจะเริ่มคำถามอื่นเพื่อถามวิธีการลบแพคเกจเฉพาะจากการปรับปรุงในภายหลังทุกครั้ง


1

เป็นไปได้ว่าคำสั่งของคุณกำลังพยายามใช้แพคเกจที่เสียหายที่แคชไว้ในเครื่องของคุณอีกครั้ง ลองเรียกใช้คำสั่งต่อไปนี้เพื่อล้างแคช apt:

sudo apt-get clean

(คำเตือนนั่นจะลบแพ็กเกจแคชทั้งหมดดังนั้นหากคุณผ่านการติดตั้งไปแล้วครึ่งหนึ่งคุณจะต้องดาวน์โหลดสิ่งต่าง ๆ อีกครั้ง)

จากนั้นคุณควรจะสามารถผ่านกระบวนการอัพเกรดได้ตามปกติ


ตกลงดังนั้นฉันต้องลบ ubuntu-docs ข้อมูลที่เกี่ยวข้องจากไฟล์สถานะแล้วต้อง sudo apt-get clean ด้วยวิธีนี้ฉันสามารถติดตั้งแพ็คเกจใด ๆ ด้วย sudo dpkg -i แต่ก็ยังไม่สามารถอัพเกรดได้
wisemonkey

จะเกิดอะไรขึ้นถ้าคุณเรียกใช้สิ่งต่อไปนี้ sudo apt-get -f install
ImaginaryRobots

สิ่งเดียวกันฉันไม่สามารถจัดรูปแบบนี้ แต่นี่คือ: sudo apt-get -f ติดตั้ง (กำลังอ่านฐานข้อมูล ... dpkg: คำเตือน: ไฟล์รายการไฟล์สำหรับแพ็คเกจubuntu-docs' missing, assuming package has no files currently installed. (Reading database ... 323783 files and directories currently installed.) Preparing to replace ubuntu-docs 11.10.4 (using .../ubuntu-docs_11.10.4_all.deb) ... Unpacking replacement ubuntu-docs ... dpkg: ../../src/archives.c:978: tarobject: Assertion r == stab.st_size 'ล้มเหลว E: กระบวนการย่อย / usr / bin / dpkg ออกโดยไม่คาดคิด
wisemonkey

ฉันสงสัยว่ามันเป็นข้อผิดพลาดหรือไม่? ฉันไม่ต้องการที่จะติดตั้งใหม่ทุกอย่าง: - /
wisemonkey
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.