Phi*_* Z. 49 syslog services docker 18.04
几分钟前,我的电脑崩溃了,因为显然我的硬盘驱动器已满。在恢复模式下启动后,我发现 /var/log 中的 syslog 文件有64GB大。我将文件的末尾保存在另一个分区上,然后将其删除。显然 docker 似乎是问题所在,因为我在文件末尾发现了很多这样的问题,并且有一个 docker 进程一直以 200% 的 CPU 运行。清除日志并杀死 docker 后,一切似乎都正常了。
Nov 15 01:44:08 Elemental docker.dockerd[1120]:
time="2019-11-15T01:44:08.727060251Z" level=error
msg="failed to get event" error="rpc error: code =
Unavailable desc = all SubConns are in TransientFailure, latest connection
error: connection error: desc = \"transport: Error
while dialing dial unix /run/containerd/containerd.sock:
connect: permission denied\"" module=libcontainerd namespace=plugins.moby
Nov 15 01:44:08 Elemental docker.dockerd[1120]: time="2019-11-15T01:44:08.727116701Z"
...
Run Code Online (Sandbox Code Playgroud)
等等。我希望这个问题不会再次出现,但我仍然想知道这里可能发生了什么。
小智 49
我同时通过 apt 和 snap 安装了 docker 包。因此,通过 snap 打包系统删除 docker 可以解决此问题。
# apt list --installed | grep docker
docker/bionic,now 1.5-1build1 amd64 [installed]
docker-ce/bionic,now 5:19.03.5~3-0~ubuntu-bionic amd64 [installed]
docker-ce-cli/bionic,now 5:19.03.5~3-0~ubuntu-bionic amd64 [installed,automatic]
# snap list | grep docker
docker 18.09.9 418 stable canonical? -
# snap remove docker
docker removed
Run Code Online (Sandbox Code Playgroud)
小智 16
几个小时前,Cannonical 的某个人搞砸了 - 它在启动板上被跟踪 - https://bugs.launchpad.net/ubuntu/+source/snapd/+bug/1852720
我的系统昨天只安装了 docker,和这里的其他人一样 - syslog 杀死了磁盘上的整个可用空间,从 snap 中清除 docker 有帮助。
小智 9
您有多个 docker 服务正在运行。看起来 dockerd 正在尝试访问 containerd 的不同安装,垃圾邮件系统日志。
就我而言,teamcity 代理和 docker 安装发生冲突。
sudo apt-get purge docker-ce
sudo apt autoremove
sudo rm -rf /var/lib/docker
sudo truncate -s 0 /var/log/syslog
Run Code Online (Sandbox Code Playgroud)
运行上面的这些命令并重新启动。一切顺利。
也发生在我身上。我想知道是否是一个快照更新让它发生了:
ID Status Spawn Ready Summary
17 Done today at 00:34 UTC today at 00:34 UTC Auto-refresh snap "docker"
Run Code Online (Sandbox Code Playgroud)
卸载 + 重新安装 Ubuntu 的 docker.io 包会带来这个问题,但由于某种原因,我也安装了一个 docker,所以这就是触发冲突的原因。
Name Version Rev Tracking Publisher Notes
core 16-2.42.1 8039 stable canonical? core
docker 18.09.9 418 stable canonical? -
Run Code Online (Sandbox Code Playgroud)
但是,我不记得我曾经安装过 docker snap 包……但这毕竟是一个测试系统,其他人可能认为这是一个好主意……
小智 5
我也遇到了这个问题,所以以防万一其他人在这里徘徊,我可以描述对我有用的解决方案。我首先尝试了 Chris Sung 的建议,但没有奏效。
症状是:
dockerb 以 200+% 的 CPU 运行,并且会不断地用 kill 命令重新启动
正如 Philip Z. 看到的那样,系统日志中填充了巨大的文件。当我今天早上进来时,它已经用 700GB 的文件填满了我的整个硬盘。
首先删除大文件,这样你就可以真正做一些事情。它将再次开始填满,但您应该有一些时间。
sudo truncate -s 0 /var/log/syslog
Run Code Online (Sandbox Code Playgroud)
然后删除 snap docker 安装。这对我来说是问题,而不是 docker-ce
sudo snap stop docker
sudo snap remove docker
Run Code Online (Sandbox Code Playgroud)
我不确定是否有必要,但我也继续并完全摆脱了 snap
sudo apt purge snap
Run Code Online (Sandbox Code Playgroud)
您不应再在顶部看到 dockerb。然后,您可以重新运行日志截断器以删除在执行上述命令时写入的任何垃圾。如果您像我一样搞砸并完全删除系统日志,请确保为新系统日志提供正确的权限。
sudo cd /var/log
sudo touch syslog
sudo chown syslog:adm syslog
sudo service rsyslog restart
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10947 次 |
| 最近记录: |