Ubuntu Server 14.04-“vmlinuz 是一个我没想到的目录”

Ubuntu Server 14.04-“vmlinuz 是一个我没想到的目录”

总结- 是否有任何理由/vmlinuz/vmlinuz.old应该是目录,而不是引导中图像的符号链接?是否有任何理由不使用正确的符号链接替换这些(空)目录?

整个故事:最近在安装一些软件包时,dpkg 会出现以下错误:

Setting up linux-image-3.13.0-147-generic (3.13.0-147.196) ...
Running depmod.
update-initramfs: deferring update (hook will be called later)
The link /initrd.img is a dangling linkto /boot/initrd.img-3.13.0-147-generic
Hmm. vmlinuz is a directory, which I did not expect.  I am
trying to create a symbolic link with that name linked to 
/ . Since a directory exists here, my assumptions 
are way off, and I am aborting.
dpkg: error processing package linux-image-3.13.0-147-generic (--configure):
 subprocess installed post-installation script returned error exit status 2
dpkg: dependency problems prevent configuration of linux-image-generic:
 linux-image-generic depends on linux-image-3.13.0-147-generic; however:
  Package linux-image-3.13.0-147-generic is not configured yet.

关键部分似乎是vmlinuz is a directory, which I did not expect。果然,/vmlinuz/vmlinuz.old在本系统上是空目录,而在我使用的其他 Ubuntu 系统上,它们是指向 中的文件的符号链接/boot

基于https://ubuntuforums.org/showthread.php?t=2259423听起来我应该能够创建指向 中最新和次最新图像的预期符号链接/boot,因为 中没有任何内容/boot/grub/grub.cfg指向vmlinuzvmlinuz.old目录。另一方面,我还发现了类似http://www.linfo.org/vmlinuz.html这句话vmlinuz应该是通过复制编译后的图像来实现的。根据日期,我认为后者已经过时了。

这似乎阻止了 apt 完成新内核的安装,所以我真的很想解决这个问题,通过将/vmlinuz/vmlinuz.old目录替换为它们应该是的符号链接。但这是在一台关键的研究计算机上,因此意外破坏操作系统(因为有充分的理由认为这些应该是目录)肯定是一件坏事。有谁知道这些应该是目录而不是指向 下图像的符号链接的原因/boot,或者我不能手动修复它的原因?

编辑: 按照要求:

$ ls -la /vmlinuz* /initrd.img*
lrwxrwxrwx 1 root root   34 Jul 26 19:13 /initrd.img -> boot/initrd.img-3.13.0-147-generic
lrwxrwxrwx 1 root root   34 Jul 20 20:06 /initrd.img.old -> boot/initrd.img-3.13.0-147-generic

/vmlinuz:
total 8
drwxr-xr-x  2 root root 4096 Nov  5  2016 .
drwxr-xr-x 24 root root 4096 Jul 26 19:13 ..

/vmlinuz.old:
total 8
drwxr-xr-x  2 root root 4096 Nov  5  2016 .
drwxr-xr-x 24 root root 4096 Jul 26 19:13 ..

这两个initrd.img链接目前都处于悬空状态,但我怀疑这是因为dpkg被阻止配置虚拟机映像:

$ ls -la /boot/
total 70412
drwxr-xr-x  3 root root    16384 Jul  9 17:27 .
drwxr-xr-x 24 root root     4096 Jul 26 19:13 ..
-rw-r--r--  1 root root  1166518 Oct 18  2016 abi-3.13.0-100-generic
-rw-r--r--  1 root root  1168650 May  2 10:48 abi-3.13.0-147-generic
-rw-r--r--  1 root root  1164852 Mar 10  2015 abi-3.13.0-46-generic
-rw-r--r--  1 root root   165931 Oct 18  2016 config-3.13.0-100-generic
-rw-r--r--  1 root root   166136 May  2 10:48 config-3.13.0-147-generic
-rw-r--r--  1 root root   165748 Mar 10  2015 config-3.13.0-46-generic
drwxr-xr-x  5 root root     4096 Jul  9 17:27 grub
-rw-r--r--  1 root root 19901593 Feb  6 06:40 initrd.img-3.13.0-100-generic
-rw-r--r--  1 root root 19869425 Dec  6  2017 initrd.img-3.13.0-46-generic
-rw-r--r--  1 root root   176500 Mar 12  2014 memtest86+.bin
-rw-r--r--  1 root root   178176 Mar 12  2014 memtest86+.elf
-rw-r--r--  1 root root   178680 Mar 12  2014 memtest86+_multiboot.bin
-rw-r--r--  1 root root      691 May  2 10:48 retpoline-3.13.0-147-generic
-rw-------  1 root root  3395101 Oct 18  2016 System.map-3.13.0-100-generic
-rw-------  1 root root  3413068 May  2 10:48 System.map-3.13.0-147-generic
-rw-------  1 root root  3389458 Mar 10  2015 System.map-3.13.0-46-generic
-rw-------  1 root root  5836896 Oct 18  2016 vmlinuz-3.13.0-100-generic
-rw-------  1 root root  5887024 May  2 10:48 vmlinuz-3.13.0-147-generic
-rw-------  1 root root  5814592 Mar 10  2015 vmlinuz-3.13.0-46-generic

相关内容