소프트웨어 개발용으로 리눅스 데탑을 메인으로 사용하는데요
살다보니 이런 실수를 하게 되네요;;
노트북에 멀티 부팅으로 win10 / linux mint 18.3 을 사용중인데요
터미널 파일시스템 최상위 경로에서
rm -rf ./
이 명령어가 실행되고 말았습니다...........
혹시나 싶어서 grub에서 민트 리눅스 리커버리 모드로 부팅을 시도하였지만 커널 패닉이 나고요..
당연히 정상부팅으로는 부팅이 안되더라구요..
파일을 확인해야 되어서 윈도우즈로 부팅해서 리눅스 파티션을 인식해보니깐 파일들을 모두 있는 걸로 확인했네요.
그나마 다행이고 단념중이긴 한데요 이런 상황에서 복구가 가능할까요?
/Vollago
/Vollago
윈도우즈에서 리눅스 파티션을 살펴보면은 첨부한 이미지처럼 나오는데요.
사실 어떤 파일들이 삭제되었는지가 저도 명확하게 확인이 안되네요.
시스템 파일들을 구해서 복사하는 방법으로도 복구가 가능할까요?
혹시 다른 정보라는게 어떤게 필요할지 궁금하네요.
다시 한번 댓글 감사드려요.
부족한 정보라 함은 우선적으로 '어떤' 복구를 원하시는지가 안나와 있습니다.
어떤 특정 파일이 필요한데 윈도우 탐색시에 나오지 않는다.. 복구가 가능합니까..? 라던지
사용전의 상태로 SYSTEM적으로 다시 구동가능하게 복구를 원하시는 것인지..
또한 삭제된 리스트가 단순히 부트로더쪽 파일만 인지 아닌지에 따라서도 복구여하 또는 방법이 갈립니다.
rm 명령을 시작하시고 어느정도 시간이 지났는지도 확인에 필요합니다. 보통 전체 삭제를 실행 하면 알파벳 순으로 삭제가 진행이 됩니다. /a 로시작하는 경로가 없으니 boot가 먼저일텐데 dir이 있는걸로 봐서는 실행후 금방 종료하신걸로 보입니다만, 그게 아니라면 OS 재설치후 기존 DISK의 파일로 재 세팅하는게 빠릅니다.
rm 명령을 금방 끊으신게 맞다면 boot dir의 파일만 복구해주면 되기 때문에 매우 간단합니다.
그리고 rm 명령은 기본적으로 dir내부의 파일들을 가장 안쪽부터 삭제를 진행하고 최종적으로 dir을 삭제하기 때문에 올려주신 스크린샷 만으로는 저 dir 내부에 파일들이 있다고 판단 할수가 없습니다.
간단하게 상황을 상정해서 말씀을 드리면 ,
1. 어떠한 특정 파일들만 찾아서 복구를 하고싶다.(문서나 이미지, 또는 어플리케이션의 설정 등 Non System Files)
- 그럼 이미 저 상황에서 파일을 찾아서 있다면 복구 하셨을 거라 판단하고 이 상황은 넘어갑니다..
- 이미 삭제가 되었다면.. 복구업체를 알아보셔야 합니다만 아랫분 말씀처럼 SSD라면 좀 힘듭니다..
2. 일부 시스템 파일만 사라져서 부팅에 문제가 있고 OS를 구동하고 싶다.
- 부팅에 필요한 일부 파일만 가져와서 넣어주면 부팅이 됩니다.. 보통 /boot /usr /lib /lib64 /var /etc 정도 복구해주시면 대부분 올라옵니다. 위에서 말씀드렸듯이 rm을 금방 종료하셔서 boot내의 일부 파일만 사라졌다면, boot 내의 파일만 살려주변 됩니다. 간단하게 구하는 방법은 동일 PC 다른 DISK에 설치 후 rsync 로 동기화 해주면 되시고, 아니시면 부팅 매체(USB나 CD)로 rescue cd를 만드셔서 부팅 후 grub-install 해주시는방법도 있습니다.
- 다른방법으로는 DISK에 사용하던 OS를 그대로 설치 후, 기본적인 시스템 설정이 있는 /etc, 사용자 홈이 있는 /home , /root 정도만 새 OS로 복사하여 부팅해봅니다. 물론 /etc/fstab 파일이 요즘은 uuid로 매칭되어 있어 복사하시면 에러가 날테니 fstab 파일은 제외를 하시구요..
졸려서 주절주절 생각나는대로 쓰다보니 말이 이상한 부분이 있을지도 모르겠으나.. 생각나는 상황에 대해서 써봤고요..
글을 쓰다보니 파악되는 일부 정보로 '예상'되는 사항을 간단하게 말씀드리면
1. /boot 내부의 일부파일만 유실 하셔서 부팅에만 문제가 생긴걸로 보인다.
2. 부팅을 하면 grub메뉴가 선택가능하게 나오는걸로 봐서는(grub 관련 파일이 모두 삭제되면 grub> 이라는 프롬프트만 나옴) /boot/grub/grub.conf 파일은 존재 하는것으로 판단 됨.
3. /boot/grub/grub.conf 파일을 메모장에서 열어 보시면
root (hd0,0)
kernel /boot/vmlinuz-2.6.32-696.10.2.el6.x86_64 ro root=UUID=f11dc784-d784-4697-923a-50504170cf8b rd_NO_LUKS rd_NO_LVM LANG=en_US.UTF-8 crashkernel=auto consoleblank=0 rd_NO_MD SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us rd_NO_DM
initrd /boot/initramfs-2.6.32-696.10.2.el6.x86_64.img
이런식으로 부팅이미지의 경로와 파일명이 나옵니다. 해당 파일이 존재하는지 확인 후 다른 시스템에서 복사 하는등의 행위로 구해서 넣어 주시거나, 버전이 조금 다른 파일을 구했다면 , 또는 boot 경로내에 다른 버전의 파일이 남아 있다면, 해당 파일로 지정해주시고 해당버전 kernel 파일을 복사하거나 설치해주시면 부팅이 될 것입니다.. /lib/modules/아래에 동일 버전의 파일들이 있어야 하거든요..
01:59에 앉았는데 벌써 시간이.. 내일도 개미처럼 출근을 해야 하는 몸이기에.. 이만 줄입니다.
한낱 미천한 지식이 도움이 되시길 바랍니다...
감사하고 죄송합니다.
혹시나 저같은 경우가 있으신 분들을 위해서 간단히 정리해보면은..
1. 파일을 구해서 덮어쓰기를 해서 부팅을 시도했는데요, 이유는 모르겠지만
부팅시에 커널 패닉이 계속 일어났습니다. 부팅 파일이 아닌 최상위 경로의 "."를 삭제해서
파일시스템에 문제가 있어서 커널 패닉이 일어난다는 "추측"만 했습니다.
2. 복구 업체 다섯군데정도 연락을 해서 물리적으로 복구가 가능할 까 싶어서요.
근데 SSD+리눅스 데탑은 복구 가능성이 거의 없다는 답만 들었습니다.
3. 출장 때문에 급해서 결국 재설치를 해서 해봤네요. 하드웨어 관련 소프트웨어라
특정 라이브러리 의존성때문에 시간이 많이 걸렸네요 ㅠㅡㅠ
4. 이번 기회에 가상화 기술을 도입해야겠다는 생각과..백업의 중요성을 다시 한번 느끼네요..
늦은 시간에 댓글 달아주셨는데, 감사하다는 말이 늦어져 죄송해요. 행복한 하루 되셔요!
스스디는 한번 삭제하시면 하드웨어적인 특성때문에 복구가 불가능합니다.
현재 깔린 패키지 전체 재설치 명령이 apt-get 옵션에 있나요? >.<
https://support.hpe.com/hpsc/doc/public/display?docId=emr_na-c03341922
댓글 감사해요..^^