실수로 삭제 된 Linux 시스템 파일을 복구하는 방법

1. EXT 파일 복구

EXT (extundelete)는 ext3 및 ext4 파일 시스템을 지원하는 오픈 소스 Linux 데이터 복구 도구입니다. (ext4는 centos6 버전에서만 복원 할 수 있습니다.)

실험 절차

(1) 먼저 새 디스크 파티션을 만듭니다.

fdisk -l              
fdsik /dev/sdb                     ##创建分区
mkfs.ext3 /dev/sdb1                ##格式化ext3文件系统
mkdir /test                        ##创建一个目录用来测试
mount /dev/sdb1 /test              ##挂载

"Df -Th"체크 아웃

여기에 사진 설명 삽입
(2) 종속 패키지를 설치하려면 mount / dev / cdrom / mnt에 시스템 이미지를 마운트 해야합니다.

여기에 사진 설명 삽입

(3) 종속성 패키지 설치
yum -y install e2fsprogs-devel e2fsprogs-libs

여기에 사진 설명 삽입
(4) 먼저 테스트 디렉토리 cd / test로 전환합니다.

공식 웹 사이트에서 설치 패키지를 다운로드합니다 (또는 컴퓨터의 소프트웨어 패키지에서 직접 드래그 할 수 있습니다).
wget http://nchc.dl.sourceforge.net/project/extundelete/extundelete/0.2.4/extundelete-0.2.4.tar.bz2

여기에 사진 설명 삽입
(5) tar jxvf extundelete-0.2.4.tar.bz2의 압축을 풉니
다.

여기에 사진 설명 삽입
(6) cd extundelete-0.2.4 /

설치 디렉토리를 지정하고 설치를 시작하십시오
./configure --prefix = / usr / local / extundelete && make && make install

여기에 사진 설명 삽입

참고 : 다음 오류 보고서가 나타나면 gcc 구성 요소가 완전히 설치되지 않은 것입니다.

여기에 사진 설명 삽입
다음 명령을 실행해야합니다.
yum install gcc gcc-c ++ gcc-g77
여기에 사진 설명 삽입

(7) 소프트 연결 생성 (시스템이 명령을 인식하도록 함)
ln -s / usr / local / extundelete / bin / * / usr / bin /

여기에 사진 설명 삽입
(8) 먼저 테스트 디렉토리 cd / test로 전환합니다.

삭제를 시뮬레이션하고 복구 작업을 수행합니다 (먼저 echo 명령을 사용하여 A, B, C, D 파일에서 내용 a를 정의하거나 4 개의 파일을 생성하거나 vim을 사용하여 생성)
echo a> A
echo a> B
echo a> C
에코 a> D

여기에 사진 설명 삽입

(7) 파일 시스템 / dev / sdb1에 어떤 파일이 있는지 확인하십시오. i 노드는 2부터 시작하고 2는 파일 시스템의 초기 디렉토리를 나타냅니다.
extundelete / dev / sdb1 --inode 2

여기에 사진 설명 삽입
여기에 사진 설명 삽입

(8) 파일 삭제
여기에 사진 설명 삽입

(9) 다시 확인하면 A와 B가 삭제 된 것을 볼 수 있습니다.
여기에 사진 설명 삽입
여기에 사진 설명 삽입
(10) 루트 디렉토리로 전환하고 마운트 해제합니다.
여기에 사진 설명 삽입
(11) / dev / sdb1 파일 시스템의 내용을 복원합니다.
extundelete / dev / sdb1 --restore-all
여기에 사진 설명 삽입

(12) ls를 확인하고 추가 RECOVERED_FILES 디렉토리가 있는지 확인하고 삭제 된 파일도 그 안에 있습니다.
여기에 사진 설명 삽입

2, xfs 유형 파일 백업 및 복구

Centos 7 시스템은 기본적으로 xfs 유형 파일을 사용하며 xfs 유형 파일은 xfsdump (백업 도구) 및 xfsrestore (복원 도구)를 사용하여 백업 및 복원 할 수 있습니다.
xfsdump에는 두 가지 백업 수준이 있습니다. 0은 전체 백업을 의미하고 1-9는 증분 백업을 의미합니다. xfsdump의 기본 백업 레벨은 0입니다.

xfsdump 의 명령 형식은 다음 과 같습니다.
xfsdump -f 백업 할 백업 저장 위치 경로 또는 장치 파일

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

xfsdump 使用限制:
1、只能备份已挂载的文件系统
2、必须使用root的权限才能操作
3、只能备份XFS文件系统
4、备份后的数据只能让 xfsrestore 恢复
5、不能备份两个具有相同UUID的文件系统(可用 blkid 命令查看)

실험 절차

이전 실험에서 디스크 파티션
mkfs.xfs 를 직접 사용하십시오. -f / dev / sdb1 및 "-f"는 필수 포맷입니다.
여기에 사진 설명 삽입
(1) 새 파티션 생성 fdisk / dev / sdb
(2) 디렉토리를 생성하고
mkdir / data
mount / dev / sdb1 / 데이터

여기에 사진 설명 삽입

(3) / date 디렉토리를 입력하고 암호 정보를 백업합니다 (백업을 검색 할 수 없도록 파일 정보는 나중에 복원됩니다).

여기에 사진 설명 삽입

(4) 새 디렉토리를 만들고 해당 디렉토리에 파일을 만듭니다.
여기에 사진 설명 삽입

(5) xfsdump가 설치되어 있는지 확인하십시오. 설치되어 있지 않으면
rpm -qa | grep xfsdump
yum install -y xfsdump를 설치하십시오.

여기에 사진 설명 삽입
(6) / dv / sdb1의 파일을 / opt 아래의 dump_sdb1에 백업 한 다음 -L 파일 이름 뒤에 -M은 장치 이름입니다.
xfsdump -f / opt / dump_sdb1 / dev / sdb1 -L dump_sdb1 -M sdb1
여기에 사진 설명 삽입
(7) 모든 파일과 디렉토리를 삭제하고 xfsrestore -f / opt / dump_sdb1 / data /를 복원합니다.

여기에 사진 설명 삽입
passwd 파일이 복원 된 것을 볼 수 있습니다.

추천

출처blog.csdn.net/weixin_51613313/article/details/110772257