一、问题来源:在做硬盘分区的实验的时候,发现每次添加一些硬盘,不重启,系统就不会去识别新添加的硬盘,所以我就想方设法减少时间,回来查了下资料,有结果了~哈。。




大体上分为2种思路




wKioL1UW88HTBIqHAANV90n8DdQ252.jpg


思路一:

1.通过fdisk -l 可以发现没有发现新添加的硬盘

wKiom1UqDoKwcc3RAAEgoGYxJAs413.jpg

2cat /proc/scsi/scsi

wKioL1UqD87g-PjNAAEliTggGGI210.jpg

3. echo scsi add-single-device 2 0 1 0 >>/proc/scsi/scsi

霸气的添加上了哈~

wKioL1UqD8nC_VVrAAFvT2IRlow469.jpg

注:对各个参数的理解:

echo scsi add-single-device x y z u >> /proc/scsi/scsi

x是硬盘所在SCSI控制器号(一般机器就一个SCSI控制器,所以就是0);

y是硬盘所在SCSI通道的编号(一般单通道的就是0,多通道的要看是哪个通道了)

单通道SCSI卡最多支持同时接15个盘,卡上只一个通道。

双通道SCSI卡有2个通道,在数量上增加一倍,可以同时并行各接15个,达到30个。

z是硬盘的SCSI ID号(在原有上面加1);

u是硬盘的lun号(默认情况都是0


fdisk  -l确认一下结果把:

wKioL1UqD9WTwA_jAAHdJ_HeRI0885.jpg

如果需要移除刚才添加的硬盘

使用 echo scsi remove-single-device 2 0 1 0 >>/proc/scsi/scsi 就可以

add-single-device换成了remove-single-device



------------------------------------------------------------------------

------------------------------------------------------------------------


思路二:

cat /proc/scsi/scsi

Attached devices:

Host: scsi0 Channel: 00 Id: 00 Lun: 00

  Vendor: VMware,  Model: VMware Virtual S Rev: 1.0 

  Type:   Direct-Access                    ANSI  SCSI revision: 02

Host: scsi2 Channel: 00 Id: 01 Lun: 00

  Vendor: VMware,  Model: VMware Virtual S Rev: 1.0 

  Type:   Direct-Access                    ANSI  SCSI revision: 02

原理也很简单,就是对系统的磁盘进行扫描

对磁盘的host 文件进行扫描,注意蓝色处host0与上面的scsi0一致,都为0

echo - - - > /sys/class/scsi_host/host0/scan


- - - 代表的就是Channel  Id  Lun


最后看下结果把!扫描前和扫描后的结果尽收眼底。

wKiom1UW9anRiudJAALmBEwoDus540.jpg


不错,长经验了~~新手入门,

分享下遇到的问题