这是一个简单的问题,但我第一次不得不真正解决它:找到哪些特定文件/inode 是大多数 I/O 的目标。我希望能够获得一般系统概述,但如果我必须提供 PID 或 TID,我可以接受。
我想不用strace
对弹出的程序做任何操作iotop
。最好使用与iotop
按文件逐项列出的工具相同的工具。我可以lsof
用来查看邮递员打开了哪些文件,但它不指示哪个文件正在接收 I/O 或接收了多少。
我在其他地方看到有人建议使用它,auditd
但我不想这样做,因为它会将信息放入我们的审计文件中,我们将其用于其他目的,这似乎是我应该能够研究的问题通过这种方式。
我现在遇到的具体问题是 LVM 快照填充太快。我已经解决了这个问题,但希望能够以这种方式修复它,而不是仅仅ls
对所有打开的文件描述符进行分析/proc/<pid>/fd
以查看哪个增长最快。
我们生产服务器上的一个特定文件在明显随机的时间被修改,这似乎与任何日志活动无关。我们无法弄清楚是什么程序在做的,有很多嫌疑。我怎样才能找到罪魁祸首?
它始终是相同的文件,位于相同的路径,但位于不同的服务器和不同的时间。这些框由puppet管理,但在修改文件时,puppet 日志显示没有活动。
什么内核钩子、工具或技术可以帮助我们找到正在修改这个文件的进程?
lsof 不适合这个,因为文件被打开、修改和关闭的速度非常快。任何依赖轮询(例如经常运行 lsof)的解决方案都不好。
如何更改sshd
CentOS 上的日志文件位置?sshd
记录到/var/log/messages
而不是/var/log/secure
. 如何更改设置以便sshd
停止向 发送日志/var/log/messages
?