Linux日志文件系统(二)

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Linux日志文件系统

3.2恢复XFS类型的文件

3.2.1xfs类型文件常用恢复工具

Centos 7系统默认采用xfs类型的文件,xfs类型的文件可使用xfsdump 与xfsrestore 工具进行备份恢复


xfsdump的备份级别有两种:


0表示完全备份;


1-9表示增量备份。


xfsdump的备份级别默认为0。


3.2.2xfsdump常用格式及选项

xfsdump格式:
xfsdump -f 备份存放位置 要备份的路径或设备文件


常用选项 功能
-f 指定备份文件目录
-L 指定标签session label
-M 指定设备标签media label
-S 备份单个文件,-s后面不能直接跟路径

3.2.3xfsdump命令的限制

只能备份已挂载的文件系统

必须使用root的权限才能操作

只能备份XFS文件系统

备份后的数据只能让xfsrestore解析

不能备份两个具有相同UUID的文件系统(可用blkid命令查看)

3.2.4操作步骤及命令详解

xfsrestore -f 恢复文件的位置 存放恢复后文件的位置
##使用fdisk创建分区/dev/sdb1,格式化xfs文件系统
fdisk /dev/sdc #创建磁盘
partprobe /dev/sdb或
mkfs.xfs /dev/ sdc1 # mkfs.xfs [-f] /dev/sdbl 格式化磁盘
mkdir /data
mount /dev/sdc1 /mnt/ #挂载磁盘
cd /data #切换目录
cp /etc/passwd ./ #拷贝文件测试磁盘
mkdir test #创建目录
touch test/a ##创建文件
##使用xfsdump命令备份整个分区
rpm -qa | grep xfsdump #检查命令是否安装
yum install -y xfsdump #安装命令
xfsdump -f /opt/dump_sdc1 /dev/sdb1 [-L dump_sdc1 -M sdc1]
#指定备份的目录和需要备份的磁盘
xfsdump -f /opt/dump_sdc /dev/sdb1 -L dump_sdc -M sdc1


