背景:django模型连接Ubuntu数据库,提示缺少组件,于是安装关系依赖包,安装期间各种问题不断。
安装MySQL开发依赖包:
sudo apt-get install libmysqlclient-dev gcc
结果:
提示未满足依赖关系,按照提示进行修复:
apt-get -f install #注意此命令需要root权限
然后又报错,如下:
按照提示查看 /boot 空间
使用命令:
df -h
查询结果:
*注:Linux 中 /boot 是存放系统启动文件的地方,安装 ubuntu 时单独分区的内存有限 ,但是系统内核更新后,老的内核依然保存在 /boot 分区内,几次升级后,就会导致/boot 空间不足。
到这里,解决的思路是删掉老版本的内核,将内存留空出来
首先查看系统中所有已安装的内核:
dpkg --get-selections | grep linux-image
后面显示 deinstall 的表示已经删除了的, install 表示没有删除的
查看系统当前使用的内核:
uname -a
碰到的问题:
为了省出空间只能删除旧的内核,删除旧的内核时系统报错,无法删除,需要修复一些依赖包,修复依赖包就需要下载 一些依赖包,而 /boot本来就没有空间了。。。(⊙o⊙) 这就造成了死循环。
解决办法就是 新建一个copy_boot文件夹,将/boot文件夹下比较大的文件mv过来,腾出足够的空间来修复依赖,等依赖修复好了就可以删除旧的系统内核,问题就会解决。
/boot空间足够之后修复依赖关系,删除旧的内核:
sudo apt-get remove linux-image-xxx # xxx 就是上面过期版本的版本号
还有没有删除干净的内容可以用以下命令来清除:
sudo apt-get autoremove
执行完毕之后,查看一下
OK,成功!