在 Debian 9 上

在 Debian 9 上

几天前,我发现我的 Ubuntu 机器登录后无法加载。在 liveCD 上搜索一番后,我发现我的硬盘容量已达到 100%,因此我删除了一些大文件,然后就可以登录了。我不再具有 sudo 权限,因此必须启动到恢复模式并更改 sodoers 文件,但最终恢复了 root 权限。

然后我注意到我的机器有点慢,并且top显示 cupsd 使用 100% 的 CPU。我以前从未见过这个程序,但我很快意识到这是一个合法的程序。

我删除了大约 40GB 的视频,结果却发现我的硬盘空间几乎瞬间耗尽。经过一番研究和直觉,我意识到可能是日志文件被炸毁了,果然向ls -lh /var/log/cups/我展示了一个 80GB 以上的 error_log 文件。

我删除了文件sudo rm -rf /var/log/cups/error_log,用 终止了服务sudo service cups end,然后继续做我的事情。之后我意识到在删除 error_log 之前检查一下它的内容是个好主意,但我想在再次被锁定之前摆脱它。

那是昨天的事了。今天,我再次启动笔记本电脑,发现 cupsd 再次以 100% 的 CPU 运行,果然看到我的磁盘空间正在耗尽。我停止了服务并运行tail -f /var/log/cups/error_log,结果有数百万行这样的代码:

W [15/Jul/2015:11:23:03 -0700] Notifier for subscription 911 (dbus://) went away, retrying!
E [15/Jul/2015:11:23:03 -0700] File "/usr/lib/cups/notifier/dbus" has insecure permissions (0100777/uid=0/gid=0).

==编辑========================================================================

ls -l /usr/lib/cups/notifier/dbus如评论中所述,按-rwxrwxrwx 1 root root应有的方式显示权限和所有权。也没有解决所有权问题。-rwxr-xr-x 1 daemon rootsudo chown root:root /usr/lib/cups/notifier/dbus

最后我取下并重新安装了杯子,但无济于事。这些链接是作为可能有用的指南提供的,(意外地 chmod -R on /恢复 chown 权限),但最终却建议重新安装操作系统本身。

答案1

对于 Ubuntu 15.10 来说,对我有用的是:

sudo service cups stop
sudo rm /etc/cups/subscriptions.conf*
sudo rm -r /var/cache/cups
sudo service cups start

(如果你无法停止杯子,请尝试):

ps aux | grep cups

从输出中获取进程 ID (pid) 并:

kill -9 (pid you have learned here)

答案2

在 Debian 9 上

  1. 用户@机器: sudo su

  2. 根@机器:

chown -R root:root /usr/lib/cups/* && \
chmod -R 755 /usr/lib/cups/* && \
/etc/init.d/cups restart

返回:

ok 通过 systemctl cups.service 重新启动 cups

并保存我的日志和我的 CPU

答案3

我无法发表评论,因此以答案的形式提供如下内容:

sudo chown root:root /usr/lib/cups/notifier/dbus

可能会有所帮助,现在您拥有了权限。您的系统上的用户 1 是谁?如果您不知道文件的权限/所有权是如何从默认状态更改的,那么问题可能只是冰山一角。如果是这样,建议重新安装。

答案4

简单做一下,对我有用:

1)sudo chmod 755 /usr/lib/cups/notifier/

2)ll /usr/lib/cups/notifier/

3)sudo /etc/init.d/cups restart

完成了 !!!

相关内容