[½Ã³î·ÎÁö/Çì³î·ÎÁö]º¼·ý»ç¶óÁü µî ÇÏµå ºÒ·®½Ã µ¥ÀÌÅͺ¹±¸ ¹æ¹ý °øÀ¯

   Á¶È¸ 9722   Ãßõ 2    

안녕하세요.

예전에 네이버 시놀로지포럼에 나스 하드 불량으로 인한 데이터
복구방법에 대해 자문자답으로 올린내용이 있었습니다.
 현재까지도 상당수 분들께서 복구 방법에 대해 문의를 주시는데요
오래되어 기억이 가물가물 한지라 조금씩 짜집기 하여 이력남기기 및
공유하려 합니다.


 ◎ 난이도 : 중,하 정도인데 네이버 및 구글에 교차검색하시면 그나마 쉽게 따라 하실수 있습니다.

 ◎ 증상 : 볼륨 사라짐 증상으로 하드 탈실장(물리적) 또는 DSM 재설치 후에도 볼륨 복구 불가시 임시조치 방법

 ◎ 준비물 : 외장하드, 제어판 SSH 활성화
   ※다른 볼륨(하드)에 여유공간이 충분한 경우 불필요
   
볼륨이 사라지는 증상은 하드 노후 또는 불량으로 한두번 발생되기 시작하다 향후에는 아예 복구가 안되는 지경까지 왔습니다.

우분투 설치하여 해보았지만 재경우에는 파티션을 읽어 오는데 실패하였씁니다.
저는 메인 하드 불량으로 새로운 정상하드에 DSM을 설치하여 작업을 진행하였고 서브 하드 불량이면 재설치 없이 바로 진행하셔도 됩니다.

(sde 2TB 디스크가 불량이라고 가정하였음)


① SSH 접속(putty 사용함)
  ※ 로그인 및 관리자 권한 획득
login as: ****
****@***.***.***.***'s password: ********
~~~~~~~~~~~~~~
****@YS-MEDIA-NAS:/$ sudo -i
Password: ********
root@YS-MEDIA-NAS:~#
 


② fdisk -l , cat /proc/mdstat , ls /dev/sd* 영역 확인
  ※ 불량 하드 영역 확인(여기서 확인이 안되면 복구 불가/완전 사망)
     나스에서는 볼륨 확인이 불가능하나 fdisk 명령어로 디바이스가 조회될시에는 복구 가능하는 말입니다.
     
root@YS-MEDIA-NAS:~# fdisk -l
Disk /dev/ram0: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram1: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram2: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram3: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram4: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram5: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram6: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram7: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram8: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram9: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram10: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram11: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram12: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram13: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram14: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/ram15: 640 MiB, 671088640 bytes, 1310720 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

※ dev/ram 영역은 확인 불필요하여 제외 하시면 됩니다.


Disk /dev/sda: 7.3 TiB, 8001563222016 bytes, 15628053168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 547557CB-DF9C-49E4-B3C9-48C2360CC621

Device       Start         End     Sectors  Size Type
/dev/sda1     2048     4982527     4980480  2.4G Linux RAID
/dev/sda2  4982528     9176831     4194304    2G Linux RAID
/dev/sda3  9437184 15627848351 15618411168  7.3T Linux RAID


Disk /dev/sdb: 7.3 TiB, 8001563222016 bytes, 15628053168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 550F3085-59CC-47DB-94D3-C7E7238D9021

Device       Start         End     Sectors  Size Type
/dev/sdb1     2048     4982527     4980480  2.4G Linux RAID
/dev/sdb2  4982528     9176831     4194304    2G Linux RAID
/dev/sdb3  9437184 15627848351 15618411168  7.3T Linux RAID


Disk /dev/sdd: 7.3 TiB, 8001563222016 bytes, 15628053168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: C474FD70-DAE0-4121-9E5B-B12BC00E4C9F

Device       Start         End     Sectors  Size Type
/dev/sdd1     2048     4982527     4980480  2.4G Linux RAID
/dev/sdd2  4982528     9176831     4194304    2G Linux RAID
/dev/sdd3  9437184 15627848351 15618411168  7.3T Linux RAID


Disk /dev/sde: 1.8 TiB, 3*910***6*42* bytes, 3907029168 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: dos
Disk identifier: 0xc095048f

Device     Boot   Start        End    Sectors  Size Id Type
/dev/sde1          2048    4982527    4980480  2.4G fd Linux raid autodetect
/dev/sde2       4982528    9176831    4194304    2G fd Linux raid autodetect
/dev/sde3       9437184 3906824351 3897387168  1.8T fd Linux raid autodetect


