如何在系统日志中解决许多与mingetty相关的消息

我运行我的小公司的网站和几个服务,在一个VPS上(运行CentOS 6.8),我有充分的pipe理权限。

由于试图查明PHP脚本中的内存泄漏问题,我一直在监视VPS一段时间,我再一次查看了日志。 我所看到的是一串长长的日志消息,比如:

错误消息的屏幕截图

我想解决任何configuration问题导致这些错误“污染”系统日志,因为他们使日志无法使用。 每5秒钟,我会得到一批这样的:

Feb 17 12:43:03 vpsxxxxx init: tty (/dev/tty2) main process (1381) terminated with status 1 Feb 17 12:43:03 vpsxxxxx init: tty (/dev/tty2) main process ended, respawning Feb 17 12:43:03 vpsxxxxx init: tty (/dev/tty1) main process (1382) terminated with status 1 Feb 17 12:43:03 vpsxxxxx init: tty (/dev/tty1) main process ended, respawning Feb 17 12:43:03 vpsxxxxx /sbin/mingetty[1419]: tty2: no controlling tty: Operation not permitted Feb 17 12:43:03 vpsxxxxx /sbin/mingetty[1420]: tty1: no controlling tty: Operation not permitted 

在日志旋转(每周)的时候,我正在查看日志文件中超过60 MB的内容,这使得纳米化了。

我不知道Mingetty是如何正常运行的VPS(或通过SSH连接)。 我是唯一pipe理服务器的人,但是我很less使用两个以上的同步SSH连接。

有这个数量的有关mingetty日志消息的解决scheme吗?

由于您的机器是虚拟机,您可以完全禁用小型和虚拟控制台,如http://www.tldp.org/HOWTO/Remote-Serial-Console-HOWTO/getty-mingetty.html所述 :

如果机器没有显卡,则从/ etc / inittab中删除所有mingetty条目。

正如你使用CentOS 6,我想你有暴发户,没有inittab。 要禁用tty,你可以创build两个文件/etc/init.d/tty1.override和/etc/init.d/tty2.override,只包含单词'manual'(所有命令都以root身份传递):

 echo manual > /etc/init/tty1.override echo manual > /etc/init/tty2.override 

但是我build议你先做一些testing: stop tty1stop tty2 ,然后尝试打开一个新的ssh连接。 如果有效,继续禁用tty1和tty2。

@Hexdump通过我必须做的关于暴发户的解读让我得到了解决scheme。 非常感谢。

对我来说,解决scheme分两步进行:

  • nano /etc/init/start-ttys.override (下面的文件内容)
  • shutdown -r now

覆盖文件的内容是:

 env ACTIVE_CONSOLES=/dev/tty[1-1] script end script 

基本上,我正在用无操作脚本replace启动mingetty实例的有问题的脚本。

第一行是我尝试减lessttys数量的剩余部分,按照这个线程 ,这也揭示了ACTIVE_CONSOLES处理的方式有一个错误。 这个错误是为什么需要重新启动的原因。 我不确定这第一行是必要的。

问题解决了,但我相信根本原因还是要解决的,这让我留下一个酸酸的回味,可以这么说:如果我在一台实际的机器上有这个日志污染问题,我将不能够禁用脚本。 因此,我认为这是一个不完善的解决scheme,但现在对于目前的情况已经足够了。