开发者

Linux中根分区爆满原因排查与解决方案

目录
  • 一、排查
    • 排查 1:查看哪些目录占用空间最多
    • 排查 2: 深入分析/root目录
  • 二、解决
    • 解决 1:移动anaconda3目录释放空间
    • 解决 2:清理或移动.cache缓存目录
    • 解决 3:配置环境变量恢复 Conda

一、排查

有一台 Ubuntu 服务器是我装的系统,同事安装 cuda 的时候 /tmp 空间不足。使用 df -h 查看磁盘使用情况:

Linux中根分区爆满原因排查与解决方案

根分区已经100% 占满,导致无法正常安装软件。

排查 1:查看哪些目录占用空间最多

查看根目录下各个子目录的大小:

sudphpo du -h --max-depth=1 / | sort -hr

结果如android下:

Linux中根分区爆满原因排查与解决方案

/root 目录异常地占用了 21G 空间,继续排查 。

排查 2: 深入分析/root目录

查看 /root 子目录占用情况:

sudo du -h --max-depth=1 /root | sort -hr

结果如下:

Linux中根分区爆满原因排查与解决方案

发现了罪魁祸首:

  • Anaconda3 安装目录占用了 16G
  • .cache 缓存目录占用了 4.4G

二、解决

解决 1:移动anaco编程nda3目录释放空间

/home/www 分区空间很多,可以将 Anaconda 安装目录迁移到其中去,然后通过符号链接来兼容原路径。

执行命令:

sudo mv /root/anaconda3 /home/anaconda3
sudo lnphp -s /home/anaconda3 /root/anaconda3

迁移后用 df -h 验证根目录空间是否释放。

Linux中根分区爆满原因排查与解决方案

Linux中根分区爆满原因排查与解决方案

空间已经释放了。

解决 2:清理或移动.cache缓存目录

查看 .cache 目录下内容:

ll /root/.cache

Linux中根分区爆满原因排查与解决方案

发现包含:

  • 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

Linux中根分区爆满原因排查与解决方案

Linux中根分区爆满原因排查与解决方案

空间释放成功。

Conda 命令失效问题:

虽然保留了 /root/anaconda3 js的路径(通过软链接),但执行:

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中根分区爆满原因排查与解决方案的文章就介绍到这了,更多相关Linux根分区爆满解决内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新运维

运维排行榜