Docker load镜像报错:UserError processing tar file(exit status 1): ......no space left on device

当Docker在加载tar格式的镜像时,如果磁盘空间不足,会报错‘nospaceleftondevice’。解决方法包括停止Docker服务,移动Docker数据目录到有足够空间的位置,创建符号链接,然后重新启动服务和加载镜像。如果出现‘unexpectedEOF’错误,可能是镜像tar包在传输中损坏。
摘要由CSDN通过智能技术生成

原因:空间不足,镜像打包成tar以后会压缩,docker load -i xxx.tar时,若该路径磁盘空间不够则报错Error processing tar file(exit status 1): write /usr/local/cuda-10.2/targets/aarch64-linux/lib/libnvrtc.so.10.2.300: no space left on device。

解决方法:给docker换位置!

1. 停止Docker服务 

systemctl stop docker.socket 
systemctl stop docker.service
systemctl status docker #显示为"inactive",则表示已经停止Docker服务

2. 修改Docker位置

# 查看docker数据目录
docker info --format '{{.DockerRootDir}}'
# /var/lib/docker
# 具体移动位置根据需要修改
df -h /usr/local # 查看这个位置空间大小
mkdir docker # 创建文件夹
mv /var/lib/docker /usr/local/docker # 旧位置 --> 新位置

3. 创建一个符号链接

# 将旧位置链接到新目录
​​​​​​​ln -s /usr/local/docker /var/lib/docker

4. 启动Docker服务

systemctl start docker

5. 重新load镜像

docker load -i xxx.tar

注意⚠️:若load报错Error processing tar file(exit status 1): unexpected EOF,则极有可能是镜像tar包传输过程中损坏了。例如查看文件大小发现tar包为5G,传输后变成400M,若重新传输后tar包仍被损坏,则考虑可能是新目录磁盘空间不够。 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值