记一次删除/boot目录,手动修复的经历
2018-11-29 本文已影响15人
dshowing
2018/09/19 服务器机房
故事是这样的:我的同事发现特恶心的一件事,就是原负责人把服务器的/boot分区给定了500M的空间,我会想这不小啊,然而经历了从16年至今的多次内核升级后,并没有卸载旧内核---GG。
导致很多编译安装无法进行,那就删除吧---他删除了最近正在使用的内核版本---GG
Trouble Shooting
先确定问题再得瑟,首先9成是因为boot文件被删除导致的,然而好久没接触这个怀疑会不会是因为空间太满的原因。
U盘重启进入ubuntu live,fdisk -l
查看分区信息
root@ubuntu-wsn:~# fdisk -l
Disk /dev/sda: 5.5 TiB, 5995505909760 bytes, 11709972480 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 9FE55D29-48D0-4168-9ED6-A8DE5FAB4B9C
Device Start End Sectors Size Type
/dev/sda1 2048 4095 2048 1M BIOS boot
/dev/sda2 4096 1003519 999424 488M Linux filesystem
/dev/sda3 1003520 11709970431 11708966912 5.5T Linux LVM
挂载Linux filesystem这一项到/mnt
,查看(这是删除后的结果,所以文件并不多)
127版本的文件缺失,手欠无疑了
root@ubuntu-wsn:~# cd /boot/
root@ubuntu-wsn:/boot# ls
abi-4.4.0-116-generic config-4.4.0-116-generic grub retpoline-4.4.0-116-generic System.map-4.4.0-116-generic vmlinuz-4.4.0-119-generic
abi-4.4.0-119-generic config-4.4.0-119-generic initrd.img-4.4.0-116-generic retpoline-4.4.0-119-generic System.map-4.4.0-119-generic vmlinuz-4.4.0-121-generic
abi-4.4.0-121-generic config-4.4.0-121-generic initrd.img-4.4.0-119-generic retpoline-4.4.0-121-generic System.map-4.4.0-121-generic vmlinuz-4.4.0-124-generic
abi-4.4.0-124-generic config-4.4.0-124-generic initrd.img-4.4.0-121-generic retpoline-4.4.0-124-generic System.map-4.4.0-124-generic vmlinuz-4.4.0-127-generic
abi-4.4.0-127-generic config-4.4.0-127-generic lost+found retpoline-4.4.0-127-generic System.map-4.4.0-127-generic
bin dev proc sys vmlinuz-4.4.0-116-generic
root@ubuntu-wsn:/boot#
解决
既然如此,文件没有多删除就好办了,重启按Shift
进入Ubuntu高级选项,选择一个存在的内核版本即可,比如116
其他情况
如果手欠全部删除了怎么办?
也不麻烦,
- 先确定机器系统版本,如Ubuntu16.04
- 找一个ubuntu16的虚机,拷贝/boot一份
- ubuntu live进入,修复