Bagaimana saya bisa menyelesaikan ketergantungan dpkg?

32
administrator@zlounes:~$ sudo apt-get dist-upgrade
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:
 linux-server : Depends: linux-headers-server (= 3.2.0.37.44) but 3.2.0.37.45 is installed
E: Unmet dependencies. Try using -f.
administrator@zlounes:~$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  linux-image-server linux-server
The following packages will be upgraded:
  linux-image-server linux-server
2 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.
4 not fully installed or removed.
Need to get 0 B/4,458 B of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
Traceback (most recent call last):
  File "/usr/bin/apt-listchanges", line 237, in <module>
    main()
  File "/usr/bin/apt-listchanges", line 48, in main
    debs = apt_listchanges.read_apt_pipeline(config)
  File "/usr/share/apt-listchanges/apt_listchanges.py", line 83, in read_apt_pipeline
    return map(lambda pkg: filenames[pkg], order)
  File "/usr/share/apt-listchanges/apt_listchanges.py", line 83, in <lambda>
    return map(lambda pkg: filenames[pkg], order)
KeyError: 'linux-image-server'
Setting up initramfs-tools (0.99ubuntu13.1) ...
update-initramfs: deferring update (trigger activated)
Setting up linux-image-3.2.0-37-generic (3.2.0-37.58) ...
Running depmod.
update-initramfs: deferring update (hook will be called later)
The link /initrd.img is a dangling linkto /boot/initrd.img-3.2.0-37-generic
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.2.0-37-generic /boot/vmlinuz-3.2.0-37-generic
update-initramfs: Generating /boot/initrd.img-3.2.0-37-generic

gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-3.2.0-37-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
Failed to process /etc/kernel/postinst.d at /var/lib/dpkg/info/linux-image-3.2.0-37-generic.postinst line 1010.
dpkg: error processing linux-image-3.2.0-37-generic (--configure):
 subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of linux-image-server:
 linux-image-server depends on linux-image-3.2.0-37-generic; however:
  Package linux-image-3.2.0-37-generic is not configured yet.
dpkg: error processing linux-image-server (--configure):
 dependency problems - leaving unconfigured
dpkg: dependency problems prevent configuration of linux-server:
 linux-server depends on linux-image-server (= 3.2.0.37.44); however:
  Package linux-image-server is not configured yet.
 linux-server depends on linux-headers-server (= 3.2.0.37.44); however:
  Version of linux-headers-server on system is 3.2.0.37.45.
dpkg: error processing linux-server (--configure):
 dependency problems - leaving unconfigured
Processing triggers for initramfs-tools ...
update-initramfs: Generating /boot/initrd.img-3.2.0-36-generic
No apport report written because the error message indicates its a followup error from a previous failure.
                                                                                                          No apport report written because the error message indicates its a followup error from a previous failure.

gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-3.2.0-36-generic with 1.
dpkg: error processing initramfs-tools (--configure):
 subprocess installed post-installation script returned error exit status 1
No apport report written because MaxReports is reached already
                                                              Errors were encountered while processing:
 linux-image-3.2.0-37-generic
 linux-image-server
 linux-server
 initramfs-tools
E: Sub-process /usr/bin/dpkg returned an error code (1)

Saya sudah mencoba banyak dan tidak bisa membuatnya bekerja. Saya pikir saya menginterupsi instalasi dan itu mengacaukan semuanya. Saya sudah googled dan mencoba berbagai perbaikan.

EDIT (Setelah membersihkan folder saya / boot):

administrator@zlounes:/boot$ sudo apt-get -f install
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Correcting dependencies... Done
The following extra packages will be installed:
  linux-server
The following packages will be upgraded:
  linux-server
1 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.
1 not fully installed or removed.
Need to get 0 B/1,734 B of archives.
After this operation, 0 B of additional disk space will be used.
Do you want to continue [Y/n]? y
Traceback (most recent call last):
  File "/usr/bin/apt-listchanges", line 237, in <module>
    main()
  File "/usr/bin/apt-listchanges", line 48, in main
    debs = apt_listchanges.read_apt_pipeline(config)
  File "/usr/share/apt-listchanges/apt_listchanges.py", line 83, in read_apt_pipeline
    return map(lambda pkg: filenames[pkg], order)
  File "/usr/share/apt-listchanges/apt_listchanges.py", line 83, in <lambda>
    return map(lambda pkg: filenames[pkg], order)
KeyError: 'linux-server'
dpkg: dependency problems prevent configuration of linux-server:
 linux-server depends on linux-image-server (= 3.2.0.37.44); however:
  Version of linux-image-server on system is 3.2.0.37.45.
 linux-server depends on linux-headers-server (= 3.2.0.37.44); however:
  Version of linux-headers-server on system is 3.2.0.37.45.
dpkg: error processing linux-server (--configure):
 dependency problems - leaving unconfigured
