web-dev-qa-db-ja.com

任意のパッケージのインストールまたは削除にapt AT ALLを使用できません-「/boot/System.map-4.8.0-59-genericをロードできませんでした:そのようなファイルまたはディレクトリはありません」

注:DKMSを使用していないため、この質問が this と重複しているとは思わない


こんにちは、私のサーバー(最近の恐ろしいカーネルの問題から復元されました)では、apt autoremove --purgeは次の結果を与えます:

Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  linux-image-extra-4.8.0-59-generic
0 upgraded, 0 newly installed, 1 to remove and 36 not upgraded.
2 not fully installed or removed.
After this operation, 161 MB disk space will be freed.
(Reading database ... 264820 files and directories currently installed.)
Removing linux-image-extra-4.8.0-59-generic (4.8.0-59.64) ...
depmod: FATAL: could not load /boot/System.map-4.8.0-59-generic: No such file or directory
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.8.0-59-generic /boot/vmlinuz-4.8.0-59-generic
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.8.0-59-generic /boot/vmlinuz-4.8.0-59-generic
update-initramfs: Generating /boot/initrd.img-4.8.0-59-generic
cp: failed to restore the default file creation context: Invalid argument
E: /usr/share/initramfs-tools/hooks/kmod failed with return 1.
update-initramfs: failed for /boot/initrd.img-4.8.0-59-generic with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
dpkg: error processing package linux-image-extra-4.8.0-59-generic (--remove):
 installed linux-image-extra-4.8.0-59-generic package post-removal script subprocess returned error exit status 1
Errors were encountered while processing:
 linux-image-extra-4.8.0-59-generic
E: Sub-process /usr/bin/dpkg returned an error code (1)

ここで興味のある行はこれです:

depmod: FATAL: could not load /boot/System.map-4.8.0-59-generic: No such file or directory

ls /boot

0 LD-Server /etc/update-motd.d ls /boot
abi-4.15.0-42-generic     grub/                         System.map-4.15.0-42-generic  vmlinuz-4.15.0-43-generic
config-4.15.0-42-generic  initrd.img-4.15.0-42-generic  System.map-4.15.0-43-generic
config-4.15.0-43-generic  retpoline-4.15.0-42-generic   vmlinuz-4.15.0-42-generic

System.map-4.15.0-42-genericSystem.map-4.15.0-43-genericが表示されますが、System.map-4.8.0-59-genericは表示されません...

私のサーバーは正常に起動しているように見えます(結局は実行されています)が、今すぐテストする気はありません...この問題を修正する方法はありますか?

2
Dev

このリンクで開かれたinitramfs-toolsバグです。 https://bugs.launchpad.net/ubuntu/+source/initramfs-tools/+bug/1776652

この特定のケースでは、/usr/share/initramfs-tools/hooks/kmodの不良回線によってトリガーされました

#!/bin/sh -e
# Copy the compatibility symlinks until initramfs-tools will be converted
# to use the kmod program.

if [ "$1" = "prereqs" ]; then exit 0; fi

. /usr/share/initramfs-tools/hook-functions

copy_exec /bin/kmod
cp -a /sbin/modprobe /sbin/rmmod $DESTDIR/sbin/

mkdir -p $DESTDIR/lib/modprobe.d/
if [ "$(echo /lib/modprobe.d/*)" != "/lib/modprobe.d/*" ]; then
  cp -a /lib/modprobe.d/* $DESTDIR/lib/modprobe.d/
fi

行にコメントを付ける

 #cp -a /sbin/modprobe /sbin/rmmod $DESTDIR/sbin/

エラーを回避するためのupdate-initramfsコマンド.

1
kenn