문제 설명
내 SSD가 확실히 죽어가고 있는데 RMA 전에 몇 가지 작업을 수행하고 싶습니다.
관찰
부팅하면 UEFI에서 해당 드라이브가 존재하는 것으로 감지됩니다. 드라이브 마운트 시도가 시간 초과되는 동안 부팅이 약 60초 동안 중단됩니다. 에서 dmseg
:
[ 2.845959] usb 1-4: SerialNumber: 01.00.00
[ 62.536052] nvme nvme1: I/O 25 QID 0 timeout, disable controller
[ 62.644219] nvme nvme1: Device shutdown incomplete; abort shutdown
[ 62.660279] nvme nvme1: Removing after probe failure status: -4
[ 62.677854] r8169 0000:02:00.0 enp2s0: renamed from eth0
[ 62.683678] usb-storage 2-1:1.0: USB Mass Storage device detected
다음을 사용하여 드라이브를 찾을 수 있습니다 lspci
.
$ lspci | grep memory
03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd Device a80c
05:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller SM981/PM981/PM983
작동 중인 NVMe 드라이브도 있지만 , 또는 이와 유사한 방법으로는 찾을 수 lsblk
없습니다 fdisk
.
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 4K 1 loop /snap/bare/5
loop1 7:1 0 148.4M 1 loop /snap/chromium/2295
loop2 7:2 0 62M 1 loop /snap/core20/1587
loop3 7:3 0 63.3M 1 loop /snap/core20/1778
loop4 7:4 0 55M 1 loop /snap/cups/872
loop5 7:5 0 163.3M 1 loop /snap/firefox/1635
loop6 7:6 0 400.8M 1 loop /snap/gnome-3-38-2004/112
loop7 7:7 0 346.3M 1 loop /snap/gnome-3-38-2004/119
loop8 7:8 0 91.7M 1 loop /snap/gtk-common-themes/1535
loop9 7:9 0 49.8M 1 loop /snap/snapd/17950
sda 8:0 1 0B 0 disk
nvme0n1 259:0 0 931.5G 0 disk
├─nvme0n1p1 259:1 0 512M 0 part /boot/efi
├─nvme0n1p2 259:2 0 1.7G 0 part /boot
└─nvme0n1p3 259:3 0 929.3G 0 part
└─nvme0n1p3_crypt 253:0 0 929.3G 0 crypt
├─vgkubuntu-root 253:1 0 927.4G 0 lvm /
└─vgkubuntu-swap_1 253:2 0 1.9G 0 lvm [SWAP]
이는 마운트 지점이 없음을 의미합니다. 을 붙잡을 만큼 충분한지 모르겠습니다 fsck
.
기타 실패한 시도
- 죽어가는 드라이브에서만 부팅을 시도하면
initramfs
. - NVMe용 USB 어댑터를 사용하면 작동하지 않습니다. 동글은 포기하기 전까지 약 60초 동안 연결을 시도합니다. 목록 에서 장치를 찾을 수 없습니다
lspci
. - USB를 Windows 상자에 연결하는 것도 실패하지만 Windows는 해당 지점에서 0바이트 드라이브가 연결된 것을 감지합니다.
- 납땜이 느슨해졌을 경우를 대비해 드라이브를 구웠지만 아무 것도 바뀌지 않았습니다.
물어보세요
몇 개의 파일을 가져올 수 있을 만큼 오랫동안 이 드라이브를 임시로 마운트하려면 어떻게 해야 합니까? 내 백업은 일주일이 지났고 해당 주의 데이터를 다시 가져오고 싶습니다. 경로 이외의 다른 것에서 강제로 마운트할 수 있나요 /dev/
?
편집 - 새로운 관찰
현재 USB 마운트로 드라이브를 마운트했는데 드라이브가 0바이트입니다. 에서 dmesg
:
[ 5748.864308] usb 3-1.3.2: new high-speed USB device number 8 using xhci_hcd
[ 5748.979686] usb 3-1.3.2: New USB device found, idVendor=0bda, idProduct=9210, bcdDevice=20.01
[ 5748.979692] usb 3-1.3.2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 5748.979694] usb 3-1.3.2: Product: RTL9210
[ 5748.979695] usb 3-1.3.2: Manufacturer: Realtek
[ 5748.979696] usb 3-1.3.2: SerialNumber: 012345678904
[ 5748.982535] usb-storage 3-1.3.2:1.0: USB Mass Storage device detected
[ 5748.982663] usb-storage 3-1.3.2:1.0: Quirks match for vid 0bda pid 9210: 800000
[ 5748.982687] scsi host1: usb-storage 3-1.3.2:1.0
[ 5749.997797] scsi 1:0:0:0: Direct-Access Realtek RTL9210 NVME 1.00 PQ: 0 ANSI: 6
[ 5749.997933] sd 1:0:0:0: Attached scsi generic sg1 type 0
[ 5750.003699] sd 1:0:0:0: [sdb] Read Capacity(10) failed: Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[ 5750.003705] sd 1:0:0:0: [sdb] Sense Key : Illegal Request [current]
[ 5750.003707] sd 1:0:0:0: [sdb] Add. Sense: Invalid command operation code
[ 5750.003710] sd 1:0:0:0: [sdb] 0 512-byte logical blocks: (0 B/0 B)
[ 5750.003712] sd 1:0:0:0: [sdb] 0-byte physical blocks
[ 5750.005449] sd 1:0:0:0: [sdb] Test WP failed, assume Write Enabled
[ 5750.007179] sd 1:0:0:0: [sdb] Asking for cache data failed
[ 5750.007182] sd 1:0:0:0: [sdb] Assuming drive cache: write through
[ 5750.013190] sd 1:0:0:0: [sdb] Read Capacity(10) failed: Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[ 5750.013196] sd 1:0:0:0: [sdb] Sense Key : Illegal Request [current]
[ 5750.013198] sd 1:0:0:0: [sdb] Add. Sense: Invalid command operation code
[ 5750.016690] sd 1:0:0:0: [sdb] Attached SCSI disk
SMART 데이터 읽기 시도:
$ sudo smartctl /dev/sdb -a
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.15.0-58-generic] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org
Read NVMe Identify Controller failed: scsi error unsupported scsi opcode
그리고
$ sudo smartctl /dev/sdb -d scsi -a
smartctl 7.2 2020-12-30 r5155 [x86_64-linux-5.15.0-58-generic] (local build)
Copyright (C) 2002-20, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Vendor: Realtek
Product: RTL9210 NVME
Revision: 1.00
Compliance: SPC-4
LU is fully provisioned
Logical Unit id: 0x3001237923792379
Serial number: 0000000000000000
Device type: disk
Local Time is: Mon Jan 30 20:41:09 2023 CST
SMART support is: Unavailable - device lacks SMART capability.
=== START OF READ SMART DATA SECTION ===
Current Drive Temperature: 0 C
Drive Trip Temperature: 0 C
Error Counter logging not supported
Device does not support Self Test logging
적절한 드라이브가 아닌 RTL9210 칩셋의 SCSI 포트만 장착하는 것이 좋습니다.
에 따르면 lsblk
드라이브는 다음 위치에 마운트됩니다 /dev/sdb
.
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
[...]
sdb 8:16 0 0B 0 disk
파일 시스템 검사는 유용하지 않습니다.
$ sudo dumpe2fs /dev/sdb
dumpe2fs 1.46.5 (30-Dec-2021)
dumpe2fs: Invalid argument while trying to open /dev/sdb
Couldn't find valid filesystem superblock.
$ sudo fsck /dev/sdb
fsck from util-linux 2.37.2
e2fsck 1.46.5 (30-Dec-2021)
fsck.ext2: Invalid argument while trying to open /dev/sdb
The superblock could not be read or does not describe a valid ext2/ext3/ext4
filesystem. If the device is valid and it really contains an ext2/ext3/ext4
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
e2fsck -b 8193 <device>
or
e2fsck -b 32768 <device>
mkfs
또한 다음 슈퍼블록이 어디에 있어야 하는지 추측하기 위해 이 트릭을 사용할 수도 없습니다 .
$ sudo mkfs.ext4 -n /dev/sdb
mke2fs 1.46.5 (30-Dec-2021)
mkfs.ext4: Device size reported to be zero. Invalid partition specified, or
partition table wasn't reread after running fdisk, due to
a modified partition being busy and in use. You may need to reboot
to re-read your partition table.
어쨌든 NVMe 컨트롤러를 플래시할 수 있나요?