No apport report written because the error message indicates its a followup error from a previous failure.
                                                                                                          E: Sub-process /usr/bin/dpkg returned an error code (1)
administrator@zlounes:/boot$
zlounes
sumber
1
mengapa Anda menganggap masalah dengan dependensi paket ketika kesalahan menyatakan gzip: stdout: No space left on device? Menurut saya dependensi TIDAK terinstal karena Anda kekurangan ruang untuk menginstal perangkat lunak.
Rinzwind
Silakan tambahkan hasil df. Saya kira /bootpartisi Anda sudah penuh.
Rinzwind
Terima kasih :). Saya telah membersihkan folder / boot tetapi saya kembali memiliki kesalahan yang sama (saya telah mengedit posting pertama saya dengan kesalahan kode), terima kasih sebelumnya dan maaf untuk bahasa Inggris saya yang buruk
zlounes
Dengan "membersihkan folder boot saya", maksud Anda Anda menghapus file di folder itu? Anda mungkin tidak akan menyukai hasil melakukan itu.
Jack
Tidak itu baik, saya telah memilih file;)
zlounes

Jawaban:

65

Upaya yang baik untuk memastikan bahwa sistem Anda dalam kondisi baik dan tidak memiliki masalah dengan instalasi yang dibatalkan dibatalkan

  dpkg --configure -a 

Pastikan daftar paket diperbarui dan tidak ada masalah yang ditampilkan pada:

 apt-get update

Opsional Anda dapat menghapus semua data lama sebelum pembaruan dengan:

 find /var/lib/apt/lists -type f  |xargs rm -f >/dev/null \

Langkah selanjutnya untuk menyelesaikan masalah adalah menghapus paket linux-server untuk sementara waktu. Ini dapat dilakukan karena tidak memiliki konten nyata dan hanya memperkenalkan ketergantungan:

Paket ini akan selalu bergantung pada kernel Linux lengkap terbaru yang tersedia untuk Server Equipment.

 dpkg --remove linux-server

Setelah langkah ini periksa apakah semua dependensi saat ini diinstal:

apt-get install -f

Jika semuanya ok sekarang Anda dapat menginstal linux-server lagi:

apt-get install linux-server

Nota bene

linux-server sudah usang dalam 12,04 . Juga untuk peralatan server , kernel generik digunakan. Lihatapt-cache show linux-image-server

Paket: linux-image-server ...

Bagian: metapackages

....

Tergantung: linux-image-3.2.0-23- generik , linux-firmware

H.-Dirk Schmitt
sumber
Terima kasih banyak. Saya pikir saya akan menghabiskan satu hari menginstal ulang server ..
uncletall
8

Saya secara teratur harus membersihkan / mem-boot mesin saya dan biasanya terlalu penuh merusak pembaruan - tidak yakin apa solusi utamanya tetapi proses yang saya gunakan tampaknya berhasil:

Mulai dengan a sudo su

Lalu pergi ke / boot dan lakukan ls -lSrh- yang di bawah adalah yang terbesar - rmcukup yang lebih tua untuk membersihkan ruang yang cukup.

Kemudian coba yang berikut ini (seperti yang dikutip dari atas):

  1. sudo apt-get remove linux-server
  2. dpkg --configure -a
  3. apt-get update
  4. apt-get install -f
  5. apt-get autoremove
  6. dpkg --get-selections|grep 'linux-image*'|awk '{print $1}'|egrep -v "linux-image-$(uname -r)|linux-image-generic" |while read n;done
  7. apt-get install linux-image-server linux-server
  8. reboot

Jika ada yang gagal, beri komentar di sini dan saya akan melihat apa masalahnya.

Saya telah melihat hal semacam ini berfungsi untuk masalah paket postgresql-9.1 saat menggunakan PPA PPA juga.

Suatu ketika ketika saya menjalankan prosedur, saya memiliki masalah dengan grub. Melakukan apt-get install --reinstall grubperbaikannya.

Terima kasih untuk linernya, masuk ke: http://ubuntuforums.org/showpost.php?p=12180959&postcount=7

Semoga berhasil!

Christian Jensen
sumber
Langkah 6 sepertinya sudah terpotong: dpkg - get-choices | grep 'linux-image *' | awk '{print $ 1}' | egrep -v "linux-image - $ (uname -r) | linux-image -generic "| saat membaca n; lakukan apt-get -y hapus $ n; selesai
Tom Swifty
0

gzip: stdout: Tidak ada ruang tersisa di perangkat

Sepertinya Anda kehabisan ruang. Bersihkan beberapa ruang dan perbaiki masalah paket dengan:

sudo apt-get purge
sudo apt-get clean
sudo apt-get check
sudo apt-get install -f
sudo dpkg --configure -a 

Kemudian instal kembali paket-paket itu.

Sumber: Thread: Dpkg: Masalah ketergantungan - meninggalkan tidak dikonfigurasi .

kenorb
sumber