docker pull报错failed to register layer: Error processing tar file(exit status 1): open permission de...

近来在一个云主机上操作docker pull,报错如下:

failed to register layer: Error processing tar file(exit status 1): open /etc/init.d/hwclock.sh: permission denied

或者:

failed to register layer: Error processing tar file(exit status 1): open /etc/init.d/.legacy-bootordering: permission denied

当前用户就是root,怎么会没有权限呢?

查看服务器版本:

# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

而我所尝试的操作:

rm -rf /var/lib/docker/network/files/* && service docker restart  #【无效】
reboot # 【无效】
sed -i '/SELINUX/s/enforcing/disabled/' /etc/selinux/config && reboot #【无效,且selinux本身就关了】
docker system prune -a #【无效,且这命令慎用】

折腾了好久都不知道为何,外网上也搜不到相应的问题,有的是说被杀毒软件给占用了文件,但我这云主机上没有杀软。

最后尝试yum update更新,看到一条报错

cp: cannot create regular file '/etc/grub.d/00_tuned': Permission denied

这个我就犯迷糊了,怎么连这里的文件都没权限,我进入其目录,发现可以cp,可以mv,但是不能删除、不能覆盖。用lsattr命令也没查看到什么。

而在我reboot后,再连接进去的前一段时间,我可以删除文件,而稍等一会就不可以删除文件了。

这种感觉,就是背后有进程在限制我的权限。然后想起这个云主机是腾讯云,首先就锁定了该服务器上安装的云锁。

 

暂时的解决方法如下:

(别怪我狠心删除云锁,谁让特么的连docker pull都限制)

cp /etc/rc.local{,.bak}
echo '#!/bin/bash' >/etc/rc.local
rm -rf /usr/local/qcloud
rm -rf /usr/local/yunsuo_agent
chattr +i /usr/local/qcloud
chattr +i /usr/local/yunsuo_agent

把上述命令保存到一个sh文件,并chmod +x,然后reboot后迅速连接进去执行该文件即可。

 

转载于:https://www.cnblogs.com/pcat/p/10643863.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值