故障发生原因

测试环境,之前用该机器做过docker-compose,后来有需要用到该机器上的docker环境,需要将旧的docker容器全部删除,由于之前启动是使用docker-compose启动的,正常手段也应该使用该工具关掉容器。但是我用的是docker rm --force 命令,可能不知道系统哪根筋不对了吧

下面是现象

[root@localhost ~]# ls -bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间
-bash: 无法为立即文档创建临时文件: 设备上没有空间

tab补全功能不能使用,而且严重影响了系统运行,后台一直在吃资源

[root@localhost tmp]# df -Th
文件系统                类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root xfs        17G   17G   20K  100% /

   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND                                                                       
  2077 root      20   0  634100  12116   1848 S   0.7  1.2  10:36.46 containerd  

就是该进程,我pkill干掉docker服务,该进程还在

最后解决办法:

[root@localhost tmp]# ps aux | grep containerd
root       2077  0.7  1.2 634100 12116 ?        Ssl  6月24  10:37 /usr/bin/containerd
root      83649  0.0  5.2 536180 51924 ?        Ssl  21:35   0:00 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
root      84095  0.0  0.0 112720   988 pts/1    S+   21:56   0:00 grep --color=auto containerd
[root@localhost tmp]# pkill -9 containerd
[root@localhost tmp]# ps aux | grep containerd
root      84110  0.0  0.0 112720   988 pts/1    S+   21:56   0:00 grep --color=auto containerd
[root@localhost tmp]# df -Th
文件系统                类型      容量  已用  可用 已用% 挂载点
/dev/mapper/centos-root xfs        17G   17G   20K  100% /

top 命令已经看不到该进程的存在了,但是磁盘还是满的

#网上查了一下,意思就是生成了许多临时文件在/tmp目录下

#由于是测试环境,我直接将整个目录清空了

[root@localhost tmp]# rm -rf /tmp/*
[root@localhost tmp]# ls .
./          ../         .font-unix/ .ICE-unix/  .Test-unix/ .X11-unix/  .XIM-unix/ 

#补全功能也可以正常使用了

总结

  • 基础知识相对不够牢固,比如对docker-compose工具的使用,以及系统和服务进行配合运行时