一、概述
用过虚拟机的都知道,如果在系统运行的时候去给虚拟机添加一块新设备,比如说硬盘,系统是读取不到这个新硬盘的,因为系统在启动的时候会去检测硬件设备。但是我们也可能会遇到这样的情况,比如正在运行比较重要的程序,这时候不想重启linux系统,又需要添加一块新硬盘,该怎么办呢?今儿个就遇到这个情况,vmware上添加新硬盘,系统不识别,于是百度了一番,有很多文章,不过大多都是要设置lvm的,鄙人比较懒,不想做那么复杂,终于找到了一篇文件讲述如何不重启的情况下添加新硬盘并识别出来,于是乎操作了一般,并记录总结下来。
二、测试环境:
1.Linux系统:CentOS6.5 32bit
2.vmware:8.04
3.硬盘类型:SCSI -->系统上电运行过程只能添加SCSI硬盘
三、虚拟机添加硬盘
虚拟机-->设置-->添加-->硬盘-->下一步-->创建一个新的虚拟硬盘-->下一步—>SCSI-->下一步-->最大磁盘空间[key]-->单个文件存储虚拟磁盘-->下一步-->磁盘文件名称填写-->完成-->确定
四、linux系统上操作
添加一块新的虚拟硬盘之后在linux下查看不到硬盘的设备信息:
fdisk –l -->结果并没有显示新硬盘的信息
按照下边操作步骤即可使linux系统重新读取并识别到新硬盘:
1.确定主机总线号:
[root@iNeedle~]# ls /sys/class/scsi_host/ host0host1host2
2.重新扫描SCSI总线来添加设备:
[root@iNeedle~]# echo "- - -" > /sys/class/scsi_host/host0/scan [root@iNeedle~]# echo "- - -" > /sys/class/scsi_host/host1/scan [root@iNeedle~]# echo "- - -" > /sys/class/scsi_host/host2/scan
3.验证硬盘添加结果:
1: Disk/dev/sdc:21.5GB, 21474836480bytes 2: 255heads, 63sectors/track, 2610cylinders 3: Units=cylindersof16065*512=8225280bytes 4: Sectorsize(logical/physical):512bytes/512bytes 5: I/Osize(minimum/optimal):512bytes/512bytes 6: Diskidentifier:0x00000000 // 可以看到我们新添加的硬盘已经被系统正确的读取。