Ubuntu Server最小化安装后未预装rsyslog的原因及相关日志去向疑问
Ubuntu Server最小化安装后未预装rsyslog的原因及相关日志去向疑问
首先给你理清两个核心问题:为啥最小化安装不带rsyslog,以及没它的时候日志去哪了。
为啥最小化安装默认不装rsyslog?
Ubuntu Server的最小化安装逻辑就是只保留系统运行的核心刚需组件,把所有非必要的服务、工具都砍掉——目的是缩小系统体积、降低资源占用,同时减少潜在的安全攻击面。rsyslog虽然是大家熟悉的传统日志收集服务,但它并不是系统运行的“必需品”:现在Ubuntu默认用systemd-journald(systemd自带的日志系统)来处理基础日志记录,足够支撑轻量场景的需求了。
没装rsyslog时,原本的auth日志去哪了?
那些本该写到/var/log/auth.log的日志,其实都存在systemd的journal日志仓库里了。你可以用journalctl命令来查看它们:
- 比如要查SSH登录相关的认证日志,直接跑:
journalctl -u sshd.service - 要是想筛选所有认证类的日志,用日志设施代码过滤:
journalctl SYSLOG_FACILITY=10(auth对应的设施码就是10)
为啥装了rsyslog就出现了/var/log/auth.log?
rsyslog安装后会读取默认配置,其中就包含了把认证类日志(对应auth设施)输出到/var/log/auth.log的规则。它会从systemd-journald或者直接从系统收集日志,然后按照配置写入对应的文件,所以安装完成后这个日志文件就自动生成并开始接收日志了。
最后补充一句:如果你习惯传统的日志文件管理方式,rsyslog确实很实用;但如果想轻量化运维,直接用journalctl也完全够用——它支持按服务、时间、日志优先级等多种维度过滤,功能其实相当强大。
备注:内容来源于stack exchange,提问作者Michael




