ฉันจะค้นหาหมายเลขพอร์ต SATA ของเมนบอร์ดใดที่เชื่อมต่อกับ HDD
เราต้องการสร้างซอฟต์แวร์การทำสำเนาฮาร์ดดิสก์ตามการระบุทางกายภาพของ SATA
ฉันจะค้นหาหมายเลขพอร์ต SATA ของเมนบอร์ดใดที่เชื่อมต่อกับ HDD
เราต้องการสร้างซอฟต์แวร์การทำสำเนาฮาร์ดดิสก์ตามการระบุทางกายภาพของ SATA
คำตอบ:
lsscsi - verbose จะให้ผลลัพธ์คล้ายกับสิ่งนี้:
[0:0:0:0] disk ATA TOSHIBA THNSNH12 HTRA /dev/sda
dir: /sys/bus/scsi/devices/0:0:0:0 [/sys/devices/pci0000:00/0000:00:1f.2/ata1/host0/target0:0:0/0:0:0:0]
[1:0:0:0] disk ATA WDC WD2003FZEX-0 01.0 /dev/sdb
dir: /sys/bus/scsi/devices/1:0:0:0 [/sys/devices/pci0000:00/0000:00:1f.2/ata2/host1/target1:0:0/1:0:0:0]
[2:0:0:0] disk ATA WDC WD3001FAEX-0 01.0 /dev/sdc
dir: /sys/bus/scsi/devices/2:0:0:0 [/sys/devices/pci0000:00/0000:00:1f.2/ata3/host2/target2:0:0/2:0:0:0]
[3:0:0:0] cd/dvd Optiarc DVD RW AD-7280S 1.01 /dev/sr0
dir: /sys/bus/scsi/devices/3:0:0:0 [/sys/devices/pci0000:00/0000:00:1f.2/ata4/host3/target3:0:0/3:0:0:0]
ซึ่งให้ataN
พอร์ตซึ่งสามารถจับคู่กับข้อมูลที่พบใน syslog มีประโยชน์ถ้าคุณพยายามที่จะหาข้อผิดพลาดมาจากไหน
แก้ไข: หากwhich lsscsi
ไม่มีเอาต์พุตคุณจำเป็นต้องติดตั้ง:
sudo apt-get install lsscsi
แก้ไขเพิ่มเติม:
สิ่งนี้อาจไปโดยไม่บอก แต่แน่นอนคุณสามารถกรองผลลัพธ์ด้วยgrep
เพื่อค้นหาสิ่งที่คุณสนใจตัวอย่างเช่นหากคุณพบข้อผิดพลาดอย่างที่ata4: status: { DRDY ERR }
คุณสามารถออกคำสั่งง่ายๆ
lsscsi - verbose | grep -P1 -A1 ata4 ซึ่งจะให้ผลลัพธ์เช่นนี้:
[3:0:0:0] cd/dvd Optiarc DVD RW AD-7280S 1.01 /dev/sr0
dir: /sys/bus/scsi/devices/3:0:0:0 [/sys/devices/pci0000:00/0000:00:1f.2/ata4/host3/target3:0:0/3:0:0:0]
ซึ่งจะระบุว่าอุปกรณ์ (Optiarc DVD RW AD-7280S ใน ata4) ยังไม่พร้อมเมื่อถูกเรียกใช้
ข้อมูลนี้ควรมีเพียงพอเพื่อให้คุณสามารถค้นหาอุปกรณ์ที่มีปัญหา
sudo lshw -c storage -c disk
ให้ข้อมูลมากมายเกี่ยวกับฮาร์ดไดรฟ์ของคุณ เช่น:
*-scsi:1
physical id: 2
logical name: scsi2
capabilities: emulated
*-disk
description: ATA Disk
product: ST31000524AS
vendor: Seagate
physical id: 0.0.0
bus info: scsi@2:0.0.0
logical name: /dev/sdb
version: JC4B
serial: 5VPDESM5
size: 931GiB (1TB)
capabilities: gpt-1.00 partitioned partitioned:gpt
configuration: ansiversion=5 guid=d6e747d2-3e9c-47c2-865b-44f8d7cc5808 sectorsize=512
*-volume
description: EXT4 volume
vendor: Linux
physical id: 1
bus info: scsi@2:0.0.0,1
logical name: /dev/sdb1
logical name: /mnt/hdd0
version: 1.0
serial: 2de34713-f0ee-4a12-9214-21a5431a7b7b
size: 931GiB
capabilities: journaled extended_attributes large_files huge_files dir_nlink recover extents ext4 ext2 initialized
configuration: created=2013-07-20 14:14:09 filesystem=ext4 lastmountpoint=/mnt/hdd0 modified=2013-08-29 21:29:24 mount.fstype=ext4 mount.options=rw,relatime,errors=remount-ro,data=ordered mounted=2013-08-29 21:29:24 state=mounted
ฉันสงสัยว่าphysical id
จะให้พอร์ตทางกายภาพที่ HDD เชื่อมต่อกับ (2 ในกรณีนี้)
lsscsi --verbose
bus info
ข้อมูลที่คุณกำลังมองหาอยู่ เนื่องจากการแก้ไข anwer มากมายนั้นไม่ได้รับการสนับสนุนฉันจึงแยกมันออกเป็นคำตอบแยกต่างหากพร้อมกับตัวอย่างเชิงลึกเพิ่มเติม
tech@tech:~$ lsscsi
[2:0:0:0] disk ATA SAMSUNG HD040GJ/ ZG10 /dev/sda
[3:0:1:0] disk ATA WDC WD3200AAJS-0 03.0 /dev/sdb
[4:0:0:0] disk Generic- Compact Flash 1.00 /dev/sdc
[4:0:0:1] disk Generic- SM/xD-Picture 1.00 /dev/sdd
[4:0:0:2] disk Generic- SD/MMC 1.00 /dev/sde
[4:0:0:3] disk Generic- MS/MS-Pro/HG 1.00 /dev/sdf
ยูทิลิตี้นี้จะให้พอร์ต ATA 0 ถึง 3 แก่คุณ
sudo lshw -c storage -c disk
ให้ข้อมูลมากมายเกี่ยวกับฮาร์ดไดรฟ์ของคุณ
bus info
สาขาให้คุณพอร์ตทางกายภาพแต่ละ HDD / SSD มีการเชื่อมต่อ (พอร์ต 0 คนและ 2 ในกรณีนี้)
โปรดทราบว่าจำนวนอาจแตกต่างกันหากระบบของคุณมีคอนโทรลเลอร์ SATA หลายตัว (ออนบอร์ดหรือผ่านการ์ดส่วนขยาย)
ตัวอย่างเช่น:
*-scsi:0
physical id: 1
logical name: scsi0
capabilities: emulated
*-disk
description: ATA Disk
product: Samsung SSD 840
physical id: 0.0.0
bus info: scsi@0:0.0.0
logical name: /dev/sda
version: BB6Q
serial: S1DBNSAF791657P
size: 232GiB (250GB)
capabilities: partitioned partitioned:dos
configuration: ansiversion=5 sectorsize=512 signature=d6cfe005
*-scsi:1
physical id: 2
logical name: scsi2
capabilities: emulated
*-disk
description: ATA Disk
product: CT500MX500SSD1
physical id: 0.0.0
bus info: scsi@2:0.0.0
logical name: /dev/sdb
version: 010
serial: 1810E132AC1E
size: 465GiB (500GB)
capabilities: partitioned partitioned:dos
configuration: ansiversion=5 sectorsize=4096 signature=0007569c