GNU Parallel创建临时文件失败求助:设备无剩余空间排查
解决思路与方案
针对GNU Parallel报No space left on device但常规磁盘/inode排查正常的情况,按以下步骤排查:
检查/tmp是否为tmpfs内存文件系统
Ubuntu默认可能将/tmp挂载为tmpfs(用内存模拟磁盘),此时df -h显示的是内存/swap的剩余空间,而非物理磁盘。用以下命令确认:df -T /tmp如果输出类型是
tmpfs,可以临时扩容:sudo mount -o remount,size=10G /tmp若要永久修改,编辑
/etc/fstab中tmpfs的挂载项,调整size参数后重启。指定Parallel使用其他目录存储临时文件
直接通过环境变量TMPDIR让Parallel将临时文件放到有充足空间的目录(比如个人home目录下的临时文件夹):TMPDIR=~/my_temp_dir parallel [你的原有并行命令]注意先确保
~/my_temp_dir存在且有写入权限。清理/tmp中残留的Parallel临时文件
之前异常退出的Parallel可能留下大量par*.arg临时文件,手动清理试试:rm -f /tmp/par*.arg降低Parallel的并行进程数
过高的并行数会同时创建大量临时文件,可能触发tmpfs的瞬时空间耗尽。尝试减少并行数,比如限制为4进程:parallel -j 4 [你的原有并行命令]检查用户磁盘配额
若服务器开启了用户磁盘配额,即使全局磁盘有空间,你的用户配额可能已耗尽。用以下命令查看:quota -u $(whoami)如果配额不足,联系管理员调整。
内容的提问来源于stack exchange,提问作者Yama
相关产品推荐
相关产品推荐

