linux文件管理和日志分析

目录

一、文件系统

二、文件的三个时间属性

 三、xfs文件备份与恢复:

XFS文件系统最小不低于4096个块 也就是16M

 模拟inode号满了的情况​编辑

实验:全量备份以及增量备份和删除后恢复文件

 实验2:增量备份后删除文件并恢复

四、日志分析 

内核及系统日志由系统服务rsyslog 统一管理,主配置文件为/etc/rsyslog.confLinux操作系统本身和大部分服务器程序的日志文件都默认放在目录/var/1og下。

1、常见的一些日志文件:

2、日志的功能

3、日志消息的优先级别

 4、日志格式

​5、日志的一般保留时间

6、改配置文件的注意点

五、配置日志服务器来收集日志

 六、将ssh服务日志单独存放



一、文件系统

  • 文件数据包括元信息与实际数据
  • 数据是存放在inode(index node)表中。inode 表中有很多条记录组成,第一条记录对应的存放了一个文件的元数据信息。
  • 元信息:每个文件的属性,如:文件大小、时间、权限、inode等,文件存储在硬盘上,硬盘最小存储单位是“扇区”,每个扇区存储512字节
  • block(块):连续的八个扇区组成一个block,4k,是文件存取的最小单位
  • inode(索引节点):中文译名为“索引节点”,也叫 i 节点用于存储文件元信息
  • 一个文件必须占用一个inode ,至少占用一个block
  • 详细信息查看文件命令:
    stat 文件名

二、文件的三个时间属性

  • atime (access time) #最后一次访问文件或目录的时间 (读了就会更新时间)
  • mtime (modify time) #最后一次修改文件或目录(内容)的时间 (写了就会修改时间)
  • ctime (change time) #最后一次改变文件或目录(属性)的时间,如:文件大小、权限。命令:chmod 、 chown(赋权了就会修改时间)
  • 例题:找到7天内所有大于10G的文件并用一条命令删除 
  • find /-mtime 7 -size +10G -type f exec rm -rf {}\;

    注释:数据大小改变时,block也会变,inode也会变,因为数据占用空间发生了变化

  • 查看剩余inode号命令:(linux系统内部以inode号来识别文件)

  • df -i
  • 删除乱码文件命令:

    1.查看inode号:ls -i
    2.find命令找到文件 并删除

 三、xfs文件备份与恢复:

注释:xfs文件管理系统是centos7使用的 ,而centos6 使用的是ext4文件恢复系统

  • ext4文件系统恢复命令:extundelete /需要备份的目录/备份名 /磁盘目录名/ ----inode号
  • xfs文件系统恢复命令:
  • xfsdump -f:指定备份文件目录
  • xfsdump -L:指定标签session label
  • xfsdump -M:指定设备标签media label
  • xfsdump -s:备份单个文件(绝对路径) 
  • XFS文件系统最小不低于4096个块 也就是16M

  •  模拟inode号满了的情况

  • 实验:全量备份以及增量备份和删除后恢复文件

  • 全量备份步骤:
  • 创建磁盘分区sdg1
  • 创建格式化
  • 创建空目录并挂载 /gz
  • 在/gz文件下创建文件lbj 并插入文件内容23
  • 创建备份空目录 /bf
  • 全量备份磁盘/dev/sdg1中的内容到备份盘/bf 并设置文件名为/bf/bf0
  • xfsdump -f /bf/bf0 /dev/sdg1 -L bf0 -M sdg1

  •  实验2:增量备份后删除文件并恢复

  • 往文件中插入新内容
  • 增量备份一共0-9级(0为第一次全量备份 往后每备份一次 就加一级 9级后都按照9级备份,恢复也需要一级一级倒序恢复)
  • 将磁盘/dev/sdg1的文件备份到/bf文件夹,取名/bf1
  • 删除后恢复

 

四、日志分析 

内核及系统日志由系统服务rsyslog 统一管理,主配置文件为/etc/rsyslog.conf
Linux操作系统本身和大部分服务器程序的日志文件都默认放在目录/var/1og下。

1、常见的一些日志文件:

  • #内核及公共消息日志:

/var/log/messages: 记录Linux内核消息及各种应用程序的公共日志信息,包括启动、IO错误、网络错误、程序故障等。
对于未使用独立日志文件的应用程序或服务,一般都可以从该日志文件中获得相关的事件记录信息。

  • #计划任务日志:

/var/log/cron: 记录crond计划任务产生的事件信息。

  • #系统引导日志:

