You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Ubuntu 22.04运行R报错无法创建R_TempDir,根分区已满求空间清理方案

Ubuntu 22.04运行R报错无法创建R_TempDir,根分区已满求空间清理方案

嗨,看了你提供的磁盘使用数据,问题很明确——你的根分区(/dev/sda2)已经完全占满了,这就是R没法创建临时目录的原因。咱们一步步来清理空间,先从最占地方的部分下手:

1. 清理Snap包(最优先,占了14G)

Snap默认会保留多个版本的安装包,很容易悄悄占用大量空间。你可以用下面的命令自动清理所有已禁用的旧版本Snap包:

sudo snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do sudo snap remove "$snapname" --revision="$revision"; done

如果之后想避免Snap再次占用过多空间,可以编辑/etc/systemd/system/snapd.service.d/snapd.conf文件(如果没有就新建),添加一行SNAP_MAX_REVISIONS=2,这样每个Snap包只会保留2个版本(默认是3个)。

2. 清理APT缓存和旧内核

APT缓存的deb包、旧内核是/var目录占用大的常见原因:

  • 清理APT缓存:
sudo apt clean
sudo apt autoclean

apt clean会清空所有下载的deb包缓存,autoclean只删除那些已经不再能通过APT获取的旧包缓存。

  • 卸载旧内核:
    先确认当前正在使用的内核版本:
uname -r

然后列出所有已安装的内核:

dpkg --list | grep linux-image

把除了当前在用的、以及最新的1-2个内核之外的旧版本全部卸载(保留一两个备用以防万一),比如:

sudo apt remove --purge linux-image-5.15.0-60-generic

记得把命令里的版本号替换成你实际查到的旧内核版本。

3. 清理系统日志

/var/log下的日志文件有时候会膨胀得很大,用journalctl来清理系统日志很方便:

sudo journalctl --vacuum-size=500M

这个命令会压缩日志并只保留最近500M的内容,你也可以换成--vacuum-time=7d来只保留最近7天的日志。另外也可以手动检查/var/log里的大归档文件,确认没用后用sudo rm删除。

4. 清理临时文件

虽然你的/tmp目录本身不大,但根分区满了会导致它无法写入。手动清理临时文件:

sudo rm -rf /tmp/*
sudo rm -rf /var/tmp/*

这些都是系统生成的临时文件,重启后也会自动清除,放心删除就行。

5. 排查隐藏的大文件/目录

如果做完上面的步骤还不够,你可以用ncdu工具来交互式地扫描根目录的空间占用:

sudo apt install ncdu -y
sudo ncdu /

它会帮你直观地看到每个目录的大小,方便找到那些藏起来的大文件——比如/root目录里的备份、/opt里没用的软件包等等,找到后按需删除即可。

按照这些步骤操作后,应该能释放出足够的空间,解决根分区满的问题,R也就能正常创建临时目录了。

备注:内容来源于stack exchange,提问作者Max

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.23 11:15:29