温馨提示×

ubuntu syslog如何开启

小樊
38
2026-07-05 18:11:58
栏目: 智能运维

在 Ubuntu 中,syslog 通常由 rsyslog 服务实现。下面按常见场景说明如何开启 / 启用 / 配置 syslog


一、检查 rsyslog 是否已安装

dpkg -l | grep rsyslog

如果没有安装:

sudo apt update
sudo apt install rsyslog

二、启动并开启 syslog(rsyslog)

1️⃣ 启动 rsyslog 服务

sudo systemctl start rsyslog

2️⃣ 设置开机自启

sudo systemctl enable rsyslog

3️⃣ 查看运行状态

sudo systemctl status rsyslog

看到 active (running) 即表示 syslog 已开启。


三、确认 syslog 是否在接收日志

默认情况下,Ubuntu 的 syslog 日志位置:

日志类型 路径
系统日志 /var/log/syslog
认证日志 /var/log/auth.log

查看实时日志:

tail -f /var/log/syslog

四、确认 rsyslog 配置文件

主配置文件:

/etc/rsyslog.conf

模块与规则目录:

/etc/rsyslog.d/

确保以下模块未被注释(默认是开启的):

module(load="imuxsock") # 本地系统日志
module(load="imjournal") # systemd 日志

修改配置后重启:

sudo systemctl restart rsyslog

五、允许接收远程 syslog(可选)

如果需要接收 远程设备/服务器 的 syslog:

编辑配置:

sudo nano /etc/rsyslog.conf

取消注释:

module(load="imudp")
input(type="imudp" port="514")

module(load="imtcp")
input(type="imtcp" port="514")

重启:

sudo systemctl restart rsyslog

检查端口:

ss -lunp | grep 514
ss -ltnp | grep 514

六、Ubuntu 20.04+ 与 journald 的关系

Ubuntu 现在默认使用 systemd-journald,rsyslog 会从 journald 读取日志。

查看 systemd 日志:

journalctl -f

如果你只想用 journald,不一定要启用 rsyslog。


七、常见问题排查

syslog 没有日志?

sudo systemctl status rsyslog
ls -l /var/log/syslog

权限问题

sudo chmod 640 /var/log/syslog
sudo chown syslog:adm /var/log/syslog

八、总结(快速命令)

sudo apt install rsyslog
sudo systemctl enable rsyslog
sudo systemctl start rsyslog
tail -f /var/log/syslog

如果你是想:

  • 开启远程 syslog
  • Docker / Kubernetes 日志
  • 防火墙 / 交换机发送 syslog
  • Ubuntu 老版本(14.04 / 16.04)

可以直接告诉我你的具体场景,我可以给你更精确的配置。

0