apt-get, unmet dependencies, …“ แต่มันจะไม่ถูกติดตั้ง”


28
$ apt-get install -f -o 'Dpkg::Options::=--force-confmiss --force-all --force-confnew --overwrite-conffiles' --reinstall at-spi2-core
Reading package lists... Done
Building dependency tree       
Reading state information... Done
You might want to run 'apt-get -f install' to correct these:
The following packages have unmet dependencies:
 kde-workspace-bin : Depends: qdbus but it is not going to be installed
 libqt4-dbus : Depends: qdbus (= 4:4.8.5+git192-g085f851+dfsg-2ubuntu4) but it is not going to be installed
E: Unmet dependencies. Try 'apt-get -f install' with no packages (or specify a solution).

ฉันไม่ค่อยเข้าใจ "แต่มันจะไม่ถูกติดตั้ง" ทำไมมันไม่ติดตั้งแล้ว?

apt-get -f install ไม่ช่วยมันไม่ทำอะไรเลย:

$ apt-get install -f
Reading package lists... Done
Building dependency tree       
Reading state information... Done
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

คุณสามารถลองค้นหาสาเหตุที่ qdbus ไม่ได้รับการติดตั้งด้วยตัวเอง: sudo apt-get install qdbus.
Jos

4
@Jos: ฉันทำอย่างนั้น ตอนนี้มันใช้งานได้ อย่างไรก็ตามนั่นไม่ได้ตอบคำถามของฉันหรือสิ่งที่เป็นปัญหา
อัลเบิร์ต

ฉันคิดว่ามันเป็นการรวมตัวเลือกต่าง ๆ ในคำสั่ง apt-get ดั้งเดิมที่ป้องกัน apt จากการติดตั้งการพึ่งพาเพิ่มเติม
Jos

ที่นี่มันเป็นสิ่งที่ฉันพลาดmainและมีเพียงdeb http://de.archive.ubuntu.com/ubuntu/ wily universe multiverseนอกเหนือไปจากความไว้วางใจ จากนั้นฉลาดต้องการติดตั้งแพคเกจจากจักรวาลซึ่งขึ้นอยู่กับรุ่นที่มีอยู่ใน wily / main เท่านั้นจึงไม่สามารถติดตั้งได้
koppor

ลองเพิ่มแพ็กเกจที่หายไปในคำสั่งติดตั้ง:sudo apt-get install --reinstall at-spi2-core qdbus libqt4-dbus
antivirtel

คำตอบ:


21

สิ่งนี้ใช้ได้สำหรับฉัน

$ sudo apt-get install <missing-package-1> <missing-package-2> ...

ฉันไม่ทราบว่าทำไมสิ่งนี้ถึงจำเป็น แต่การติดตั้งแพคเกจที่มีปัญหาทำงานด้วยตนเอง

หลังจากติดตั้งรอบแรกของการพึ่งพาที่ไม่ได้คาดไว้อีกอันหนึ่งก็โผล่ขึ้นมา แต่ฉันทำซ้ำกระบวนการและมันแยกตัวเองออกหลังจากสองรอบ


9
ว้าวนี่มันง่ายจริงๆ ... มันทำให้ฉันสงสัยว่าทำไมมันไม่ติดตั้งตั้งแต่แรก?
Jacksonkr

สิ่งนี้ช่วยฉันได้เช่นกัน แต่ต้องเรียกใช้สองครั้งด้วยลำดับย้อนหลังของชื่อแพ็คเกจ ไม่แน่ใจว่าจำเป็นต้องมีคำสั่งถอยหลังหรือไม่
PeterM

11

เนื่องจากคำถามนี้ยังไม่ช่วยฉันพบในLinuxQuestions เธรดคำแนะนำที่ช่วยฉัน:

คุณมีส่วนผสม/etc/apt/sources.listไหม ดูเหมือนว่าคุณกำลังพยายามที่จะติดตั้งหนึ่งแพคเกจจากพื้นที่เก็บข้อมูลที่ใหม่กว่า แต่มันไม่สามารถเข้าถึงพื้นที่เก็บข้อมูลที่มีการอ้างอิงที่ใหม่กว่า


ไฟล์ซอร์สแบบผสมหรืออาจเป็นไฟล์เดียวที่มีที่เก็บเดียว แต่มีแพ็คเกจขาดหายไป
golimar

ผมมีปัญหาเดียวกัน - ฉันsources.listมีเพียงmainพื้นที่เก็บข้อมูลและการพึ่งพาเป็นที่อื่น ( universe, restricted, ... ) ข้อความแสดงข้อผิดพลาดทำให้เข้าใจผิดมาก
WoJ

4

ฉันพบปัญหานี้และแก้ไขได้ด้วยการเรียกใช้:

sudo apt-get update
sudo apt-get upgrade

จากนั้นเมื่อฉันรันคำสั่ง "apt-get install" สำเร็จแล้ว


1

ฉันยังมีปัญหาเดียวกันขณะที่ติดตั้งGuake ; มันแสดงunmet dependenciesด้วย Python แม้แต่การพยายามติดตั้งไพ ธ อนใหม่sudo apt-get install --reinstall pythonก็ไม่ได้ทำอะไรเลย

สุดท้าย

ขั้นตอนที่ 1: ฉันต้องลบและติดตั้งหลามอีกครั้งโดยใช้:

หมายเหตุ: การถอนการติดตั้งpythonนำไปสู่การลบการอ้างอิงอื่น ๆ อีกมากมายซึ่งอาจทำให้ Ubuntu ที่ติดตั้งเสียหายดังนั้นโปรดระมัดระวังขณะถอนการติดตั้งpython

sudo apt-get purge python

sudo apt-get install python

ขั้นตอนที่ 2: ติดตั้งแพคเกจเดิม (ในกรณีของฉันมันเป็น guake)

sudo apt-get install guake

สิ่งนี้ได้ติดตั้งการพึ่งพาที่จำเป็นทั้งหมดแล้ว

ลองใช้ขั้นตอนเดียวกันกับแพ็คเกจของคุณและมันก็ใช้ได้กับคุณเช่นกัน


2
การลบ Python เพียงชั่วคราวนั้นเป็นความคิดที่ไม่ดีเนื่องจากมันอาจจะลบแพ็กเกจที่ขึ้นอยู่กับมันจำนวนมากและจำเป็นต้องเรียกใช้คำสั่งระบบที่สำคัญจำนวนมาก
ผู้บัญชาการไบต์

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