我最近注意到我的/
目录中出现了四个新文件:
lrwxrwxrwx 1 root root 33 Apr 9 14:07 initrd.img -> boot/initrd.img-3.16.0-34-generic
lrwxrwxrwx 1 root root 33 Mar 23 19:42 initrd.img.old -> boot/initrd.img-3.16.0-33-generic
lrwxrwxrwx 1 root root 30 Apr 9 14:07 vmlinuz -> boot/vmlinuz-3.16.0-34-generic
lrwxrwxrwx 1 root root 30 Mar 23 19:42 vmlinuz.old -> boot/vmlinuz-3.16.0-33-generic
由于我之前没有在那里见过它们,所以我想知道它们是什么以及它们为什么现在在那里。所以我想知道是否有人可以向我解释一下?
操作系统信息:
Description: Ubuntu 14.10
Release: 14.10
答案1
是的,确实如此符号链接和,正如穆鲁所说,很可能它们一直都在那里,只是你没有注意到而已。
这个答案Ubuntu 论坛很好地解释了为什么它们在那里:
让我们看一下 /boot/grub/grub.cfg 中的 grub 配置条目:
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menu entry_id_option 'gnulinux-simple-blahblahblah' { [...] linux /boot/vmlinuz-3.16.0-28-generic.efi.signed root=UUID=blahblahblah ro quiet splash $vt_handoff initrd /boot/initrd.img-3.16.0-28-generic }
如果您总是从此 grub.cfg 启动,则不需要这些符号链接。如果您手动将 grub 指向启动,则“vmlinuz”比“/boot/vmlinuz-3.16.0-28-generic”更容易记住和输入。符号链接是较简单的启动时代的遗留物,但有时仍然非常方便。您可以根据需要删除符号链接,但它们将在 grub 下次更新其 grub.cfg 文件时重新创建。
每当您安装新内核时,很多东西都会自动更新,包括您的 initrd.img 和 grub.cfg……以及那些符号链接。
答案2
它们是指向 /boot 挂载点中的文件的软链接
1 root root 33 4月 9 14:07 initrd.img -> boot/initrd.img-3.16.0-34-generic
initrd 代表初始 RAM 磁盘。initrd 被内核用作临时根文件系统,直到内核启动并挂载真正的根文件系统。它还包含在内部编译的必要驱动程序,可帮助它访问硬盘分区和其他硬件。
lrwxrwxrwx 1 root root 33 3 月 23 日 19:42 initrd.img.old -> boot/initrd.img-3.16.0-33-generic
这是更新前的旧版本
lrwxrwxrwx 1 root root 30 四月 9 14:07 vmlinuz -> boot/vmlinuz-3.16.0-34-generic
这是当前内核,您可以使用“uname -r”命令检查
lrwxrwxrwx 1 root root 30 三月 23 19:42 vmlinuz.old -> boot/vmlinuz-3.16.0-33-generic
这是更新到当前版本之前的旧版本内核