드라이브에 오류가 발생하기 시작했고 /dev/sdb
파일 이름으로만 장치를 식별할 수 있었습니다. 물리적으로 교체할 드라이브를 파악하기 위해 이 장치 파일을 실제 하드웨어 장치와 연결하려면 어떤 방법을 사용할 수 있습니까?
보너스:이 설치에 /dev/disk/
하위 디렉터리가 없으면 어떻게 됩니까 ? (슬프게도 나는 그렇지 않다)
답변1
다음을 볼 수 있습니다 /sys/block
:
-bash-3.2$ ls -ld /sys/block/sd*/device
lrwxrwxrwx 1 root root 0 Jun 8 21:09 /sys/block/sda/device -> ../../devices/pci0000:00/0000:00:1f.2/host0/target0:0:0/0:0:0:0
lrwxrwxrwx 1 root root 0 Jun 8 21:10 /sys/block/sdb/device -> ../../devices/pci0000:00/0000:00:1f.2/host1/target1:0:0/1:0:0:0
lrwxrwxrwx 1 root root 0 Jun 8 21:10 /sys/block/sdc/device -> ../../devices/pci0000:00/0000:00:1f.2/host2/target2:0:0/2:0:0:0
lrwxrwxrwx 1 root root 0 Jun 8 21:10 /sys/block/sdd/device -> ../../devices/pci0000:00/0000:00:1f.2/host3/target3:0:0/3:0:0:0
또는 없는 경우 다음 /sys
을 볼 수 있습니다 /proc/scsi/scsi
.
-bash-3.2$ cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST31000340AS Rev: SD1A
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi1 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST31000340AS Rev: SD1A
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi2 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST31000340AS Rev: SD1A
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi3 Channel: 00 Id: 00 Lun: 00
Vendor: ATA Model: ST31000340AS Rev: SD1A
Type: Direct-Access ANSI SCSI revision: 05
Host: scsi4 Channel: 00 Id: 00 Lun: 00
Vendor: PepperC Model: Virtual Disc 1 Rev: 0.01
Type: CD-ROM ANSI SCSI revision: 03
답변2
hdparm -i /dev/sdb
그러면 드라이브의 모델 및 일련 번호가 제공됩니다.
답변3
비교할 수없는 Gilles가 언급했듯이그의 대답에는, 커널이 사용하는 경우 udev
다음 udevadm
명령을 사용하여 장치를 조사할 수 있습니다.
udevadm info -n /dev/sda -a
(슬프게도 어떤 경우에는 [더 슬프게도 이 경우에는 사실이었습니다] udev가 사용되지 않거나 udevadm을 사용할 수 없습니다.)
답변4
4가지 방법이 있습니다. 첫 번째는 가장 간단합니다.
dmesg | egrep "sd[a-z]"
다른 사람들에게는 다음 외에 /dev/disk가 필요한지 잘 모르겠습니다.
ls -lF /dev/disk/by-uuid
다른:
blkid -o list -c /dev/null
명백한 것들은 다음과 같습니다:
fdisk -l