做一套网站开发多少钱,wordpress怎么取当前点击的tag,wordpress xss,万网空间存放两个网站1 日志基本路径和基础查看方法
在 Ubuntu 或 Debian 11 系统中#xff0c;可以通过不同的日志文件来获取系统日志和内核日志。日志常见路径如下#xff1a;
/var/log/syslog#xff1a;包含系统的整体日志#xff0c;包括各种系统事件和服务日志。/var/log/auth.log…1 日志基本路径和基础查看方法
在 Ubuntu 或 Debian 11 系统中可以通过不同的日志文件来获取系统日志和内核日志。日志常见路径如下
/var/log/syslog包含系统的整体日志包括各种系统事件和服务日志。/var/log/auth.log记录用户认证和授权相关的日志如登录、sudo 使用等。/var/log/kern.log内核相关的日志包括硬件和驱动程序问题。/var/log/dmesg包含内核环缓冲区的消息可以用来查看系统启动期间的信息。
说明这些日志一般都是有多个这里以kern.log为例一般从下到上的时间顺序如下所示
-rw-r----- 1 syslog adm 1662 2月 6 06:58 kern.log
-rw-r----- 1 syslog adm 366757 2月 3 00:00 kern.log.1
-rw-r----- 1 syslog adm 6504 1月 25 12:24 kern.log.2.gz
-rw-r----- 1 syslog adm 16436 1月 17 21:31 kern.log.3.gz
-rw-r----- 1 syslog adm 51381 1月 11 23:25 kern.log.4.gz
这里可以使用以下命令查看这些日志文件的内容如下所示
$cat /var/log/syslog
$cat /var/log/auth.log
$cat /var/log/kern.log
$cat /var/log/dmesg
如果想实时监视日志文件的更新可以使用 tail 命令加上 -f 参数如下
$tail -f /var/log/syslog
$tail -f /var/log/auth.log
$tail -f /var/log/kern.log
$tail -f /var/log/dmesg
2 日志查看和过滤工具
除了直接查看日志文件之外还有一些常用的工具可以帮助你抓取和分析系统日志和内核日志。以下是一些常见的工具
2.1 journalctl
journalctl是 systemd 系统日志记录器的命令行工具用于查看和分析系统日志。它可以以可读的格式显示日志并支持按时间、单元服务、PID 等进行过滤和搜索。它提供了许多参数和选项用于过滤、搜索和格式化日志输出。以下是 journalctl 常见的参数和使用示例
1 基本用法总结如下:
#查看最新的系统日志
$journalctl
#查看指定单位服务的日志
$journalctl -u unit-name.service
#查看指定用户的日志
$journalctl -u user-name
#查看指定时间范围内的日志
$journalctl --since 2023-12-01 00:00:00 --until 2023-12-02 23:59:59
2 过滤和搜索总结如下
#根据优先级过滤日志。其中priority 可以是数字0 至 7或对应的名称如 emerg、alert、crit、err、warning、notice、info、debug
$journalctl -p priority
#根据日志来源过滤日志
$journalctl -b SYSLOG_IDENTIFIERsource-name
#搜索特定关键字的日志,这将搜索包含关键字的日志消息
$journalctl -t keyword
3 输出格式
#以可读的格式显示日志
$journalctl -o short
#以 JSON 格式显示日志
$journalctl -o json
#以详细格式显示日志
$journalctl -o verbose
#以特定字段的格式显示日志
$journalctl -o field --fieldFIELD_NAME
2.2 dmesg
dmesg 是一个用于读取和打印内核环缓冲区消息的命令。它可以查看系统启动信息、硬件设备和内核模块相关的日志。以下是 dmesg 常见的参数和使用示例总结
#查看系统启动信息
$dmesg
#以逆序方式查看最新的内核日志
$dmesg -r
#仅显示指定级别的内核日志可用级别emerg, alert, crit, err, warning, notice, info, debug
$dmesg --levelLEVEL
#过滤显示包含指定关键字的内核日志
$dmesg --grepKEYWORD
#限制输出的行数
$dmesg -n NUM_LINES
2.3 syslog-ng
syslog-ng是一个高度可配置的系统日志守护进程它可以收集、过滤和转发系统日志。它支持多种日志源和目标并提供灵活的日志处理和存储功能。
以下是一个简单的使用案例
#安装 syslog-ng
$sudo apt-get install syslog-ng
#创建一个自定义的 syslog-ng 配置文件
$sudo vim /etc/syslog-ng/conf.d/myconfig.conf
在 myconfig.conf 文件中可以定义日志源、过滤规则和目标。以下是一个简单的demo示例
# 定义日志源为本地系统日志
source s_local {system();
};# 过滤规则仅保留来自特定设备的日志
filter f_myfilter {host(192.168.1.100);
};# 定义目标为远程日志服务器
destination d_remote {syslog(192.168.2.200 port(514));
};# 配置日志源、过滤规则和目标的关联
log {source(s_local);filter(f_myfilter);destination(d_remote);
};
保存并关闭文件后重新启动 syslog-ng 服务
$sudo systemctl restart syslog-ng
这个示例配置将从本地系统收集日志然后根据过滤规则将特定设备的日志转发到远程日志服务器。
2.4 rsyslog
类似于 syslog-ngrsyslog也是一个常见的系统日志守护进程。它可以收集、转发和处理系统日志并支持各种配置选项和插件。
以下是一个简单的使用案例
#安装 rsyslog
$sudo apt-get install rsyslog
#创建一个自定义的 rsyslog 配置文件
$sudo vim /etc/rsyslog.d/myconfig.conf
在 myconfig.conf 文件中你可以定义日志源、过滤规则和目标。以下是一个简单的demo示例
# 过滤规则仅保留来自特定设备的日志
if $fromhost-ip 192.168.1.100 then {action(typeomfwd target192.168.2.200 port514 protocoludp);
}
保存并关闭文件后重新启动 rsyslog 服务
$sudo systemctl restart rsyslog
这个示例配置将根据过滤规则将来自特定设备的日志转发到远程日志服务器。
2.5 logrotate
logrotate是一个实用程序用于管理日志文件的轮转。它可以自动压缩和归档旧的日志文件以便节省磁盘空间并确保日志文件不会无限增长。
以下是一个简单的使用案例
# 创建一个自定义的 logrotate 配置文件
$sudo vim /etc/logrotate.d/mylog
在 mylog 文件中你可以指定要轮转的日志文件、轮转频率、保存的旧日志文件数量等。以下是一个简单的demo示例
# 轮转 /var/log/mylog.log 文件每天轮转一次保留最近的 7 个旧日志文件
/var/log/mylog.log {dailyrotate 7compress
}
保存并关闭文件后logrotate 将根据配置文件的设置定期轮转日志文件。
2.6 总结
这些工具提供了更灵活和高级的功能能够更方便地查看、分析和管理系统日志和内核日志。可以根据自己的需求选择适合的工具来使用。注意可能需要使用 sudo 或以 root 用户身份运行这些命令来访问一些日志文件特别是位于 /var/log 目录下的文件。