##模拟数据丢失并使用xfsrestore 命令恢复文件
cd /data/
rm -rf ./*
ls
xfsrestore -f /opt/dump_sdb1 /data/


3.2.5示例

  1. 添加一块新的硬盘(参考此篇博客),创建新的分区

  2. 格式化并挂载,在挂载目录/mnt下创建文件


  3. 安装xfsdump,指定备份目录和需要备份的磁盘

  1. 删除文件,做恢复测试



四、日志文件的分析

在Linux系统中日志保存位置默认位于:/var/log目录下

4.1日志文件功能

用于记录系统、程序运行中发生的各种事件

通过阅读日志,有助于诊断和解决系统故障

4.2日志文件的类型

**内核及系统日志:**这种日志数据由系统服务rsyslog统一管理,根据其主配置文件/etc/rsyslog.conf中的设置决定将内核消息及各种系统程序消息记录到什么位置


**用户日志:**这种日志数据用于记录Linux系统用户登录及退出系统的相关信息,包括用户名、登 录的终端、登录时间、来源主机、正在使用的进程操作等


**程序日志:**有些应用程序会选择由自己独立管理一份日志文件(而不是交给rsyslog服务管理),用于记录本程序运行过程中的各种事件信息


4.3不同日志文件保存的位置

主要日志文件介绍

内核及公共消息日志 /var/log/messages
计划任务日志 /var/log/cron
系统引导日志 /var/log/dmesg
邮件系统日志 /var/log/maillog
用户登录日志 /var/log/lastlog
/var/log/secure
/var/log/wtmp
/var/log/btmp

#用户登录日志:


/var/log/secure:记录用户认证相关的安全事件信息。
/var/1og/lastlog:记录每个用户最近的登录事件。二进制格式
/var/1og/wtmp: 记录每个用户登录、注销及系统启动和停机事件。二进制格式
/var/run/btmp: 记录失败的、错误的登录尝试及验证事件。二进制格式


详情介绍


内核及公共消息日志 : /var/log/messages:

记录Linux内核消息及各种应用程序的公共日志信息,包括启动、I0错误、网络错误、程序故障等。

对于未使用独立日志文件的应用程序或服务,一般都可以从该日志文件中获得相关的事件记录信息。



  • 计划任务日志/var/log/cron:记录crond计划任务产生的事件信息
  • 系统引导日志/var/log/dmesg:记录Linux系统在引导过程中的各种事件信息。
  • 邮件系统日志 /var/log/maillog:记录进入或发出系统的电子邮件活动。


4.4内核及系统日志

4.4.1 由系统服务 rsyslogd 统一管理

软件包:rsyslog-7.4.7-16.el7.x86_64
主要程序:/sbin/rsyslogd
配置文件:/etc/rsyslog.conf
vim /etc/rsyslog.conf
*.info;mail.none;authpriv.none;cron.none /var/log/messages
*.info //表示info等级及以上的所有等级的信息都写到对应的日志文件里
mail.none //表示某事件的信息不写到日志文件里(这里举例是邮件)如下图:


4.4.2日志消息的级别

Linux系统内核日志消息的优先级别(数字等级越小,优先级越高,消息越重要)


级号 消息 级别 说明
0 EMERG 紧急 会导致主机系统不可用的情况
1 ALERT 警告 必须马上采取措施解决的问题
2 CRIT 严重 比较严重的情况
3 ERR 错误 运行出现错误
4 WARNING 提醒 可能会影响系统功能的事件
5 NOTICE 注意 不会影响系统但值得注意
6 INFO 信息 一般信息
7 DEBUG 调试 程序或系统调试信息等

4.5 用户日志分析

4.5.1用户登录日志位置:

/var/log/secure:记录用户认证相关的安全事件信息。

/var/1og/lastlog:记录每个用户最近的登录事件。二进制格式

/var/1og/wtmp: 记录每个用户登录、注销及系统启动和停机事件。二进制格式

/var/run/btmp: 记录失败的、错误的登录尝试及验证事件。二进制格式

users、who、w、last、lastb

4.5.2用户日志分析工具

users:命令只是简单地输出当前登录的用户名称,每个显示的用户名对应一个登录会话。如果一个用户有不止一个登录会话,那他的用户名将显示与其相同的次数


who:命令用于报告当前登录到系统中的每个用户的信息。使用该命令,系统管理员可以查看当前系统存在哪些不合法用户,从而对其进行审计和处理。who的默认输出包括用户名、终端类型、登录日期及远程主机


w:命令用于显示当前系统中的每个用户及其所运行的进程信息,比users、who命令的输出内容要丰富一些


last:命令用于查询成功登录到系统的用户记录,最近的登录情况将显示在最前面。通过last 命令可以及时掌握Linux.主机的登录情况,若发现未经授权的用户登录过,则表示当前主机可能已被入侵


lastb:命令用于查询登录失败的用户记录,如登录的用户名错误、密码不正确等情况都将记录在案。登录失败的情况属于安全事件,因为这表示可能有人在尝试猜解你的密码。除了使用 lastb命令查看以外,也可以直接从安全日志文件/var/log/secure中获得相关信息有哪些系统常见日志。


4.6 程序日志分析

4.6.1位置

Web服务: /var/log/httpd/


access_log、 error_log


代理服务: /var/log/squid/


access.log、cache.log、


FTP服务: /var/log/xferlog


4.1.6工具

文本查看、grep过滤检索、Webmin管理套件中查看


awk、sed等文本过滤、格式化编辑工具


Webalizer、Awstats等专用日志分析工具


总结

日志管理策略


1.及时作好备份和归档


2.延长日志保存期限


3.控制日志访问权限


日志中可能会包含各类敏感信息,如账户、口令等


4.集中管理日志


将服务器的日志文件发到统一的日志文件服务器


便于日志信息的统一收集、整理和分析


杜绝日志信息的意外丢失、恶意篡改或删除


相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
相关文章
|
3天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
19 3
|
3天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
16 2
|
13天前
|
Linux 应用服务中间件 Shell
linux系统服务二!
本文详细介绍了Linux系统的启动流程,包括CentOS 7的具体启动步骤,从BIOS自检到加载内核、启动systemd程序等。同时,文章还对比了CentOS 6和CentOS 7的启动流程,分析了启动过程中的耗时情况。接着,文章讲解了Linux的运行级别及其管理命令,systemd的基本概念、优势及常用命令,并提供了自定义systemd启动文件的示例。最后,文章介绍了单用户模式和救援模式的使用方法,包括如何找回忘记的密码和修复启动故障。
35 5
linux系统服务二!
|
13天前
|
Linux 应用服务中间件 Shell
linux系统服务!!!
本文详细介绍了Linux系统(以CentOS7为例)的启动流程,包括BIOS自检、读取MBR信息、加载Grub菜单、加载内核及驱动程序、启动systemd程序加载必要文件等五个主要步骤。同时,文章还对比了CentOS6和CentOS7的启动流程图,并分析了启动流程的耗时。此外,文中还讲解了Linux的运行级别、systemd的基本概念及其优势,以及如何使用systemd管理服务。最后,文章提供了单用户模式和救援模式的实战案例,帮助读者理解如何在系统启动出现问题时进行修复。
35 3
linux系统服务!!!
|
4天前
|
存储 运维 监控
深入Linux基础:文件系统与进程管理详解
深入Linux基础:文件系统与进程管理详解
41 8
|
3天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
18 3
|
6天前
|
安全 Linux 数据安全/隐私保护
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。
在 Linux 系统中,查找文件所有者是系统管理和安全审计的重要技能。本文介绍了使用 `ls -l` 和 `stat` 命令查找文件所有者的基本方法,以及通过文件路径、通配符和结合其他命令的高级技巧。还提供了实际案例分析和注意事项,帮助读者更好地掌握这一操作。
23 6
|
6天前
|
Linux
在 Linux 系统中,`find` 命令是一个强大的文件查找工具
在 Linux 系统中,`find` 命令是一个强大的文件查找工具。本文详细介绍了 `find` 命令的基本语法、常用选项和具体应用示例,帮助用户快速掌握如何根据文件名、类型、大小、修改时间等条件查找文件,并展示了如何结合逻辑运算符、正则表达式和排除特定目录等高级用法。
31 6
|
7天前
|
监控 Linux 开发者
如何在 Linux 中优雅的使用 head 命令,用来看日志简直溜的不行
`head` 命令是 Linux 系统中一个非常实用的工具,用于快速查看文件的开头部分内容。本文介绍了 `head` 命令的基本用法、高级用法、实际应用案例及注意事项,帮助用户高效处理文件和日志,提升工作效率。
21 7
|
7天前
|
机器学习/深度学习 自然语言处理 Linux
Linux 中的机器学习:Whisper——自动语音识别系统
本文介绍了先进的自动语音识别系统 Whisper 在 Linux 环境中的应用。Whisper 基于深度学习和神经网络技术,支持多语言识别,具有高准确性和实时处理能力。文章详细讲解了在 Linux 中安装、配置和使用 Whisper 的步骤,以及其在语音助手、语音识别软件等领域的应用场景。
34 5