설치 대상으로 폴더에서 데이터 복구

설치 대상으로 폴더에서 데이터 복구

/acme데이터가 포함된 폴더가 있습니다 . 나는 /dev/centos/lv_acme그것을 설치했어야 했다는 것을 알았다 /acme. 온라인에서 최소한의 조사를 했는데 설치로 인해 데이터가 삭제되지 않은 것 같습니다. (지금 생각해보면 제가 읽은 내용을 오해한 것 같습니다.)

나는 명령을 실행했다.

mount /dev/centos/lv_acme /acme  

지금쯤이면 아시겠지만 /acme내 데이터는 더 이상 포함되지 않습니다. 거기에 있는 데이터를 복구할 수 있는 방법이 있나요 /acme?

답변1

마운트하면 데이터가 삭제되지 않지만 마운트 지점의 내용이 마운트된 파일 시스템(비어 있을 수 있음)으로 대체되므로 데이터가 숨겨질 수 있습니다. 물론 부작용(프로그램은 설치 방법에 따라 다르게 동작함)이 있을 수 있으므로 마운트 지점을 잘못 관리하면 상황이 여전히 심각하게 잘못될 수 있습니다.

빈 파일 시스템이 잘못된 위치에 마운트된 경우 간단히 마운트 해제하세요.

umount /acme

마운트를 해제하지 않고 마운트 지점 아래에 무엇이 있는지 확인하려면 상위 파일 시스템을 다른 곳에서 바인드 마운트할 수 있습니다.

mkdir /mnt/root
mount --bind / /mnt/root
ls /mnt/root/acme

더 많은 파일 시스템 계층이 서로 위에 마운트되어 있으면 더욱 어렵습니다. 구조를 활용 lsblk하고 cat /proc/mounts찾아보세요. 각 레이어를 임시 디렉토리에 별도로 번들 마운트하고 내용을 볼 수 있습니다.

이러한 바인드 마운트는 기본적으로 쓰기 가능하므로 파일을 변경하고, 이름을 바꾸고, 삭제할 수 있습니다. 읽기 전용 보기의 경우 --read-only.

답변2

단순한,

umount /acme

원래 /acme디렉터리는 마운트 지점 아래에 "숨겨져 있습니다".

디렉터리를 마운트 해제할 수 없는 경우에는 마운트를 해제하고 데이터를 다른 곳에 복사한 후 다시 마운트할 수 있습니다.

답변3

마운트된 파일 시스템을 마운트 해제할 수 없는 경우에도 임시 마운트 지점에 마운트하고 그런 방식으로 파일에 액세스하여 원래 파일 시스템에 액세스할 수 있습니다.

관련 정보