As a system admin, I need to use additional hard drives for to provide more storage space space or to separate system data from user data. This procedure, adding physical block devices to virtualized guests, describes how to add a hard drive on the host to a virtualized guest by VMWare software running Linux as guest.
It is possible to add or remove a SCSI device explicitly, or to re-scan an entire SCSI bus without rebooting a running Linux VM guest. This how to is tested under Vmware Server and Vmware Workstation v6.0 (but should work with older version too). All instructions are tested on RHEL, Fedora, CentOS and Ubuntu Linux guest / hosts operating systems.
Step # 1: Add a New Disk To Vm Guest
First, you need to add hard disk by visiting vmware hardware settings menu.
Click on VM > Settings
Fig.01: Vmware Virtual Machine Settings
Alternatively you can press CTRL + D to bring settings dialog box.
Click on Add+ to add new hardware to guest:
Fig.02: VMWare adding a new hardware
Select hardware type Hard disk and click on Next
Fig.03 VMware Adding a new disk wizard
Select make a new virtual disk and click on Next
Fig.04: Vmware Wizard Disk
Set virtual disk type to SCSI and click on Next
Fig.05: Vmware Virtual Disk
Set most disk size as per your requirements and click on Next
Fig.06: Finalizing Disk Virtual Addition
Finally, set file location and click on End.
Step # 2: Rescan the SCSI Bus to Add a SCSI Device Without rebooting the VM
A rescan can be issued by typing the following command:
echo "- - -" > /sys/class/scsi_host/host#/scan
fdisk -l
tail -f /var/log/message
Replace host# with actual value such as host0. You can find scsi_host value by the following command:
# ls /sys/class/scsi_host
Productivity:
host0
Now type the following to send a rescan request:
echo "- - -" > /sys/class/scsi_host/host0/scan
fdisk -l
tail -f /var/log/message
Sample Outputs:
Jul 18 16:29:39 localhost kernel: Vendor: VMware, Model: VMware Virtual S Rev: 1.0<br />Jul 18 16:29:39 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02<br />Jul 18 16:29:39 localhost kernel: target0:0:1: Commencement Domain Validation<br />Jul 18 16:29:39 localhost kernel: target0:0:1: Domain Validation skipping write tests<br />Jul 18 16:29:39 localhost kernel: target0:0:1: Ending Domain Validation<br />Jul 18 16:29:39 localhost kernel: target0:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127)<br />Jul 18 16:29:39 localhost kernel: SCSI device sdb: 2097152 512-byte hdwr sectors (1074 MB)<br />Jul 18 16:29:39 localhost kernel: sdb: Write Protect is off<br />Jul 18 16:29:39 localhost kernel: sdb: cache data unavailable<br />Jul 18 16:29:39 localhost kernel: sdb: high and mighty drive cache: write through<br />Jul 18 16:29:39 localhost kernel: SCSI device sdb: 2097152 512-byte hdwr sectors (1074 MB)<br />Jul 18 16:29:39 localhost kernel: sdb: Write Protect is off<br />Jul 18 16:29:39 localhost kernel: sdb: cache data unavailable<br />Jul 18 16:29:39 localhost kernel: sdb: high and mighty drive cache: write through<br />Jul 18 16:29:39 localhost kernel: sdb: unknown partition table<br />Jul 18 16:29:39 localhost kernel: sd 0:0:1:0: Attached scsi disk sdb<br />Jul 18 16:29:39 localhost kernel: sd 0:0:1:0: Attached scsi generic sg1 type 0<br />Jul 18 16:29:39 localhost kernel: Vendor: VMware, Model: VMware Virtual S Rev: 1.0<br />Jul 18 16:29:39 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02<br />Jul 18 16:29:39 localhost kernel: target0:0:2: Commencement Domain Validation<br />Jul 18 16:29:39 localhost kernel: target0:0:2: Domain Validation skipping write tests<br />Jul 18 16:29:39 localhost kernel: target0:0:2: Ending Domain Validation<br />Jul 18 16:29:39 localhost kernel: target0:0:2: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127)<br />Jul 18 16:29:39 localhost kernel: SCSI device sdc: 2097152 512-byte hdwr sectors (1074 MB)<br />Jul 18 16:29:39 localhost kernel: sdc: Write Protect is off<br />Jul 18 16:29:39 localhost kernel: sdc: cache data unavailable<br />Jul 18 16:29:39 localhost kernel: sdc: high and mighty drive cache: write through<br />Jul 18 16:29:39 localhost kernel: SCSI device sdc: 2097152 512-byte hdwr sectors (1074 MB)<br />Jul 18 16:29:39 localhost kernel: sdc: Write Protect is off<br />Jul 18 16:29:39 localhost kernel: sdc: cache data unavailable<br />Jul 18 16:29:39 localhost kernel: sdc: high and mighty drive cache: write through<br />Jul 18 16:29:39 localhost kernel: sdc: unknown partition table<br />Jul 18 16:29:39 localhost kernel: sd 0:0:2:0: Attached scsi disk sdc<br />Jul 18 16:29:39 localhost kernel: sd 0:0:2:0: Attached scsi generic sg2 type 0
How Do I Delete a Single Device Called /dev/sdc?
In addition to re-scanning the entire bus, a point device can be added or existing device deleted by the following command:
# echo 1 > /sys/block/devName/device/delete
# echo 1 > /sys/block/sdc/device/delete
How Do I Add a Single Device Called /dev/sdc?
To add a single device explicitly, use the following syntax:
# echo "scsi add-single-device <H> <B> <T> <L>" > /proc/scsi/scsi
Where,
- <H> : Host
- <B> : Bus (Channel)
- <T> : Target (Id)
- <L> : LUN numbers
For e.g. add /dev/sdc with host # 0, bus # 0, target # 2, and LUN # 0, enter:
# echo "scsi add-single-device 0 0 2 0">/proc/scsi/scsi
# fdisk -l
# cat /proc/scsi/scsi
Sample Outputs:
Attached devices:<br />Host: scsi0 Channel: 00 Id: 00 Lun: 00<br /> Vendor: VMware, Model: VMware Virtual S Rev: 1.0<br /> Type: Direct-Access ANSI SCSI revision: 02<br />Host: scsi0 Channel: 00 Id: 01 Lun: 00<br /> Vendor: VMware, Model: VMware Virtual S Rev: 1.0<br /> Type: Direct-Access ANSI SCSI revision: 02<br />Host: scsi0 Channel: 00 Id: 02 Lun: 00<br /> Vendor: VMware, Model: VMware Virtual S Rev: 1.0<br /> Type: Direct-Access ANSI SCSI revision: 02
Step #3: Format a New Disk
Now, you can make partition by fdisk and format it by mkfs.ext3 command:
# fdisk /dev/sdc
# mkfs.ext3 /dev/sdc3
Step #4: Make a Mount Top And Update /etc/fstab
# mkdir /disk3
Open /etc/fstab file, enter:
# vi /etc/fstab
Append as follows:
/dev/sdc3 /disk3 ext3 defaults 1 2
Save and close the file.
Discretionary Task: Categorize the partition
You can categorize the partition by e2label. For example, if you want to categorize the new partition /backupDisk, enter
# e2label /dev/sdc1 /backupDisk
Conclusion
The VMware guest now has an additional virtualized storage space device. The procedure works for all physical block devices, this includes CD-ROM, DVD and floppy devices. Next, time I will write about adding an additional virtualized storage space device by XEN software.
Download PDF version (422K).
REFERENCES
http://www.cyberciti.biz/tips/vmware-add-a-new-hard-disk-without-rebooting-guest.html
Answers Rating