我运行我的小公司的网站和几个服务,在一个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 tty1并stop 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,但现在对于目前的情况已经足够了。