지난번 그 삽질을 하고도 분이 안 풀렸나 봅니다. 아래 내용은 삽질하며 삽질한 내용을 적어놓은 블로그 글인데, 지금 읽어보니까 무슨 말인지 잘 모르겠습니다.. 참고만 해가면서 복구하시는게 좋을 것 같습니다. (20200303 수정)
삽질 일기
그냥 무심결에 오류를 해결하려고 초기화 버튼을 눌렀는데 다시 설치하려는데 하드를 날릴 것이라는 협박을 받았습니다.
다행히 RAID1로 두개 구성해놔서 한 하드는 그냥 날리고, 나머지 한개로 날린 하드로 데이터 옮겨서 재구성하면 되겠다는 생각만 가지고 그냥 초기화해 버렸습니다.
여기까지는 순조로웠습니다.
raid1로 구성된 하드 하나를 마운트하려는데, 계속 오류만 보이는 겁니다.
(4시간 이상 삽질해서 해결했습니다.. ㅠㅠ)
외국 게시글을 참고해서 진행하였습니다.
(http://www.das-werkstatt.com/forum/werkstatt/viewtopic.php?f=24&t=1954)
일단하드 superblock의 위치를 찾아야 합니다. (제 경우에는 /dev/md9 였습니다.)
찾았으면 아래 명령어를 입력합시다.
mdadm -A -R /dev/md9 /dev/sda5
입력하게 되면 아래처럼 표시되며 무언가 시작됩니다. (도달하기까지 4시간 걸렸네요..)
mdaadm: /dev/md9 has been started with 1 driver (ot of 2).
이제 마운팅해 봅시다. (/mnt/hdd 폴더를 미리 만들었다는 가정 하에)
mount /dev/md9 /mnt/hdd
그러나..
mount: unknown filesystem type 'linux_raid_member'
라는 오류와 함께 마운팅이 안됩니다..
지금 우리가 구성중인것은 리눅스의 소프트 RAID라네요.
그래서 우리는 레이드 정보를 봐야합니다. 하지만 소프트 RAID는 /proc/mdstat으로 안보인다네요.
그래도 스캔 방법은 있습니다.
mdadm --assemble --scan
로 하면 보입니다.
소프트 RAID 파티션들이 이제 /dev/mdx 에 보인다고 했지만, 보는 법을 몰라서 넘어갔습니다.
하지만 위에 것 들은 아무 소용이 없고 아래 명령어를 쳐 줘야 합니다.
mdadm -A -R /dev/md(1~99중 아무 숫자나) 하드데이터위치
자 다시 위쪽에서 새로 만든 /dev/md* 폴더를 마운트를 해 봅시다.
mount: unknown filesystem type 'LVM2_member'
그러나 이번에도 오류가 났습니다.
이번엔 볼륨에 대해 알아봐야 합니다.
pvscan
이라 쳐 주면 된다 하는데 전 안쳤습니다.
그리고 lvldisplay 명령어로 위치를 찾을 수 있습니다.
제 경우에는 위치가 /dev/vg1000/lv였습니다.
LV Status NOT available 라 떠 있으면 안됩니다. 이것을 활성화 시키려면 다음과 같이 입력하시면 됩니다.
vgchange -a y
다시
lvdisplay
를 쳐 보면 LV Status available라 뜹니다.
이제 마운트를 해 봅시다!
mount -o ro /dev/vg1000/lv /mnt/hdd
이제 /mnt/hdd로 가보면 마운트되어 있습니다!
저는, 또 똑같이 다른 디스크로 데이터를 복사해야 하니 다른 디스크도 인식시키려는데..
그룹이 겹쳤습니다.
이럴땐 vgrename 명령어를 사용하면 됩니다.
vgdisplay 명령어
를 입력하면 UUID가 뜹니다. 이 UUID를 이용해서 vgrename UUID 바꿀이름 처럼 명령어릴 입력하면 됩니다.
vgrename aaaaaa-aaaa-aaaa-aaaa-aaaa-aaaa-aaaaaa name2
근데 쉽게 끝나지 않네요.... 이상한 곳에 마운트 된 두번째 하드를 겨우 찾았습니다.
저번 포스팅에서 놔왔던 명령어로 하드를 복사하여 주면 됩니다.
cp -r /mnt/hdd /volume1/hddbackup
이제 마음 편히 잘 수 있을 듯 합니다. :)