Linux中根分区爆满原因排查与解决方案
作者:颇有几分姿色
这篇文章主要为大家详细介绍了Linux中根分区爆满原因排查与解决方案,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
一、排查
有一台 Ubuntu 服务器是我装的系统,同事安装 cuda 的时候 /tmp 空间不足。使用 df -h 查看磁盘使用情况:

根分区已经100% 占满,导致无法正常安装软件。
排查 1:查看哪些目录占用空间最多
查看根目录下各个子目录的大小:
sudo du -h --max-depth=1 / | sort -hr
结果如下:

/root 目录异常地占用了 21G 空间,继续排查 。
排查 2: 深入分析/root目录
查看 /root 子目录占用情况:
sudo du -h --max-depth=1 /root | sort -hr
结果如下:

发现了罪魁祸首:
Anaconda3安装目录占用了 16G.cache缓存目录占用了 4.4G
二、解决
解决 1:移动anaconda3目录释放空间
/home和/www 分区空间很多,可以将 Anaconda 安装目录迁移到其中去,然后通过符号链接来兼容原路径。
执行命令:
sudo mv /root/anaconda3 /home/anaconda3 sudo ln -s /home/anaconda3 /root/anaconda3
迁移后用 df -h 验证根目录空间是否释放。


空间已经释放了。
解决 2:清理或移动.cache缓存目录
查看 .cache 目录下内容:
ll /root/.cache

发现包含:
pip/conda/paddle/
这些都是常见的缓存目录,大多数可以直接删除:
sudo rm -rf /root/.cache/pip sudo rm -rf /root/.cache/conda sudo rm -rf /root/.cache/paddle
或者,将整个 .cache 移动到 /home 并软链接:
sudo mv /root/.cache /home/root_cache sudo ln -s /home/root_cache /root/.cache


空间释放成功。
Conda 命令失效问题:
虽然保留了 /root/anaconda3 的路径(通过软链接),但执行:
conda --version
提示:
conda: command not found
原因:
符号链接本身不会自动让系统知道 conda 的路径,必须配置环境变量。如果你本来就已配置了环境变量,那就没影响。
解决 3:配置环境变量恢复 Conda
执行命令:
# 系统级 sudo vim /etc/profile # 用户级 sudo vim ~/.bashrc
添加:
export PATH="/root/anaconda3/bin:$PATH"
保存后执行:
# 系统级 source/etc/profile # 用户级 source ~/.bashrc
验证是否恢复,如果打开了多个该服务器的客户端,要么执行上面命令,要么重新连接一下:

大功告成。
到此这篇关于Linux中根分区爆满原因排查与解决方案的文章就介绍到这了,更多相关Linux根分区爆满解决内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