Disk /dev/md0: 2.4 GiB, 2549940224 bytes, 4980352 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/md1: 2 GiB, 2147418112 bytes, 4194176 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/zram0: 1.2 GiB, 1248854016 bytes, 304896 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/zram1: 1.2 GiB, 1248854016 bytes, 304896 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/zram2: 1.2 GiB, 1248854016 bytes, 304896 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/zram3: 1.2 GiB, 1248854016 bytes, 304896 sectors
Units: sectors of 1 * 4096 = 4096 bytes
Sector size (logical/physical): 4096 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes

※ dev/zram 영역은 확인 불필요하여 제외 하시면 됩니다.


Disk /dev/md3: 7.3 TiB, 7996625453056 bytes, 15618409088 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/md5: 7.3 TiB, 7996625453056 bytes, 15618409088 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/md2: 7.3 TiB, 7996625453056 bytes, 15618409088 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes


Disk /dev/md4: 1.8 TiB, 1995461165056 bytes, 3897385088 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
root@YS-MEDIA-NAS:~# 


root@YS-MEDIA-NAS:~# cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md4 : active raid1 sde3[0]                <--- 하드가 불량일시에는 md4에 sde3이 액트브 되어있지 않겠죠!!
      1948692544 blocks super 1.2 [1/1] [U]

md2 : active raid1 sdb3[0]
      7809204544 blocks super 1.2 [1/1] [U]

md5 : active raid1 sdd3[0]
      7809204544 blocks super 1.2 [1/1] [U]

md3 : active raid1 sda3[0]
      7809204544 blocks super 1.2 [1/1] [U]

md1 : active raid1 sda2[0] sdb2[1] sdd2[4] sde2[3]
      2097088 blocks [12/4] [UU_UU_______]

md0 : active raid1 sda1[2] sdb1[0] sdd1[4] sde1[3]
      2490176 blocks [12/4] [U_UUU_______]

※ md0,md1 영역은 운영체제 공간임으로 확인할 필요가 없음

unused devices:


root@YS-MEDIA-NAS:~# ls /dev/sd*
/dev/sda   /dev/sda3  /dev/sdb2  /dev/sdd1  /dev/sde   /dev/sde3
/dev/sda1  /dev/sdb   /dev/sdb3  /dev/sdd2  /dev/sde1
/dev/sda2  /dev/sdb1  /dev/sdd   /dev/sdd3  /dev/sde2

※ ls /dev/sd* 명령어는 모든 하드 영역을 표기함
   sda1,sda2,sda3 디바이스들이 sda 디스크 라고 표기되며
   sdb1,sdb2,sdb3 디바이스들이 sdb 디스크 라고 표기됨
   따라서 sda,sdb,sdd,sde 총 4개의 디스크가 있다는 뜻임
   1,2 디바이스는 시놀로지 운영체제 및 swap사용 디바이스이며
   3번이 주로 데이터 영역입니다. usb 외장하드인경우 주로 5번 이상 입니다.
   예제로 sde 2TB 하드가 불량으로 가정함.(fdisk에서 용량 확인가능)

 → fdsik 및 /proc/mdstat 명령어로 하드 용량 추정하여 해당 디스크를 찾은 후
   불량난 하드 또는 불량난하드를 외장하드에 연결하였을시 해당 디바이스를 찾습니다.
   ※ 추가 설명하자면 fdisk -l 명령어로 바로 찾으실수 있으나 조금 편리하게
      찾기 위해 cat /proc/mdstat 명령어로 먼저 추정가능합니다.
      가급적 작업하실때 같은 용량의 하드가 여러장 꽂혀 있다면 불필요 하드는
      전원선을 빼서 제거 하시고 복구할 하드 불량하드 2개만 꽂아서 하시면
      수월한 작업이 가능합니다.


③ 루트 폴더에서 새로운 폴더 생성 및 불량 하드(외장하드)마운트

root@YS-MEDIA-NAS:~# ls /
bin     etc.defaults  lib64       run      usr           volume3
boot    exfat         lost+found  sbin     var           volume4
config  initrd        mnt         sys      var.defaults  volumeUSB1
dev     lib           proc        tmp      volume1       volumeUSB2
etc     lib32         root        tmpRoot  volume2

root@YS-MEDIA-NAS:~# mkdir /volume6
 → 우선 volume6 이라는 폴더를 생성하고 여기에 불량난 하드를 마운트 합니다.

