【问题解决】Linux内核编译安装后磁盘空间已满问题

2023-12-02 19:44

本文主要是介绍【问题解决】Linux内核编译安装后磁盘空间已满问题,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Linux内核编译安装后磁盘空间已满问题解决过程

【注】本文为个人遇到Linux内核经过make,make modules……乃至最后install以后VMware磁盘空间爆炸的情况后,而又不想重装虚拟机,自己找资料实现解决的,文章中很多链接是来自别的博主的(感谢这些大佬写出的高质量文章,没有他们我自己也不一定能解决这问题),如有侵权,请联系我删除。
本人运行环境:VMware + vscode + Linux Ubuntu18.04
【温馨提醒】当这一切解决以后各位朋友不要吝惜VMware的快照功能,真的很有用!之后如果不是因为存储空间不够,直接恢复到编译内核前的快照就行了!(为什么这么说?因为我差点忘了!)

文章目录

  • Linux内核编译安装后磁盘空间已满问题解决过程
    • 1、虚拟机扩容(我看的是这个链接)
    • 2、磁盘已满无法开机(no space left……)
    • 3、扩容后续(我自己未用到,我点开的是上面第1条里的链接)
    • 4、vmware磁盘当前空间依旧显示不变?点开这个链接看看吧!
    • 5、重启后如果出现找不到OS的情况怎么办
    • 5、关于VMware快照(强推!)

1、虚拟机扩容(我看的是这个链接)

这里不得不删除所有快照,因为不然vmware上无法扩展,细节请点击下面的链接。

虚拟机扩容

2、磁盘已满无法开机(no space left……)

下面内容可实现删除一堆东西的功能。

请先点开链接

磁盘已满无法开机问题

下面的代码是我自己在ubuntu里打开火狐方便我自己复制代码的,因为Try Ubuntu中vm-tools用不了(我自己安装了以后重启还是没用),具体的内容执行步骤还是要点进文章链接看看哦。

sudo -s
fdisk -l 
mount /dev/sda1 /mnt
mount --bind /proc /mnt/proc
mount --bind /dev /mnt/dev
mount --bind /sys /mnt/sys
chroot /mnt

回到根目录:注意,我用的内核源码是linux-5.10.202版本,下面的代码请根据各位看官自己内核版本修改~

sudo rm -rf /lib/modules/5.10.202
sudo rm -rf /usr/src/linux-headers-5.10.202
sudo rm -rf /boot/*5.10.202*
sudo rm -rf /var/lib/dpkg/info/linux-headers-5.10.202*
sudo rm -rf /usr/src
umount /mnt

遇到mnt busy问题后的解决:
在这里插入图片描述

查看 /mnt/ 的进程状态。比如可以看到 PID 1340 进程正在运行。

fuser -mv /mnt/

杀掉访问文件的进程。

fuser -kv /mnt/

再用 fuser -mv /mnt/ 查看 /mnt/ 。PID 1340 进程已经被杀掉。

fuser -mv /mnt/

最后如果实在不行,暴力解决:

umount -l /mnt

3、扩容后续(我自己未用到,我点开的是上面第1条里的链接)

https://blog.csdn.net/m0_61549260/article/details/129751313

4、vmware磁盘当前空间依旧显示不变?点开这个链接看看吧!

记得先用sudo su切换为root模式
虚拟机删除文件后,磁盘文件所占物理空间没有变小的解决方式 - 知乎 (zhihu.com)【我用的是知乎文中的方法二,亲测有效】

5、重启后如果出现找不到OS的情况怎么办

在这里插入图片描述
选择自己Linux原来的内核版本(因为新版本在上面操作中已经被卸载了),我自己没有选择recovery mode,然后回车即可。我遇到的情况是我的linux5.10.202文件夹还在,这个文件夹大小有目共睹
在这里插入图片描述
OK!删了,反正后面装回来很快……当然像make mrproper之类的指令也可以用用,据说也有效果。

5、关于VMware快照(强推!)

VMware快照相关

这篇关于【问题解决】Linux内核编译安装后磁盘空间已满问题的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/446569

相关文章

gitlab安装及邮箱配置和常用使用方式

《gitlab安装及邮箱配置和常用使用方式》:本文主要介绍gitlab安装及邮箱配置和常用使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装GitLab2.配置GitLab邮件服务3.GitLab的账号注册邮箱验证及其分组4.gitlab分支和标签的

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4

qt5cored.dll报错怎么解决? 电脑qt5cored.dll文件丢失修复技巧

《qt5cored.dll报错怎么解决?电脑qt5cored.dll文件丢失修复技巧》在进行软件安装或运行程序时,有时会遇到由于找不到qt5core.dll,无法继续执行代码,这个问题可能是由于该文... 遇到qt5cored.dll文件错误时,可能会导致基于 Qt 开发的应用程序无法正常运行或启动。这种错

Python UV安装、升级、卸载详细步骤记录

《PythonUV安装、升级、卸载详细步骤记录》:本文主要介绍PythonUV安装、升级、卸载的详细步骤,uv是Astral推出的下一代Python包与项目管理器,主打单一可执行文件、极致性能... 目录安装检查升级设置自动补全卸载UV 命令总结 官方文档详见:https://docs.astral.sh/

Linux脚本(shell)的使用方式

《Linux脚本(shell)的使用方式》:本文主要介绍Linux脚本(shell)的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录概述语法详解数学运算表达式Shell变量变量分类环境变量Shell内部变量自定义变量:定义、赋值自定义变量:引用、修改、删

SpringBoot排查和解决JSON解析错误(400 Bad Request)的方法

《SpringBoot排查和解决JSON解析错误(400BadRequest)的方法》在开发SpringBootRESTfulAPI时,客户端与服务端的数据交互通常使用JSON格式,然而,JSON... 目录问题背景1. 问题描述2. 错误分析解决方案1. 手动重新输入jsON2. 使用工具清理JSON3.

Nexus安装和启动的实现教程

《Nexus安装和启动的实现教程》:本文主要介绍Nexus安装和启动的实现教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Nexus下载二、Nexus安装和启动三、关闭Nexus总结一、Nexus下载官方下载链接:DownloadWindows系统根

MySQL 设置AUTO_INCREMENT 无效的问题解决

《MySQL设置AUTO_INCREMENT无效的问题解决》本文主要介绍了MySQL设置AUTO_INCREMENT无效的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参... 目录快速设置mysql的auto_increment参数一、修改 AUTO_INCREMENT 的值。

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig