首页 windows软件 手机软件 驱动下载 电脑教程 专题合集
当前位置: 首页 > 电脑教程 > Linux教程 > 记一次Linux安全事故与数据恢复案例分析

记一次Linux安全事故与数据恢复案例分析

时间:2018-10-19 20:50:21

小编:动力软件园

阅读:


数据丢失,头都炸了,看着爱因斯坦的头像是那么的亲切。硬盘有价,数据无价,本站虽小也是动力软件园站长辛苦一条条整理的。由于缺乏运维经验,linux权限设置不够恰当,造成数据误删除,不过经过学习和努力,竟然完整恢复了。再次感谢,李老师的帮助,帮我快速实现了恢复。毕竟我命令不是那么熟悉。


Linux数据丢失可以恢复吗?


今天以运维着的身份简单记录一下本次恢复的全过程,简单记录还原操作过程,方便以后查阅。晕,是希望以后不再碰到这样的事情,留个有需要的朋友吧。因为是脑补记录,本文章没有那么多命令和贴图供大家参考,能看到这篇文章的朋友一定是有维护经验的朋友。根据提示应该可以找到相关的资料,完成数据恢复。 

linux系统和windows系统从系统设计机制分析,windows有回收站,真实误删除了,还有机会恢复。linux没有垃圾回收站,删除了就没那么好恢复了。我也咨询了好几个懂linux的朋友(包括有rhce证书的人)都说没有希望了。linux删除了数据是没办法恢复,在这里我要告诉大家,机会还是有的,不要放弃。

文件删除一般分两种情况,第一种情况说起来简单,但是在实际的环境中并不多见,做个模拟练习还行,真正的环境中,删除就是删除了,基本不知道本删除的文件是否还被其他用户所使用,一般都是被关闭了,那么使用查看文件句柄的方式恢复就难了。 



linux数据恢复第一种情况:


说人话,当前linux系统多个用户。。A用户修改,另外一个B用户误删除。如果A关闭了文件句柄,恢复就没希望了。


解决方法:


通过文件打开的pid以及打开文件的文件句柄恢复。 


cp /PROC/FILE_PID/FD/*   /TMP/FILE_NAME    #拷贝句柄到临时目录恢复文件。



linux数据恢复第二种情况:


系统多用户误删除的情况(案例情况是,多用户,期中一个用户通过winscp把右侧当做是本地文件,直接全部删除了,那么会有人问了。设置linux UGO权限啊,我的确设置 文件目录777,755不行啊,普通用户写不进去,只能777,那么用户上传文件权限是644,结果是用户可以删除其他用户上传的644权限文件,包括root上传的755权限文件)。遇到这样的情况只能是使用linux数据恢复工具尝试恢复了。


注意事项和解决办法。


1、停止对分区做操作。 
2、通过DD命令进行备份,防止其他方式恢复造成数据丢失。 。
3、对当前设备分区进行卸载  umount /dev/sdb*  对linux分区不熟悉的朋友,先去脑补一下。我这里也没有合适的教程。   
4、安装下载第三方安装工具extundelete,对丢失的文件进行搜素并还原。使用extundelete需要e2fsprogs支撑。


需要yum install e2fsprogs*   

小技巧:反斜杠* 安装不知道的包名


5、编译安装。./config make;make install 


extundelete --help 


基于文件  时间  目录 等方式恢复,查看help


extundelete  --restore-inode 1111111  /dev/sdba (如果分区没有卸载,一定要恢复到其他盘里。切记,切记)这个是基于inode恢复的,恢复出来的是一堆inode号,目前我还不知道如何从inode号恢复成文件名,文件少了可以,多了咋办。


推荐恢复目录吧,直接出来文件名。

extundelete  --restore-dirc**  /dev/sdba



执行命令,会显示有多少个inode号在恢复,linux数据恢复完成后会再当前目录下有个RE开头的文件夹。打开看看吧。


如何防止linux误删除文件再次发生:


后记:上述误删案例,如何设置权限才可以实现linux多用户公用目录只能查看不能删除其他用户权限呢。欢迎阅读,其实就是很小一个技巧,就像ftp设置的权限一样了,sticky粘贴位权限。用这个命令 chmod o+t file,具体的过程我回头记录一下。明年争取用一年时间考下RHCE证书,坚决不做只有证书的人。 


转载请注明出处 https://www.pw88.com/teach/linux/301.html。

相关阅读
  • VIM编辑器介绍和安装配置
    VIM编辑器介绍和安装配置
    vim是一款功能强大、支持各种插件、配置极为灵活的编辑器,且支持多种主流OS(linux、Unix、mac、windows),可用来各种编程预言的coding和文件编辑,用习惯了vim,你会体会到它是如此的高效和便捷。
    时间:2019-04-04
  • linux如何解压缩rar文件
    linux如何解压缩rar文件
    在linux中解压缩rar文件的方法。
    时间:2019-01-14
  • 启动Docker容器并进入操作的几种方法总结
    启动Docker容器并进入操作的几种方法总结
    在使用Docker创建了容器之后,大家比较关心的就是如何进入该容器了,其实进入Docker容器有好几多种方式,这里我们就讲一下常用的几种进入Docker容器的方法。
    时间:2019-01-05
  • win平台和linux平台下mysql导入导出sql文件
    win平台和linux平台下mysql导入导出sql文件
    在日常的维护中,mysql数据库使用是最多的数据库了。现在都去o了。你懂的。整理了一些常用的知识点。在不同的系统下不同的导入导出方法。windows平台下导出:导出整个数据库
    时间:2019-01-04
  • linux下awk命令用法
    linux下awk命令用法
    [root@hehe ~]# cat 2018-12-06-www.pw88.com-access.log | awk -F' ' '{print $1,$4,$5}'223.166.151.243[06/Dec/2018:00:06:08 +0800]207.46.13.94[06/D
    时间:2018-12-19
  • linux系统cut命令用法
    linux系统cut命令用法
    cut命令知识点 cut -d ':' -f 1 aa.txt cut [选项] 文件名 选项 -d “:” 冒号分隔符-f 2 ,4 第几列-f 和后边的1 可以有空格也可以不要空格。
    时间:2018-12-19
  • linux系统sed命令用法
    linux系统sed命令用法
    sed是轻量级流编辑器(可以从管道符里接受命令结果 可以修改命令也可以修改文本) 和vim一样, vim只能修改文件, 可以执行 增加 删除 选取 替换sed 【选项】‘动作’文件
    时间:2018-12-19
  • linux查看raid信息方法
    linux查看raid信息方法
    查看raid信息[root@localhost ~]# mdadm --detail -v /dev/md127/dev/md127: Version : 1.1 Creation Time : Thu Sep 15 06:55:25 2011 Raid Level : raid1
    时间:2018-12-18
  • linux系统fdisk分区命令详解
    linux系统fdisk分区命令详解
    1、首先查看分区[root@localhost ~]# fdisk -lDisk /dev/vda: 42.9 GB,42949672960 bytes16 heads, 63sectors/track, 83220 cylindersUnits = cylinders of1008 * 512 = 51
    时间:2018-12-18
  • linux系统date参数表
    linux系统date参数表
    时间:2018-12-18
  • find: 遗漏“-exec”的参数解决办法
    find: 遗漏“-exec”的参数解决办法
    -exec 参数后面跟的是command命令,它的终止是以;为结束标志的,所以这句命令后面的分号是不可缺少的,考虑到各个系统中分号会有不同的意义,所以前面加反斜杠。 {} 花括号代表前面find查找出来的文件名。
    时间:2018-12-05
  • Linux系统中文件ACL权限解读
    Linux系统中文件ACL权限解读
    我们将进入linux的权限管理介绍,本篇博客介绍的是Linux权限管理的ACL权限。
    时间:2018-08-13
  • linux modprobe命令作用
    linux modprobe命令作用
    modprobe命令用于智能地向内核中加载模块或者从内核中移除模块。modprobe可载入指定的个别模块,或是载入一组相依的模块。modprobe会根据depmod所产生的相依关系,决定要载
    时间:2018-07-12
  • Linux系统运维常用软件介绍、Linux系统日志管理工具
    Linux系统运维常用软件介绍、Linux系统日志管理工具
    踏入linux运维工程师需要掌握的工具,还有很多工具要掌握的,经常看日志是系统管理的好习惯Linux系统日志/var/log/messages 系统总日志/etc/logrotate.conf 日志切割配置文件
    时间:2018-06-29
  • Linux系统查看磁盘健康状况、磁盘坏道检测方法
    Linux系统查看磁盘健康状况、磁盘坏道检测方法
    今天推荐smartmontools,他是一款开源的磁盘控制,监视工具,可以运行在 Linux,Unix,BSD,Solaris,Mac OS,OS/2,Cygwin和Windows上。利用它可以测试硬盘的健康状况,并在发生故障前进行预警。写个shell你就可以高枕无论了。
    时间:2018-06-28
  • linux通过NTP服务同步国际标准时间和添加NTP任务计划
    linux通过NTP服务同步国际标准时间和添加NTP任务计划
    linux时间不对,对于长期不登录的服务服务器来说,时间长了,时间不正确肯定要影响任务计划的执行。[root@245 ~]# date2018年 06月 28日 星期四 08:45:57 CST ######时间
    时间:2018-06-28
  • 指定解压tar包中的某个文件夹或者文件
    指定解压tar包中的某个文件夹或者文件
    在日常运维中经常进行打包压缩备份文件,一个文件夹往往都是很大很大,每次下载下来解压缩都累死了。没有呀不解压tar包就可以解压其中的某一个文件呢,当然有了。
    时间:2018-06-26
  • Linux软件安装使用教程(安装包类)
    Linux软件安装使用教程(安装包类)
    1.通常Linux应用软件的安装包有三种:1) tar包,如software-1.2.3-1.tar.gz。它是使用UNIX系统的打包工具tar打包的。2) rpm包,如software-1.2.3-1.i386.rpm。它是Redhat L
    时间:2016-08-12
  • Linux版本QQ安装使用教程
    Linux版本QQ安装使用教程
    Linux版本QQ安装使用教程安装①打开控制台,使用管理员身份登录;②在终端中输入命令 ”dpkg -i package_name.deb”,package_name是QQ安装包文件名。如果copy这段代码过去
    时间:2016-08-09
  • Linux Kernel 4.5最终版本发布
    Linux Kernel 4.5最终版本发布
    Linux Kernel自2016年1月25日首个候选版本发布,经历了长达两个多月的不懈更新,在3月6日发布最后一个候选版本之后,Linux Kernel 4.5终于在今天获得了最终版本。Linux Ker
    时间:2016-03-17

火爆手游