
假设现在有两块磁盘, one master SATA and one master ATA ,他们在 /dev 下会如何呈现?
这个要取决与你的 SATA 驱动和系统配置 (distribution's configuration), 可能会是 /dev/hda 和 /dev/hdb , 或者 /dev/hda 和 /dev/sda ,或者是 /dev/sda 和 /dev/sdb .不同的发行版和驱动正在朝着将所有磁盘命名为 sd* 的方向发展,但是传统的 PATA 驱动会使用 hd* 而且少部分的 SATA 驱动也会这么做。
设备名取决于 udev 的配置。比如,在 Ubuntu 14.04上,下面来自 /lib/udev/rules.d/60-persistent-storage.rules 的配置会把所有的 ATA 硬盘显示为 /dev/sd* 并会将所有的 ATA CD 设备显示为 /dev/sr* :
大部分情况下,可以认为 IDE 接口的硬盘命名为 /dev/hd* , SATA 接口的硬盘命名为 /dev/sd* 。
看到了你提的问题,我感觉很有兴趣看了一下. 我在debian下.cat /var/log/dmesg|grep ata
思路. sata在linux是 libata驱动的. 那么就找它,它一定能整明白.
看了两台机器内核啥地也不一样.但感觉还可以分析分析.
ata_piix 0000:00:1f.1: version 2.12
ata_piix 0000:00:1f.1: PCI INT A ->GSI 18 (level, low) ->IRQ 18
ata_piix 0000:00:1f.1: setting latency timer to 64
scsi0 : ata_piix
scsi1 : ata_piix
ata1: PATA max UDMA/100 cmd 0x1f0 ctl 0x3f6 bmdma 0xffa0 irq 14
ata2: PATA max UDMA/100 cmd 0x170 ctl 0x376 bmdma 0xffa8 irq 15
ata_piix 0000:00:1f.2: PCI INT B ->GSI 19 (level, low) ->IRQ 19
ata_piix 0000:00:1f.2: MAP [ P0 P2 P1 P3 ]
ata_piix 0000:00:1f.2: setting latency timer to 64
scsi2 : ata_piix
scsi3 : ata_piix
ata3: SATA max UDMA/133 cmd 0xd080 ctl 0xd000 bmdma 0xc800 irq 19
ata4: SATA max UDMA/133 cmd 0xcc00 ctl 0xc880 bmdma 0xc808 irq 19
ata3.00: ATA-8: WDC WD3200AAJS-00L7A0, 01.03E01, max UDMA/133
ata3.00: 625142448 sectors, multi 16: LBA48 NCQ (depth 0/32)
ata3.00: configured for UDMA/133
scsi 2:0:0:0: Direct-Access ATA WDC WD3200AAJS-0 01.0 PQ: 0 ANSI: 5
ata1,2 是 pata口 ata3,4是 sata(不知道为什么一共只有四个口我感觉应该更多才对)
但我感觉是接在了 sata0上.
libata version 3.00 loaded.
ata1: SATA max UDMA/133 abar m2048@0xdfd01000 port 0xdfd01100 irq 217
ata2: SATA max UDMA/133 abar m2048@0xdfd01000 port 0xdfd01180 irq 217
ata3: SATA max UDMA/133 abar m2048@0xdfd01000 port 0xdfd01200 irq 217
ata4: SATA max UDMA/133 abar m2048@0xdfd01000 port 0xdfd01280 irq 217
ata5: SATA max UDMA/133 abar m2048@0xdfd01000 port 0xdfd01300 irq 217
ata6: SATA max UDMA/133 abar m2048@0xdfd01000 port 0xdfd01380 irq 217
ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
ata1.00: ATA-7: GB0250EAFJF, HPGB, max UDMA/133
ata1.00: 488397168 sectors, multi 16: LBA48 NCQ (depth 31/32)
ata1.00: configured for UDMA/133
ata2: SATA link down (SStatus 0 SControl 300)
ata3: SATA link down (SStatus 0 SControl 300)
ata4: SATA link down (SStatus 0 SControl 300)
ata5: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
ata5.00: ATAPI: hp DVDROM DH20N, EB00, max UDMA/100, ATAPI AN
ata5.00: configured for UDMA/100
ata6: SATA link down (SStatus 0 SControl 300)
这个没有ide接口.感觉也是接在第一个sata上了. ata5上接了一个 dvdrom
但我感觉有些机器还有个 MAP的提示.还有神奇的地方.
有台机器是这样.
ata_piix 0000:00:1f.2: MAP [ P0 P2 P1 P3 ]
ata3.01: ATA-7: ST3160811AS, 3.AAE, max UDMA/133
# cat /proc/scsi/scsi
Attached devices:
Host: scsi2 Channel: 00 Id: 01 Lun: 00
Vendor: ATA Model: ST3160811AS Rev: 3.AA
不知道这硬盘的 id:01是怎么回事儿. 也还不太理解这里的MAP是什么.
写出这些给你参考吧. 也许还会有别的方法.
1、在hyper-v管理器中插入一张光盘。 如图:插入Linux集成服务盘。
2、但在Linux虚拟机中无法查到该光盘。 cd /media。
3、查看有无光驱设备挂载。未发现。
4、用root用户登录该Linux虚拟机。
5、输入: insmod /lib/modules/$(uname -r)/kernel/drivers/ata/ata_piix.ko。
6、这样就能显示出来光盘了。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)