NVMe M.2 SSD 실패, 파일 시스템 손상, 쓸 수 없음; 그래도 닦아도 돼?

NVMe M.2 SSD 실패, 파일 시스템 손상, 쓸 수 없음; 그래도 닦아도 돼?

내 Samsung 970 EVO M.2 500GB SSD(MZ-V7E500BW)가 어제 정전으로 인해 갑자기 작동하지 않았습니다.

이제 POST 중에 경고가 표시됩니다("경고! 데이터를 백업하고 하드 디스크 드라이브를 교체하십시오. 경고! HDD/SSD가 언제든지 충돌할 수 있습니다."). 이 전에 마지막으로 재부팅한 것은 약 5일 전이었고 당시에는 경고가 표시되지 않았습니다.

라이브 USB 스틱을 부팅하여 SMART 로그를 확인할 수 있었습니다.

Smart Log for NVME device:nvme0 namespace-id:ffffffff
critical_warning                        : 0x8
temperature                             : 49 C
available_spare                         : 29%
available_spare_threshold               : 10%
percentage_used                         : 0%
endurance group critical warning summary: 0
data_units_read                         : 4,948,748
data_units_written                      : 20,573,476
host_read_commands                      : 100,316,217
host_write_commands                     : 357,643,056
controller_busy_time                    : 1,790
power_cycles                            : 24
power_on_hours                          : 4,570
unsafe_shutdowns                        : 11
media_errors                            : 41
num_err_log_entries                     : 70
Warning Temperature Time                : 0
Critical Composite Temperature Time     : 0
Temperature Sensor 1           : 49 C
Temperature Sensor 2           : 74 C
Thermal Management T1 Trans Count       : 0
Thermal Management T2 Trans Count       : 0
Thermal Management T1 Total Time        : 0
Thermal Management T2 Total Time        : 0

nvme라이브 USB OS를 시작하는 동안 언급되는 커널의 메시지 :

Oct 26 19:18:58 ubuntu kernel: [    1.233479] nvme nvme0: pci function 0000:06:00.0
Oct 26 19:18:58 ubuntu kernel: [    1.243303] nvme nvme0: missing or invalid SUBNQN field.
Oct 26 19:18:58 ubuntu kernel: [    1.243323] nvme nvme0: Shutdown timeout set to 8 seconds
Oct 26 19:18:58 ubuntu kernel: [    1.252449] nvme nvme0: 4/0/0 default/read/poll queues
Oct 26 19:18:58 ubuntu kernel: [    1.254855]  nvme0n1: p1 p2 p3
Oct 26 19:18:58 ubuntu kernel: [    3.629244] EXT4-fs (nvme0n1p2): INFO: recovery required on readonly filesystem
Oct 26 19:18:58 ubuntu kernel: [    3.629246] EXT4-fs (nvme0n1p2): write access will be enabled during recovery
Oct 26 19:18:58 ubuntu kernel: [    3.674861] blk_update_request: critical medium error, dev nvme0n1, sector 124928 op 0x1:(WRITE) flags 0x800 phys_seg 4 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.674893] Buffer I/O error on dev nvme0n1p2, logical block 0, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.674913] Buffer I/O error on dev nvme0n1p2, logical block 1, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.674931] Buffer I/O error on dev nvme0n1p2, logical block 2, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.674949] Buffer I/O error on dev nvme0n1p2, logical block 3, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.674967] blk_update_request: critical medium error, dev nvme0n1, sector 133200 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.674995] Buffer I/O error on dev nvme0n1p2, logical block 1034, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.675013] blk_update_request: critical medium error, dev nvme0n1, sector 133384 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.675040] Buffer I/O error on dev nvme0n1p2, logical block 1057, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.675059] blk_update_request: critical medium error, dev nvme0n1, sector 147176 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.675086] Buffer I/O error on dev nvme0n1p2, logical block 2781, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.675105] blk_update_request: critical medium error, dev nvme0n1, sector 4319360 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.675132] Buffer I/O error on dev nvme0n1p2, logical block 524304, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.675151] blk_update_request: critical medium error, dev nvme0n1, sector 4319488 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.675178] Buffer I/O error on dev nvme0n1p2, logical block 524320, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.675197] blk_update_request: critical medium error, dev nvme0n1, sector 4319544 op 0x1:(WRITE) flags 0x800 phys_seg 2 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.675224] Buffer I/O error on dev nvme0n1p2, logical block 524327, lost async page write
Oct 26 19:18:58 ubuntu kernel: [    3.675243] blk_update_request: critical medium error, dev nvme0n1, sector 4319816 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.675270] blk_update_request: critical medium error, dev nvme0n1, sector 4320256 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.675297] blk_update_request: critical medium error, dev nvme0n1, sector 4320936 op 0x1:(WRITE) flags 0x800 phys_seg 1 prio class 0
Oct 26 19:18:58 ubuntu kernel: [    3.729319] EXT4-fs (nvme0n1p2): error loading journal
Oct 26 19:18:58 ubuntu kernel: [    3.743157] EXT4-fs (nvme0n1p3): INFO: recovery required on readonly filesystem
Oct 26 19:18:58 ubuntu kernel: [    3.743158] EXT4-fs (nvme0n1p3): write access will be enabled during recovery
Oct 26 19:18:58 ubuntu kernel: [    3.806113] EXT4-fs (nvme0n1p3): error loading journal
Oct 26 19:19:04 ubuntu kernel: [   30.724414] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Oct 26 19:19:04 ubuntu kernel: [   30.752254] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Oct 26 19:19:05 ubuntu kernel: [   31.346630] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Oct 26 19:19:05 ubuntu kernel: [   31.365831] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Oct 26 19:19:29 ubuntu kernel: [   55.502099] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Oct 26 19:19:29 ubuntu kernel: [   55.516704] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Oct 26 19:24:44 ubuntu kernel: [  370.116101] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0
Oct 26 19:24:44 ubuntu kernel: [  370.130330] blk_update_request: critical medium error, dev nvme0n1, sector 0 op 0x1:(WRITE) flags 0x800 phys_seg 0 prio class 0

