我正在尝试更新我的内核,尝试后,它部分安装完毕。现在,当我重新启动时,一切都无法正常工作。
我查看了以前的问题,并发布了自己的问题,但尚未收到答复。
基本上我需要卸载旧内核来为“sudo apt-get install -f”腾出空间。但我所做的一切都没有任何作用。
我需要以某种方式释放空间。我尝试了 gparted,但它不允许我进行必要的更改。我该如何删除旧的内核映像。
答案1
请仔细阅读以下内容,除非您理解说明以及未能成功执行此操作的影响,否则请不要继续。
您可以使用 来确定当前加载的内核和版本uname -a
。
您的计算机在 下有可帮助您启动的文件/boot/
。加载这些文件后,它将需要 中的文件/lib/modules/<kernel.version>/
。
假设您决定只使用 3.14 内核。假设您有一个想要删除的 3.12 版本。
- 从中删除文件
/boot/
ls /boot/ | grep 3.12
- 验证列出的文件
rm -rf /boot/*3.12*
- 删除相关的内核模块
ls /lib/modules/ | grep 3.12
- 验证列出的文件
rm -rf /lib/modules/*3.12*
您可以使用df -h
之前和之后来查看每个已安装分区上的可用空间。
答案2
要查看已加载的内核,请输入:
uname -r
要查看您已安装的内核版本,请输入:
dpkg -l | grep linux-image-
要删除它们:
sudo apt-get --purge autoremove linux-image--generic
https://help.ubuntu.com/community/Lubuntu/Documentation/RemoveOldKernels
答案3
测试一下:
打开终端,
按Ctrl++AltT
运行:
$ sudo -i
# OLDCONF=$(dpkg -l|grep "^rc"|awk '{print $2}')
# CURKERNEL=$(uname -r|sed 's/-*[a-z]//g'|sed 's/-386//g')
# LINUXPKG="linux-(image|headers|ubuntu-modules|restricted-modules)"
# METALINUXPKG="linux-(image|headers|restricted-modules)-(generic|i386|server|common|rt|xen)"
# OLDKERNELS=$(dpkg -l|awk '{print $2}'|grep -E $LINUXPKG |grep -vE $METALINUXPKG|grep -v $CURKERNEL)
# apt-get remove --purge $OLDCONF
# apt-get remove --purge $OLDKERNELS
# apt-get autoremove
# apt-get clean
笔记: $ = 用户提示符。# = 根提示符。