RAID 어레이에 오류가 발생하여 이제 다시 시작되지 않습니다. mdadm --examine은 드라이브가 정상임을 표시하지만 --assemble은 두 개의 디스크가 누락되어 실패합니다.

RAID 어레이에 오류가 발생하여 이제 다시 시작되지 않습니다. mdadm --examine은 드라이브가 정상임을 표시하지만 --assemble은 두 개의 디스크가 누락되어 실패합니다.

이것은 Mint 21.1 x64 Linux 시스템으로, 수년에 걸쳐 RAID 어레이에 디스크를 추가하여 현재 10개의 3TB 어레이와 5개의 6TB 어레이를 갖게 되었습니다. 컨트롤러 하나가 고장나서 4개의 HD가 어레이에서 각각 2개씩 누락되었습니다. 컨트롤러를 교체했지만 어레이가 작동하도록 복원되지 않았습니다. mdadm --assemble두 어레이 중 하나를 시작할 수 없고 디스크가 부족하다는 보고가 있습니다(각각 두 개씩 실패하므로 놀라지 않습니다). mdadm --runI/O 오류를 보고합니다(syslog에서는 모든 드라이브를 시작할 수 없기 때문에 이것이라고 제안하는 것으로 보이지만 명백히 불행한 두 드라이브를 시작하려고 시도했다는 표시는 없습니다). 하지만 여전히 mdadm --examine디스크에 오류가 발생하고 완전히 정상으로 보입니다. . 작동하는 드라이브의 출력은 다음과 같습니다.

mdadm --examine /dev/sda
/dev/sda:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : 829c0c49:033a810b:7f5bb415:913c91ed
           Name : DataBackup:back  (local to host DataBackup)
  Creation Time : Mon Feb 15 13:43:15 2021
     Raid Level : raid5
   Raid Devices : 10

 Avail Dev Size : 5860268976 sectors (2.73 TiB 3.00 TB)
     Array Size : 26371206144 KiB (24.56 TiB 27.00 TB)
  Used Dev Size : 5860268032 sectors (2.73 TiB 3.00 TB)
    Data Offset : 264192 sectors
   Super Offset : 8 sectors
   Unused Space : before=264112 sectors, after=944 sectors
          State : clean
    Device UUID : 6e072616:2f7079b0:b336c1a7:f222c711

Internal Bitmap : 8 sectors from superblock
    Update Time : Sun Apr  2 04:30:27 2023
  Bad Block Log : 512 entries available at offset 24 sectors
       Checksum : 2faf0b93 - correct
         Events : 21397

         Layout : left-symmetric
     Chunk Size : 512K

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

실패한 드라이브의 출력은 다음과 같습니다.

mdadm --examine /dev/sdk
/dev/sdk:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : 829c0c49:033a810b:7f5bb415:913c91ed
           Name : DataBackup:back  (local to host DataBackup)
  Creation Time : Mon Feb 15 13:43:15 2021
     Raid Level : raid5
   Raid Devices : 10

 Avail Dev Size : 5860268976 sectors (2.73 TiB 3.00 TB)
     Array Size : 26371206144 KiB (24.56 TiB 27.00 TB)
  Used Dev Size : 5860268032 sectors (2.73 TiB 3.00 TB)
    Data Offset : 264192 sectors
   Super Offset : 8 sectors
   Unused Space : before=264112 sectors, after=944 sectors
          State : clean
    Device UUID : d62b85bc:fb108c56:4710850c:477c0c06

Internal Bitmap : 8 sectors from superblock
    Update Time : Sun Apr  2 04:27:31 2023
  Bad Block Log : 512 entries available at offset 24 sectors
       Checksum : d53202fe - correct
         Events : 21392

         Layout : left-symmetric
     Chunk Size : 512K

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

편집: 두 번째 실패한 드라이브의 --examine 보고서는 다음과 같습니다. 보시다시피, 전체 어레이가 오프라인 상태가 되는 동시에 실패했습니다.

