温馨提示×

ubuntu syslog怎样迁移

小樊
41
2026-10-19 16:53:46
栏目: 智能运维

在 Ubuntu 上迁移 syslog(通常是 rsyslog) 一般分为几种常见场景,下面按最常用方式给你说明,你可以按需选择。


一、迁移 syslog 日志文件存储位置(最常见)

1. 停止 rsyslog 服务

sudo systemctl stop rsyslog

2. 创建新的日志目录

例如迁移到 /data/log:

sudo mkdir -p /data/log
sudo chown syslog:adm /data/log
sudo chmod 755 /data/log

3. 修改 rsyslog 配置

编辑主配置文件:

sudo vim /etc/rsyslog.conf

修改或添加:

*.info;mail.none;authpriv.none;cron.none    /data/log/syslog

如果你用的是 rsyslog.d 分配置文件(推荐):

sudo vim /etc/rsyslog.d/50-default.conf

把里面的:

/var/log/syslog

改成:

/data/log/syslog

4. 迁移原有日志

sudo mv /var/log/syslog* /data/log/

5. 启动 rsyslog

sudo systemctl start rsyslog

6.(可选)更新 logrotate

编辑:

sudo vim /etc/logrotate.d/rsyslog

把 /var/log/syslog 改为 /data/log/syslog


二、把 syslog 迁移到远程日志服务器

1. 客户端配置(Ubuntu 发送日志)

sudo vim /etc/rsyslog.conf

添加:

*.* @@192.168.1.100:514

(@@ = TCP,@ = UDP)

重启:

sudo systemctl restart rsyslog

2. 服务端接收(另一台 Ubuntu)

sudo vim /etc/rsyslog.conf

启用:

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

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

重启:

sudo systemctl restart rsyslog

三、完全替换 syslog(如迁移到 journald / 其他系统)

Ubuntu 默认已使用 systemd-journald,rsyslog 只是转发。

查看 journal 日志:

journalctl

如想禁用 rsyslog:

sudo systemctl disable --now rsyslog

四、容器 / 云环境建议

  • Docker:挂载 /var/log
  • K8s:使用 fluentd / filebeat
  • 云服务器:建议送到 OSS / S3 / 日志服务

如果你能说明:

  • ✅ 是「换目录」还是「换机器」
  • ✅ Ubuntu 版本(20.04 / 22.04 / 24.04)
  • ✅ 用的是 rsyslog 还是 syslog-ng

我可以给你精确到文件的配置示例。

0 踩