/var/log/dmesg: 记录Linux系统在引导过程中的各种事件信息。

  • #邮件系统日志:

/var/log/maillog: 记录进入或发出系统的电子邮件活动。

  • #用户登录日志:

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

2、日志的功能

  1. 用于 记录 系统、程序运行中发生的各种事件(用来追责)
  2. 通过阅读日志,有助于 诊断 和 解决系统故障
  3. 日志核心功能:用于 数据恢复

3、日志消息的优先级别

数字等级越小,优先级越高、消息越重要。

 4、日志格式

 
5、日志的一般保留时间

  1. 程序的日志,一般只保留当天,一般留个2天左右 http,nginx 
  2. 数据日志,数据库,最少要保留半年
  3. 用户信息日志,永久保存
  4. 企业根据业务需要,自定义的保留时间

6、改配置文件的注意点

  1. 改配置文件,注意一点,改错了即时退出,不要保存
  2. 复制粘贴不要轻易使用(有的空格无法识别 造成报错)
  3. 有格式规范,大小写和标点符号都要注意
  4. 改完了配置文件,一定重启对应的服务,否则,新配置是不生效的
  5. 只针对我们实验环境:关防火墙和安全机制

五、配置日志服务器来收集日志

rsyslog是一个C/S架构,可以通过套接字来进行监听记录工作,
可以基于TCP和UDP工作,默认的监听端口是514,只需要在MODULES打开即可。

  • 发送服务器:客户端    192.168.181.101
  • 收集服务器:服务端    192.168.233.102
  • //关闭服务端和客户端防火墙、selinux
  • setenforce 0
  • systemctl stop firewalld
  • systemctl disable firewalld
  • 配置发送方:
  • //修改客户端配置文件,并启动服务
  • vim /etc/rsyslog.conf
  • #### MODULES ####
  • #将下面注释取消
  • $ModLoad imtcp        
  • $InputTCPServerRun 514
  • #### RULES ####
  • #*.info;mail.none;authpriv.none;cron.none               /var/log/messages  --这一行必须注释,
  • 注释的意义在于,否则还会向本机的/var/log/messages继续发消息
  •  *.info;mail.none;authpriv.none;cron.none                @@192.168.181.102
  •  *.info 表示所有等级为 info 及以上的日志都会被发送,
  • 其中 * 代表所有设施 (facility),如 auth、daemon、syslog、kern 等。
  • mail.none 表示邮件相关的日志不会被发送,其中 none 代表不包含指定的设施。
  • authpriv.none 表示安全和权限相关的日志不会被发送,
  • 其中 authpriv 代表包括 auth 和 priv 两个设施。
  • cron.none 表示计划任务相关的日志不会被发送,其中 cron 代表计划任务的设施。
  • @@192.168.181.102 表示将符合条件的日志通过TCP协议发送到远程主机 192.168.181.102 上的 rsyslog 服务。
  • 其中,@@ 表示强制使用tcp协议,单个 @ 表示使用udp协议。                                                      
  • systemctl restart rsyslog
  • netstat -antp | grep 514    #查看端口情况

 

  • 配置接收方:
  • //修改服务端配置文件,并启动服务
  • vim /etc/rsyslog.conf
  • #将下面四行前的注释取消掉
  • $ModLoad imtcp
  • $InputTCPServerRun 514
  • systemctl restart rsyslog
  • netstat -antp | grep 514   #查看端口情况

 六、将ssh服务日志单独存放

  • 第一步:关闭服务端和客户端防火墙、selinux
  • [root@localhost logs]# setenforce 0
  • [root@localhost logs]# systemctl stop firewalld
  • [root@localhost logs]# vim /etc/rsyslog.conf
  • 72 # Save boot messages also to boot.log
  • 73 local7.*                                                /var/log/boot.log
  • 74 local6.*                                                /var/log/ssh.log
  • [root@localhost logs]# vim /etc/ssh/sshd_config
  • 30 # Logging
  • 31 #SyslogFacility AUTH
  • 32 #SyslogFacility AUTHPRIV  #注释掉
  • 33 SyslogFacility LOCAL6     #添加这一行,可以复制粘贴,必须要大写
  • 重启服务
  • [root@localhost logs]# systemctl restart sshd
  • [root@localhost logs]# systemctl restart rsyslog
  • 验证:
  • 另一台:ssh root@192.168.233.21
  • 在192.168.233.21上查看日志 /var/log/ssh.log

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tizzy33

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值