# mdadm --examine /dev/sdl
/dev/sdl:
          Magic : a92b4efc
        Version : 1.2
    Feature Map : 0x1
     Array UUID : 829c0c49:033a810b:7f5bb415:913c91ed
           Name : DataBackup:back  (local to host DataBackup)
  Creation Time : Mon Feb 15 13:43:15 2021
     Raid Level : raid5
   Raid Devices : 10

 Avail Dev Size : 5860268976 sectors (2.73 TiB 3.00 TB)
     Array Size : 26371206144 KiB (24.56 TiB 27.00 TB)
  Used Dev Size : 5860268032 sectors (2.73 TiB 3.00 TB)
    Data Offset : 264192 sectors
   Super Offset : 8 sectors
   Unused Space : before=264112 sectors, after=944 sectors
          State : clean
    Device UUID : 35ebf7d9:55148a4a:e190671d:6db1c2cf

Internal Bitmap : 8 sectors from superblock
    Update Time : Sun Apr  2 04:27:31 2023
  Bad Block Log : 512 entries available at offset 24 sectors
       Checksum : c13b7b79 - correct
         Events : 21392

         Layout : left-symmetric
     Chunk Size : 512K

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

두 번째 어레이인 5x6TB는 2분 후 두 개의 디스크가 종료되면서 오프라인 상태가 되었습니다. 이 어레이에 있는 두 개의 고장난 디스크와 다른 어레이에 있는 두 개의 디스크는 모두 단일 4포트 SATA 컨트롤러 카드에 연결되어 있으며 이는 당연히 교체되었습니다.

여기서 가장 흥미로운 점은 실패한 드라이브가 스스로 살아있는 것으로 보고하는 것처럼 보이지만 mdadm이에 동의하지 않는다는 것입니다. journalctl4월 2일까지 돌아가지 않는 것 같아서 무슨 일이 일어났는지 알 수 없을 수도 있습니다. 이 짐승을 다시 온라인으로 가져오기 위해 내가 무엇을 할 수 있는지에 대한 아이디어가 있는 사람이 있나요?

답변1

  1. 잠재적으로 파괴적인 명령을 시도하기 전에 항상 어레이에 있는 모든 드라이브의 이미지 수준 백업을 만드십시오 mdadm. 이러한 백업을 사용하면 나중에 상자 외부의 VM에서 복구를 시도할 수 있습니다.
  2. 드라이브가 어레이에서 떨어졌을 때 이벤트의 정확한 순서를 확인하려면 Update time의 출력에서 ​​실패한 드라이브에 대한 필드를 검사하십시오 . mdadm --examine /dev/sdX때로는 첫 번째 드라이브 오류가 눈에 띄지 않고 이전 드라이브를 온라인으로 전환하면 파일 시스템을 마운트하려고 할 때 치명적인 오류가 발생하는 경우가 있습니다.
  3. 귀하의 경우 두 드라이브가 동시에 실패했으므로 mdadm --assemble --force /dev/mdX또는 를 사용하여 어레이를 온라인으로 강제 실행하는 것이 안전합니다 mdadm --assemble --force --scan. 그렇지 않은 경우 에 대한 어레이 구성원 드라이브를 지정하여 어레이에서 떨어진 마지막 드라이브만 온라인으로 강제 실행해야 합니다. mdadm --assemble --force /dev/mdX /dev/sda /dev/sdb missing /dev/sdd드라이브 순서가 중요합니다.
  4. 명시적인 장치 목록을 통해서만 작업을 수행할 수 있었기 때문에 assemble귀하의 어레이가 현재 오프라인으로 표시된 성능 저하 상태에 있다고 생각합니다 /dev/sdh. 결과 cat /proc/mdstat를 조사하여 백업을 수행하고 하드웨어 문제를 해결한 후 어레이를 완전히 재구축하십시오.

관련 정보