덕분에 ddrescue네트워크를 통해 모든 파티션을 다른 컴퓨터에 복제할 수 있었습니다. ext4 파티션을 모두 추출하는 동안 IO 오류가 발생했지만 충분한 재시도를 통해 결국 모든 것을 얻었습니다.

e2fsck그 후 이미지를 실행할 수 있었고 성공한 것으로 보였으며 이제 해당 이미지를 읽기 전용 루프 장치로 마운트할 수 있습니다. 데이터는 손상되지 않은 것 같습니다.

첫 번째 질문은문제가 무엇이든 해결하고 이 드라이브를 계속 사용하기 위해 할 수 있는 일이 있나요?나는 그렇지 않다고 가정하고 있지만 제안에는 확실히 열려 있습니다.

fsck라이브 USB의 파티션 중 하나에서 실행하려고 하면 이런 일이 발생합니다. 아래에서 볼 수 있듯이 질문에 대한 답변의 모든 조합을 시도했습니다. 나는 매뉴얼 페이지를 충분히 이해할 수 없으며 파일 시스템이나 드라이브에 대해 충분히 알지 못해 어떤 옵션이 있으면 도움이 될 수 있는지 알 수 없습니다.

ubuntu@ubuntu:~$ sudo fsck /dev/nvme0n1p3
fsck from util-linux 2.36.1
e2fsck 1.46.3 (27-Jul-2021)
/dev/nvme0n1p3: recovering journal
Superblock needs_recovery flag is clear, but journal has data.
Run journal anyway<y>? yes
fsck.ext4: Input/output error while recovering journal of /dev/nvme0n1p3
fsck.ext4: unable to set superblock flags on /dev/nvme0n1p3


/dev/nvme0n1p3: ********** WARNING: Filesystem still has errors **********

ubuntu@ubuntu:~$ sudo fsck /dev/nvme0n1p3
fsck from util-linux 2.36.1
e2fsck 1.46.3 (27-Jul-2021)
/dev/nvme0n1p3: recovering journal
Superblock needs_recovery flag is clear, but journal has data.
Run journal anyway<y>? no
Clear journal<y>? no
fsck.ext4: Input/output error while recovering journal of /dev/nvme0n1p3
fsck.ext4: unable to set superblock flags on /dev/nvme0n1p3


/dev/nvme0n1p3: ********** WARNING: Filesystem still has errors **********

ubuntu@ubuntu:~$ sudo fsck /dev/nvme0n1p3
fsck from util-linux 2.36.1
e2fsck 1.46.3 (27-Jul-2021)
/dev/nvme0n1p3: recovering journal
Superblock needs_recovery flag is clear, but journal has data.
Run journal anyway<y>? no
Clear journal<y>? yes
fsck.ext4: Input/output error while recovering journal of /dev/nvme0n1p3
fsck.ext4: unable to set superblock flags on /dev/nvme0n1p3


/dev/nvme0n1p3: ********** WARNING: Filesystem still has errors **********

ubuntu@ubuntu:~$ 

드라이브에 아직 보증이 적용된다고 생각하며, 교체 또는 환불을 받기 위해 삼성 지원팀에 연락하려고 합니다.

그들이 나에게 그것을 돌려달라고 요청한다면, 이 드라이브에 민감한 데이터가 있기 때문에 문제가 될 것입니다.

드라이브는 쓰기 시도를 모두 거부합니다. 마운트할 수 없고 정상적으로 쓸 수 없습니다. 블록 수준에서 커널에 쓰려고 하면 커널에서 IO 오류가 발생합니다. 심지어 삼성의 보안 삭제 도구(이러한 도구를 사용하여 부팅 가능한 USB 드라이브를 생성하는 Windows 전용 소프트웨어 제공)도 실패합니다.

이 장치를 강제로 안전하게 삭제하는 방법이 있나요?

답변1

당신은 결코 너무 신중하지 않습니다. 저는 체르노빌 바이러스의 공격을 받은 파일 시스템에서 많은 파일을 얻었습니다!

데이터를 지우려면 다음을 수행할 수 있지만 dd bs=1M if=/dev/zero of=/dev/…어딘가에서 중지되면 옵션을 사용하여 다시 시작 skip하고 일부 블록을 건너뛰어야 할 수도 있습니다.

NVRAM을 사용하면 일부 블록을 지울 수는 없지만 일부는 재할당됩니다. 그러나 지워지지 않은 블록을 얻으려면 매우 낮은 수준의 액세스가 필요합니다. 군사 비밀 데이터가 아닌 개인의 민감한 데이터에는 좋습니다!

관련 정보