클라우드 드라이브에서“rm -R”명령으로 방금 삭제 한 디렉토리를 삭제 취소하는 방법은 무엇입니까?


10

rm -R명령으로 중요한 디렉토리를 삭제했습니다 . 이것은 매우 대중적인 호스트 데이터입니다. 그것은 /var/zpanel/hostdata/ayrintilih ayrintilih 디렉토리를 제거한 후 모든 것을 갔다.

ext4magic프로그램 을 삭제 취소하려고했습니다 . 그러나 복구를 위해서는 다른 HDD 볼륨이 필요합니다.

에러 메시지:

ERROR: can not use "/root/recoveried" for recover directory. It's the same filesystem : "/dev/dm-0"

ISP가 방금 요청에 응답했습니다.

Unfortunately there is no way to add another Volume to a virtual Instance. 
If it would be a dedicated Server, we could do it, but not in a Cloudserver. 
You could try to minimize the partition and create another one, that would 
count as another Volume. We also recommend to have allways a 
Backup for your Important files.

25
실제 질문은 "중요한 파일을 백업 하기 전에 항상 중요 파일을 백업하는 것이 좋습니다 . "
goldilocks

2
또 다른 조언은 항상 명령은 특히, Enter 키를 입력하기 전에 두 번 생각 rm -R...
jlliagre가

9
"파일을 쉽게 삭제 취소 할 수있는 방법이 있습니까?" 호
MSW

1
@ terdon 이봐, 잠깐만, 이것은 일종의 구름입니까 ??? 여전히 백업해야합니까? Sheesh, 삭제 된 파일을 복원하기 위해 자체 백업을 수행 해야하는 경우이 클라우드 기능은 무엇입니까? "cd"할 수있는 시간별 및 야간 스냅 샷은 어디에 있습니까? 백업은 데이터와 함께 클라우드가 갑자기 사라지는 상황에 대비해야하며 실제 재앙과 관련이없는 이러한 작은 실수는 아닙니다.
Kaz

2
ISP 지원 담당자가 거짓말을하거나 정보가 잘못되었을 수 있습니다. 또는 BOFH 일 수도 있습니다 . " 지금 충분한 공간이 있습니다"
msw September

답변:


17

삭제는 점점 더 신화 esp가되고 있습니다. 삭제 된 모든 항목이 바로 제로 아웃 (TRIM)되는 최신 하드웨어 (SSD)를 사용하면 다시 가져올 가능성이 없습니다.

가장 좋은 방법은 지금 가지고있는 것의 이미지를 만든 다음 원하는 도구를 사용하여 찾을 수있는 것이 있는지 확인하는 것입니다. 다음과 같은 것 :

ssh -C remoteserver dd if=/dev/theserverdisk bs=1M > local/disk.img

모든 쓰기 작업은이 시점에서 추가 손상 만 발생하므로이 작업을 위해 복구 시스템에 상자를 보관하거나 전체 상자를 고정 (읽기 전용)하는 것이 가장 좋습니다.

이미지가 완성되면 읽기 전용 루프 장치를 만들 수 있습니다.

losetup --find --show --partscan --read-only disk.img

그런 다음 루프 장치에서 원하는 구조 도구를 사용하십시오.


thx @frostschutz. 그러나 끝났다. 파일을 복구 할 수 없습니다.
RedLEON

~ 1GB의 데이터를 복구하는 데 도움이되었습니다. 서버 드라이브 유형 : SSD.
merqlove

그러나 디지털 법의학 및 준 군사적 간첩에 관심을 기울인 것은 무엇입니까? 하드웨어 중복 및 트릭에 대한 지식이 필요하지만 복구가 더 쉬워 집니까?
can-ned_food

3

