dpkg: проблемы с зависимостями предотвращают настройку initramfs-tools
Я начал обновление своей системы Kubuntu 12.04 с помощью этой команды, как обычно:
sudo apt-get --show-upgraded dist-upgrade
Я вернулся позже, и он потерпел неудачу:
- Создать dpkg .deb имя файла
- Есть ли аргумент dpkg для предупреждения о несовместимостях / нарушениях?
- Доступен ли dpkg для Cygwin?
- Распаковка файла .deb, содержащего двоичный код MIPS
- Как удалить программное обеспечение, установленное dpkg -i FILE.deb?
Preconfiguring packages ... (Reading database ... 478306 files and directories currently installed.) Preparing to replace ... Unpacking replacement base-files ... Processing triggers for man-db ... Processing triggers for install-info ... ... Processing triggers for initramfs-tools ... update-initramfs: Generating /boot/initrd.img-3.8.0-32-lowlatency gzip: stdout: No space left on device E: mkinitramfs failure cpio 141 gzip 1 update-initramfs: failed for /boot/initrd.img-3.8.0-32-lowlatency with 1. dpkg: error processing initramfs-tools (--unpack): subprocess installed post-installation script returned error exit status 1 Errors were encountered while processing: initramfs-tools E: Sub-process /usr/bin/dpkg returned an error code (1)
вот проблема: $ df -h output:
Filesystem Size Used Avail Use% Mounted on /dev/sda1 894M 879M 0 100% /boot
вручную удаленные старые файлы, и теперь некоторое свободное пространство
Filesystem Size Used Avail Use% Mounted on /dev/sda1 894M 129M 717M 16% /boot
Я запустил следующее:
sudo apt-get autoremove
Следующий:
sudo apt-get -f install
output:
The following extra packages will be installed: initramfs-tools The following packages will be upgraded: initramfs-tools dpkg: dependency problems prevent configuration of initramfs-tools: initramfs-tools depends on initramfs-tools-bin (<< 0.99ubuntu13.3.1~); however: Version of initramfs-tools-bin on system is 0.99ubuntu13.4. dpkg: error processing initramfs-tools (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates its a followup error from a previous failure. Errors were encountered while processing: initramfs-tools E: Sub-process /usr/bin/dpkg returned an error code (1)
sudo apt-get install initramfs-tools
выше не выполняется
dpkg -l initramfs-tools
output:
Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Description +++-==============-==============-============================================ iF initramfs-tool 0.99ubuntu13.3 tools for generating an initramfs
sudo apt-get install --reinstall initramfs-tools
output:
The following packages will be upgraded: initramfs-tools 1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. 1 not fully installed or removed. Need to get 0 B/49.2 kB of archives. After this operation, 0 B of additional disk space will be used. dpkg: dependency problems prevent configuration of initramfs-tools: initramfs-tools depends on initramfs-tools-bin (<< 0.99ubuntu13.3.1~); however: Version of initramfs-tools-bin on system is 0.99ubuntu13.4. dpkg: error processing initramfs-tools (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates its a followup error from a previous failure. Errors were encountered while processing: initramfs-tools E: Sub-process /usr/bin/dpkg returned an error code (1)
Ниже приведен вывод политики apt-cache policy initramfs-tools-bin initramfs-tools
:
initramfs-tools-bin: Installed: 0.99ubuntu13.4 Candidate: 0.99ubuntu13.4 Version table: *** 0.99ubuntu13.4 0 500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages 100 /var/lib/dpkg/status 0.99ubuntu13 0 500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages initramfs-tools: Installed: 0.99ubuntu13.3 Candidate: 0.99ubuntu13.4 Version table: 0.99ubuntu13.4 0 500 http://us.archive.ubuntu.com/ubuntu/ precise-updates/main amd64 Packages *** 0.99ubuntu13.3 0 100 /var/lib/dpkg/status 0.99ubuntu13 0 500 http://us.archive.ubuntu.com/ubuntu/ precise/main amd64 Packages
Как предложено ниже, следующие мои шаги:
$ sudo apt-get update $ sudo apt-get -f install initramfs-tools=0.99ubuntu13 initramfs-tools-bin=0.99ubuntu13 Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: ... Use 'apt-get autoremove' to remove them. The following packages will be DOWNGRADED: initramfs-tools initramfs-tools-bin 0 upgraded, 0 newly installed, 2 downgraded, 0 to remove and 4 not upgraded. 1 not fully installed or removed. Need to get 59.2 kB of archives. After this operation, 2,048 B disk space will be freed. Do you want to continue [Y/n]? Get:1 http://us.archive.ubuntu.com/ubuntu/ precise/main initramfs-tools all 0.99ubuntu13 [49.2 kB] Get:2 http://us.archive.ubuntu.com/ubuntu/ precise/main initramfs-tools-bin amd64 0.99ubuntu13 [9,988 B] Fetched 59.2 kB in 0s (124 kB/s) dpkg: warning: downgrading initramfs-tools-bin from 0.99ubuntu13.4 to 0.99ubuntu13. (Reading database ... 478624 files and directories currently installed.) Preparing to replace initramfs-tools-bin 0.99ubuntu13.4 (using .../initramfs-tools-bin_0.99ubuntu13_amd64.deb) ... Unpacking replacement initramfs-tools-bin ... Setting up initramfs-tools-bin (0.99ubuntu13) ... dpkg: dependency problems prevent configuration of initramfs-tools: initramfs-tools depends on initramfs-tools-bin (>= 0.99ubuntu13.3); however: Version of initramfs-tools-bin on system is 0.99ubuntu13. dpkg: error processing initramfs-tools (--configure): dependency problems - leaving unconfigured No apport report written because the error message indicates its a followup error from a previous failure. Errors were encountered while processing: initramfs-tools E: Sub-process /usr/bin/dpkg returned an error code (1)
Затем я попробовал предложение Джайлса:
sudo dpkg --configure -a --force-depends sudo apt-get install -f sudo apt-get dist-upgrade
2 Solutions collect form web for “dpkg: проблемы с зависимостями предотвращают настройку initramfs-tools”
Ваша система находится в состоянии, которое, я думаю, не должно произойти: у вас есть новая версия зависимостей initramfs-tools-bin
в установленном состоянии, но в старой версии зависимых initramfs-tools
в состоянии с половиной установленного состояния. Я не уверен, что проблема заключается в том, что APT позволяет системе попасть в состояние, в котором он не может восстановить, dpkg позволяет системе попасть в состояние, в котором он не может восстановиться, поддерживающий пакет использовал комбинацию зависимостей который не поддерживается, или мое ограниченное понимание не распространяется на этот случай.
Попробуйте напрямую использовать dpkg
:
dpkg --configure -a
Если это все еще жалуется на зависимости, попробуйте
dpkg --configure -a --force-depends
Если это работает, у вас есть база данных dpkg в согласованном состоянии. Вам нужно получить APT в хорошем состоянии (которое не требует никаких зависимостей):
apt-get -f install
После этого вы можете возобновить обычную модернизацию.
Если очистка /boot
удаляла старые ядра, которые были в пакетах, вы больше не сможете удалять пакеты ядра. Вам придется воссоздать файлы. Вы можете создавать пустые файлы ( touch `cat /var/lib/dpkg/info/linux-image-1.2.3-foo`
), если вы удалите пакет linux-image-1.2.3-foo
, и вы вручную удалили некоторые его файлов.
update-initramfs: Generating /boot/initrd.img-3.8.0-32-lowlatency gzip: stdout: No space left on device
Это означает, что вам нужно удалить некоторые ядра. Старые, неиспользуемые ядра – лучшая альтернатива.
sudo dpkg --purge linux-generic-someold-version
вручную удаленные старые файлы, и теперь некоторое свободное пространство
НЕТ!
Вы никогда не должны вручную удалять что-либо. Когда-либо. Только вещи из /home
и /tmp
которые могут быть легко восстановлены, могут меня коснуться вручную, иначе используйте инструменты. Вот в чем дело с DPKG / APT. Если вам нужно что-то удалить, используйте apt / dpkg и оставите материал вручную. Из-за этого я предполагаю, что ваша текущая проблема.
Чтобы решить проблему с зависимостями, вы можете понизить рейтинг, а затем обновить:
sudo apt-get update sudo apt-get -f install initramfs-tools=0.99ubuntu13 initramfs-tools-bin=0.99ubuntu13 sudo apt-get upgrade
К этому моменту вы должны были сказать dpkg / apt, чтобы удалить старые ядра.