※ 마운트할 하드를 정확이 찾았다면 해당 디스크를 바로 마운트 하시고 좀더 확인이 필요할시에는
   mdadm --examine /dev/sde3 명령어로 세부 정보를 확인함

root@YS-MEDIA-NAS:~# mount /dev/md4 /volume6
 → /dev/md4 는 fdisk 또는 /proc/mdstat 에서 확인된 데이터 영역/dev/sde3 입니다.(가정)
 → 마운트 패일시 아래 계속 진행

root@YS-MEDIA-NAS:~# mdadm --examine /dev/sde3
/dev/sde3:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x0
     Array UUID : 688072e4:bfd39f1c:30e4b2e8:d157cd51
           Name : YS-MEDIA-NAS:4  (local to host YS-MEDIA-NAS)
  Creation Time : Tue Sep 11 09:31:12 2018
     Raid Level : raid1
   Raid Devices : 1

 Avail Dev Size : 3897385120 (1858.42 GiB 1995.46 GB)
     Array Size : 1948692544 (1858.42 GiB 1995.46 GB)
  Used Dev Size : 3897385088 (1858.42 GiB 1995.46 GB)
    Data Offset : 2048 sectors
   Super Offset : 8 sectors
   Unused Space : before=1968 sectors, after=32 sectors
          State : clean
    Device UUID : 0e430c1e:0972e93f:0422ba01:90c06c04

    Update Time : Thu May  2 10:31:17 2019
       Checksum : b34dafa5 - correct
         Events : 41


   Device Role : Active device 0
   Array State : A ('A' == active, '.' == missing, 'R' == replacing)


root@YS-MEDIA-NAS:~# mdadm --assemble --force /dev/md4 /dev/sde3
 → 확인된 불량 하드의 데이터영역sde3를 md4에 연결(fdisk 확인)


 
④ 볼륨확인 및 마운트(위에서 마운트 패일발생시 계속 진행)

root@YS-MEDIA-NAS:~# pvs /dev/md4

PV VG Fmt Attr PSize PFree

/dev/md4 vg1000 lvm2 a-- 1.8t 0
 → md4 볼륨명은 vg1000 임.. 대부분 해당 볼륨명으로 명기됨

root@YS-MEDIA-NAS:~# vgchange vg1000 -ay
1 logical volume(s) in volume group "vg1000" now active
 → sde3 > md4 > vg1000 확인된 볼륨을 활성화 시킴

root@YS-MEDIA-NAS:~# mount /dev/vg1000/lv /volume6
 → 루트 폴더에 생성한 volume6 폴더에 마운트 시킴
 

⑤ 마지막... 데이터 카피(복구)
root@YS-MEDIA-NAS:~# scp -rv /volume6 /volume1
 → 마운트 된 불량하드(volume6) 데이터를 복사할 하드(volume1)에 전체 카피함


대충 여기까지 입니다.

다른 분들이 보내주신 자료등으로 짜집기 하였으며 해당 컴퓨터 사양 및 레이드 유형에따라 디바이스 및 볼륨 정보등이 다를수 있으니 참고 하시면 되겠습니다.

현재 모든 하드디스크가 신품으로 교체되어 불량 환경에서는 테스트 할수 없었습니다.

제 방법으로 무조건 복구 된다는 것은 아닙니다. 하드디스크가 물리적으로 사망시에는 불가능합니다.

ªÀº±Û Àϼö·Ï ½ÅÁßÇÏ°Ô.
greenran 2019-05
À¯¿ëÇÑ Á¤º¸ °¨»çÇÕ´Ï´Ù!
¾È³çÇϼ¼¿ä, Á¶¾ðÁֽŴë·Î ÁøÇà ÁßÀε¥, md+¼ýÀÚ°¡ ±âÁ¸ ssd¸¸ Á¸ÀçÇÏ°í º¹±¸ÇÒ hdd, º¹±¸Çؼ­ ºÙ¿©³ÖÀ» »õ hdd´Â ¶ßÁö ¾Ê½À´Ï´Ù. Ȥ½Ã ¾î¶»°Ô ÁøÇàÇØ¾ß ÇÒ±î¿ä?
Greeneyes 2023-07
fdisk ¿¡¼­ md ¾È¶ß¸é º¹±¸ ºÒ°¡´ÉÇÑ°Å°ÚÁÒ?
º¹±¸Ãµ»ç ½ºÄµµ¹¸®´Ï Æú´õ´Â º¸¿©¼­¿ä..


NAS