다른 Linux / Unix / OSX 등의 시스템에 액세스 할 있는 sshfs경우 원격 폴더를 마운트하고 해당 폴더로 백업하는 데 사용할 있습니다 ( 여기 에서 수정 된 지시 사항 ).

  1. 서버에 설치sshfs

    yum install fuse sshfs
    

    EPEL 저장소를 아직 활성화하지 않은 경우 활성화 해야 할 수도 있습니다 .

  2. (퓨즈 모듈로드 서버를 )

    modprobe fuse
    
  3. 가정용 컴퓨터에서 디렉토리 선택 하고 CentOS 서버에 마운트 하십시오

    redleon@local$ mkdir /remote_backup
    

    이제 원격 서버 에서 이것을 실행하십시오.

    mkdir /backup
    sshfs root@1.2.3.4:/remote_backup /backup
    

    로컬 컴퓨터1.2.3.4 의 실제 IP 로 변경해야 합니다 .

이 작업이 완료되면 원격 파일 시스템이 로컬로 마운트되고이를 실행 ext4magic하여 백업하도록 지시 할 수 /backup있습니다. 나는 그것이 효과가 있다고 보장 할 수는 없지만 시도해 볼 가치가있는 것 같습니다.


2

복구를 위해 tmpfs램 디스크 를 사용하려고 시도 할 수 있습니다 . 물론 복구하려는 데이터 양에 충분한 여유 메모리가 있어야합니다.

일반적으로, frostschutz의 대답이 머리에 못을 박았다고 생각합니다. "삭제 취소"는 거의 효과가 없습니다. 이것이 당신에게 교훈이되고 백업을 만들어라.


그리고 객체와 서브 디렉토리 구조로 가득 찬 전체 디렉토리를 삭제하는 것은 단지 몇 개의 느슨한 파일보다 더 까다로울 것입니다.
Kaz


-2

많은 사람들이 질문에 대답하는 대신 여기에서 피해자를 쫓아 냈습니다. 피해자는 시스템이 클라우드 기반 인 것으로 식별했습니다. 백업없이 삭제했다고 가정하는 대신 백업이 있다고 가정하지 말고 백업에서 디렉토리를 복구해야합니까? 삭제를 취소해야한다면 그게 당신이하는 것입니다.

시스템이 ISP를 제공하는 시스템에서 호스팅되는 경우 정기적으로 백업을 수행합니다. 제대로 이해하고 응답하려면 올바른 질문을해야하지만 백업에서 디렉토리를 복구하거나 복원 할 수 있어야합니다. 마지막 백업 시간에 따라 일부 데이터가 손실 될 수 있습니다.

여기에 대한 답변은 시스템 백업 방법 및 빈도에 따라 다릅니다. 크론과 타르는 종종 소규모 시스템에서 사용되며, 단순하기 때문에 많은 대규모 시스템에서도이를 사용합니다. 그러나 사용 가능한 다른 도구가 있습니다.

이것이 1 인 시스템이 아닌 경우 IT 부서와 백업 방법이있을 가능성이 있습니다. IT 부서에서 도움을받을 수 있으므로 폴더 / 디렉토리를 직접 복원하지 말고 IT 부서로 이동하십시오.

이것이 홈 시스템이고 IT 부서이고 백업이 엄격하게 로컬 인 경우 CRON 및 TAR을 사용하여 백업을 수행 할 수 있습니다. CRON 설정을 확인하여 TAR 파일을 넣은 위치를 확인하십시오. tar 파일에서 정확한 경로와 이름을 찾으십시오.

 tar -tvf <backup name>.tar

언 타르.

 tar -xvf <backup name>.tar <directory name>

더 많은 정보를 얻으려면 man tar를, 물론 tar 및 백업 정보를 보려면 다른 Google을 수행하십시오.

향후 고려 사항에는 다른 백업 옵션이 포함되며 휴지통은 실제 삭제 대신 삭제를 입력 할 수 있습니다. 휴지통 유형 삭제는 항목을 실제로 삭제하지 않고 "trash"라는 디렉토리로 항목을 이동시키는 rm의 별명을 만드는 것을 포함합니다. 그런 다음 Cron을 사용하거나 비어있을 때 수동으로 비우거나 공간이 부족해지기 시작합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.