一、基本介绍


logread 是 OpenWrt 系统中用于查看系统日志的命令行工具,它读取由 logd 守护进程收集并存储在内存缓冲区中的日志信息。logd 负责收集系统守护进程、应用程序和内核组件产生的日志消息,并通过 ubus 接口提供给 logread 读取。


二、语法和参数


基本语法


bash

logread [选项]


常用参数


参数

描述

-f

实时跟踪日志输出,类似于 tail -f

-n <行数>

显示最近的指定行数日志

-e <模式>

使用正则表达式过滤日志消息

-h

显示帮助信息


三、使用示例


1. 查看所有日志


bash

logread


2. 实时跟踪日志


bash

logread -f


3. 显示最近 10 行日志


bash

logread -n 10


4. 过滤包含特定关键词的日志


bash

logread -e "error"


5. 结合 grep 过滤日志


bash

logread | grep "eth0"


四、权限要求


使用 logread 命令通常需要 root 权限,普通用户可能无法访问完整的日志信息。


五、注意事项


  1. logread 读取的日志存储在内存中,系统重启后日志会丢失。若需持久化日志,可配置日志转发到远程服务器或保存到存储设备。
  2. 可通过修改 /etc/config/system 文件配置日志参数,如日志大小、远程日志服务器等。
  3. 对于大型日志文件,建议结合管道命令(如 grep、less)进行过滤和分页查看。


六、相关配置


配置远程日志服务器


编辑 /etc/config/system 文件,添加以下配置:


plaintext

config systemoption log_ip '192.168.1.100'  # 远程日志服务器IPoption log_port '514'         # 远程日志服务器端口option log_proto 'tcp'        # 传输协议(tcp/udp)


配置完成后重启日志服务:


bash

/etc/init.d/log restart