
저는 debian, raid1을 사용하고 있는데 드라이브 중 하나가 죽은 것 같습니다.
root@rescue ~ # cat /proc/mdstat
Personalities : [raid1]
md1 : active raid1 sda2[0]
486279424 blocks [2/1] [U_]
md0 : active raid1 sda1[0] sdb1[1]
2104448 blocks [2/2] [UU]
unused devices: <none>
root@rescue ~ #
헬스 하드만 사용 가능한가요? 습격을 제거해야합니까? 그렇다면 어떻게? 감사해요!
답변1
/dev/sdb가 완전히 종료되지 않은 것 같지만 간헐적인 오류나 불량 블록이 있을 수 있습니다. 아마도 실패하고 문제가 발생한 현재 디스크가 있는 미러에 파티션을 다시 추가할 수 있습니다.
방법은 다음과 같습니다.
mdadm --remove /dev/md1 /dev/sdb2
(/dev/sdb2가 첨부되지 않았다고 불평할 수도 있습니다. 괜찮습니다)
mdadm --add /dev/md1 /dev/sdb2
그런 다음 다음을 수행하십시오.
고양이 /proc/mdstat
예상 소요 시간을 포함하여 재구축되는 모습을 볼 수 있습니다.
작동하는지 확인하세요. 그렇지 않은 경우(/dev/sdb2가 실제로 손상됨) 모든 미러에서 드라이브를 실패시키고, sdb를 제거하고, 동일한 크기의 드라이브를 추가하고, 새 드라이브를 파티션하고, 파티션을 다시 미러에 추가해야 합니다. 어떤 드라이브가 sdb인지 확실하지 않으면 다음을 시도해 보십시오.
dd if=/dev/sdb of=/dev/null count=40000
서버 전면에 디스크 활동을 나타내는 LED가 있다고 가정하면 위의 디스크 덤프 중에 녹색으로 계속 켜져 있는 LED가 드라이브 sdb입니다. (또는 이 논리를 뒤집어 sda가 녹색으로 빛나서 드라이브가 제거되지 않음을 나타낼 수도 있습니다). 어떤 디스크가 어떤 디스크인지 파악한 후에는 언제든지 dd 명령을 Control-C하는 것이 안전합니다. dd 명령은 단지 디스크에서 스트림을 읽고 무시하는 것입니다. if=와 of=를 혼동하지 않는 한 거기에 아무 것도 기록되지 않습니다.
답변2
예, 정상적인 드라이브만 사용할 수 있습니다. 그것은 이미 일어난 일입니다. 실패한 파티션이 sdb2인 것 같습니다. 실제로 나쁘지 않다고 의심되는 경우 실패한 파티션/드라이브에 대해 불량 블록을 실행할 수 있습니다.
부트로더를 어떻게 구성했는지 잘 모르겠지만 올바르게 설정했다면 실패한 드라이브를 꺼내서 교체할 수 있을 것입니다.
어떤 드라이브가 어느 드라이브인지 확실하지 않은 경우 다음과 같은 명령을 사용하면 lshw -class disk
드라이브의 논리적 이름과 일련 번호가 모두 표시됩니다. 이렇게 하면 올바른 드라이브를 꺼낼 수 있습니다.