在我们的 rhel 机器(生产服务器)上,我们注意到 Lastlog 很大
我们不想中断总是写入日志的操作系统日志,但我们想清除最后的日志
可以清除最后的日志吗
echo > /var/log/lastlog
第二
如何永久禁用对 Lastlog 的写入?
答案1
Lastlog 没有正确报告其大小,ls
并且通常根本不是很大。如果您要检查其大小,请确保运行ls -s
或使用du
.
我相信lastlog就是所谓的稀疏文件。ls
没有该-s
标志则报告文件的表观大小而不是实际大小。
您很可能根本不需要清除 Lastlog 或关心它被写入了多少。
答案2
在 RHEL 7 上覆盖 Lastlog 不会清除它,但会在重新启动时替换该信息。
我不在乎报告的大小很奇怪,我只想真正清除它并在克隆虚拟机映像以创建新系统后重新开始。
所以我尝试使用输出重定向“>”在重新启动之前覆盖它。然后我尝试重命名它并重新启动,但它再次使用所有历史记录创建它。
答案3
最简单的方法:
~] cat /dev/null > /var/log/lastlog
答案4
这是对 Natolio 答案的补充。
可以为单个用户重置最新日志:
sudo lastlog --clear --user username
根据联机帮助页,用户名也可以是用户范围:
用户可以通过登录名、数字用户 ID 或用户范围来指定。可以使用最小值和最大值 (UID_MIN-UID_MAX)、最大值 (-UID_MAX) 或最小值 (UID_MIN-) 来指定此用户范围。
以下命令应清除所有普通用户的最新日志:
sudo lastlog --clear --user 1000-