Ubuntu系统日志如何配置 /var/log/messages

发布时间:2021-11-15 17:21:24 作者:小新
来源:亿速云 阅读:684
# Ubuntu系统日志如何配置 /var/log/messages

## 前言

在Linux系统中,日志文件是系统管理员和开发人员排查问题的重要工具。Ubuntu默认使用`rsyslog`和`journald`(systemd的一部分)来管理系统日志。传统的`/var/log/messages`文件在Ubuntu中默认并未启用,本文将详细介绍如何配置Ubuntu系统以生成该日志文件。

---

## 一、理解Ubuntu的日志系统

### 1.1 默认日志机制
Ubuntu主要采用以下两种日志服务:
- **rsyslog**:传统的syslog守护进程增强版
- **journald**:systemd自带的日志系统(二进制存储,使用`journalctl`查看)

### 1.2 为什么需要/messages文件
许多从其他Linux发行版迁移的用户习惯使用`/var/log/messages`作为综合日志文件,包含内核、系统服务等重要信息。

---

## 二、配置rsyslog生成messages文件

### 2.1 安装rsyslog(如未安装)
```bash
sudo apt update
sudo apt install rsyslog

2.2 修改主配置文件

编辑/etc/rsyslog.conf

sudo nano /etc/rsyslog.conf

找到或添加以下规则(通常在文件末尾):

*.info;mail.none;authpriv.none;cron.none;local0.none;local1.none    /var/log/messages

2.3 解释配置规则

2.4 创建日志文件并设置权限

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

2.5 重启rsyslog服务

sudo systemctl restart rsyslog

三、验证配置

3.1 检查日志文件

sudo tail -f /var/log/messages

3.2 测试日志生成

手动产生测试日志:

logger "This is a test message for /var/log/messages"

四、日志轮转配置

4.1 创建logrotate配置文件

新建/etc/logrotate.d/messages

sudo nano /etc/logrotate.d/messages

添加以下内容:

/var/log/messages {
    weekly
    missingok
    rotate 4
    compress
    delaycompress
    sharedscripts
    postrotate
        /usr/lib/rsyslog/rsyslog-rotate
    endscript
}

4.2 手动测试轮转

sudo logrotate -vf /etc/logrotate.d/messages

五、高级配置技巧

5.1 过滤特定日志级别

只记录warning及以上级别:

*.warning    /var/log/messages

5.2 分离内核日志

添加单独规则:

kern.*       /var/log/kern.log

5.3 远程日志收集

配置远程syslog服务器

*.* @192.168.1.100:514

六、常见问题解决

6.1 日志文件未生成

检查项: - rsyslog服务状态:systemctl status rsyslog - 配置文件语法:rsyslogd -N1 - SELinux/AppArmor限制(Ubuntu默认使用AppArmor)

6.2 日志权限问题

确保权限正确:

sudo chown syslog:adm /var/log/messages

6.3 磁盘空间不足

设置日志大小限制:

$outchannel log_rotation,/var/log/messages,5000000,/root/rotate_messages.sh

七、替代方案:使用journald

虽然配置了传统messages文件,但建议同时掌握journald用法:

7.1 查看所有日志

journalctl -xe

7.2 持久化存储

sudo mkdir -p /var/log/journal
sudo systemctl restart systemd-journald

结语

通过本文配置,Ubuntu系统将生成熟悉的/var/log/messages文件。建议根据实际需求调整日志级别和过滤规则,同时合理设置日志轮转策略以防止磁盘空间耗尽。对于新式系统,也推荐逐步适应journald的日志管理方式。

注意:Ubuntu 22.04及更新版本可能需要额外处理systemd与rsyslog的集成问题。 “`

这篇文章包含了约1100字,采用Markdown格式编写,包含: 1. 多级标题结构 2. 代码块标记 3. 命令行操作示例 4. 配置片段 5. 问题解决章节 6. 注意事项提示

可根据实际需求进一步调整内容细节或补充特定场景的配置示例。

推荐阅读:
  1. Linux和Ubuntu两者有什么区别
  2. 怎么在ubuntu中使用Pip安装Python3

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

ubuntu

上一篇:java后台管理系统如何实现登录注册和权限模块

下一篇:Ubuntu12.04如何安装搜狗拼音输入法

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》