在不重启的情况下,为Vmware Linux客户机添加新硬盘

系统 Linux
作为一名系统管理员,我经常需要用额外的硬盘来扩充存储空间或将系统数据从用户数据中分离出来。我将告诉你在将物理块设备加到虚拟主机的这个过程中,如何将一个主机上的硬盘加到一台使用 VMWare 软件虚拟化的 Linux 客户机上。

[[217112]]

作为一名系统管理员,我经常需要用额外的硬盘来扩充存储空间或将系统数据从用户数据中分离出来。我将告诉你在将物理块设备加到虚拟主机的这个过程中,如何将一个主机上的硬盘加到一台使用 VMWare 软件虚拟化的 Linux 客户机上。

你可以显式的添加或删除一个 SCSI 设备,或者重新扫描整个 SCSI 总线而不用重启 Linux 虚拟机。本指南在 Vmware Server 和 Vmware Workstation v6.0 中通过测试(更老版本应该也支持)。所有命令在 RHEL、Fedora、CentOS 和 Ubuntu Linux 客户机 / 主机操作系统下都经过了测试。

 

步骤 1:添加新硬盘到虚拟客户机

首先,通过 vmware 硬件设置菜单添加硬盘。点击 “VM > Settings”

Fig.01:Vmware Virtual Machine Settings

Vmware Virtual Machine Settings

或者你也可以按下 CTRL + D 也能进入设置对话框。

点击 “Add” 添加新硬盘到客户机:

Fig.02:VMWare adding a new hardware

VMWare adding a new hardware

选择硬件类型为“Hard disk”然后点击 “Next”:

Fig.03 VMware Adding a new disk wizard

VMware Adding a new disk wizard

选择 “create a new virtual disk” 然后点击 “Next”:

[[217113]]

Vmware Wizard Disk

设置虚拟磁盘类型为 “SCSI” ,然后点击 “Next”:

Fig.05:Vmware Virtual Disk

Vmware Virtual Disk

按需要设置***磁盘大小,然后点击 “Next”

Fig.06:Finalizing Disk Virtual Addition

Finalizing Disk Virtual Addition

***,选择文件存放位置然后点击 “Finish”。

 

步骤 2:重新扫描 SCSI 总线,在不重启虚拟机的情况下添加 SCSI 设备

输入下面命令重新扫描 SCSI 总线:

  1. echo "- - -" > /sys/class/scsi_host/host# /scan
  2. fdisk -l
  3. tail -f /var/log/message

输出为:

Linux Vmware Rescan New Scsi Disk Without Reboot

Linux Vmware Rescan New Scsi Disk Without Reboot

你需要将 host# 替换成真实的值,比如 host0。你可以通过下面命令来查出这个值:

# ls /sys/class/scsi_host

输出:

  1. host0

然后输入下面过命令来请求重新扫描:

  1. echo "- - -" > /sys/class/scsi_host/host0/scan
  2. fdisk -l
  3. tail -f /var/log/message

输出为:

  1. Jul 18 16:29:39 localhost kernel: Vendor: VMware, Model: VMware Virtual S Rev: 1.0
  2. Jul 18 16:29:39 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02
  3. Jul 18 16:29:39 localhost kernel: target0:0:1: Beginning Domain Validation
  4. Jul 18 16:29:39 localhost kernel: target0:0:1: Domain Validation skipping write tests
  5. Jul 18 16:29:39 localhost kernel: target0:0:1: Ending Domain Validation
  6. Jul 18 16:29:39 localhost kernel: target0:0:1: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127)
  7. Jul 18 16:29:39 localhost kernel: SCSI device sdb: 2097152 512-byte hdwr sectors (1074 MB)
  8. Jul 18 16:29:39 localhost kernel: sdb: Write Protect is off
  9. Jul 18 16:29:39 localhost kernel: sdb: cache data unavailable
  10. Jul 18 16:29:39 localhost kernel: sdb: assuming drive cache: write through
  11. Jul 18 16:29:39 localhost kernel: SCSI device sdb: 2097152 512-byte hdwr sectors (1074 MB)
  12. Jul 18 16:29:39 localhost kernel: sdb: Write Protect is off
  13. Jul 18 16:29:39 localhost kernel: sdb: cache data unavailable
  14. Jul 18 16:29:39 localhost kernel: sdb: assuming drive cache: write through
  15. Jul 18 16:29:39 localhost kernel: sdb: unknown partition table
  16. Jul 18 16:29:39 localhost kernel: sd 0:0:1:0: Attached scsi disk sdb
  17. Jul 18 16:29:39 localhost kernel: sd 0:0:1:0: Attached scsi generic sg1 type 0
  18. Jul 18 16:29:39 localhost kernel: Vendor: VMware, Model: VMware Virtual S Rev: 1.0
  19. Jul 18 16:29:39 localhost kernel: Type: Direct-Access ANSI SCSI revision: 02
  20. Jul 18 16:29:39 localhost kernel: target0:0:2: Beginning Domain Validation
  21. Jul 18 16:29:39 localhost kernel: target0:0:2: Domain Validation skipping write tests
  22. Jul 18 16:29:39 localhost kernel: target0:0:2: Ending Domain Validation
  23. Jul 18 16:29:39 localhost kernel: target0:0:2: FAST-40 WIDE SCSI 80.0 MB/s ST (25 ns, offset 127)
  24. Jul 18 16:29:39 localhost kernel: SCSI device sdc: 2097152 512-byte hdwr sectors (1074 MB)
  25. Jul 18 16:29:39 localhost kernel: sdc: Write Protect is off
  26. Jul 18 16:29:39 localhost kernel: sdc: cache data unavailable
  27. Jul 18 16:29:39 localhost kernel: sdc: assuming drive cache: write through
  28. Jul 18 16:29:39 localhost kernel: SCSI device sdc: 2097152 512-byte hdwr sectors (1074 MB)
  29. Jul 18 16:29:39 localhost kernel: sdc: Write Protect is off
  30. Jul 18 16:29:39 localhost kernel: sdc: cache data unavailable
  31. Jul 18 16:29:39 localhost kernel: sdc: assuming drive cache: write through
  32. Jul 18 16:29:39 localhost kernel: sdc: unknown partition table
  33. Jul 18 16:29:39 localhost kernel: sd 0:0:2:0: Attached scsi disk sdc
  34. Jul 18 16:29:39 localhost kernel: sd 0:0:2:0: Attached scsi generic sg2 type 0

 

如何删除 /dev/sdc 这块设备?

除了重新扫描整个总线外,你也可以使用下面命令添加或删除指定磁盘:

  1. # echo 1 > /sys/block/devName/device/delete
  2. # echo 1 > /sys/block/sdc/device/delete

 

如何添加 /dev/sdc 这块设备?

使用下面语法添加指定设备:

  1. # echo "scsi add-single-device <H> <B> <T> <L>" > /proc/scsi/scsi

这里,

  • :主机
  • :总线(通道)
  • :目标 (Id)
  • :LUN 号

例如。使用参数 host#0bus#0target#2,以及 LUN#0 来添加 /dev/sdc,则输入:

  1. # echo "scsi add-single-device 0 0 2 0">/proc/scsi/scsi
  2. # fdisk -l
  3. # cat /proc/scsi/scsi

结果输出:

  1. Attached devices:
  2. Host: scsi0 Channel: 00 Id: 00 Lun: 00
  3. Vendor: VMware, Model: VMware Virtual S Rev: 1.0
  4. Type: Direct-Access ANSI SCSI revision: 02
  5. Host: scsi0 Channel: 00 Id: 01 Lun: 00
  6. Vendor: VMware, Model: VMware Virtual S Rev: 1.0
  7. Type: Direct-Access ANSI SCSI revision: 02
  8. Host: scsi0 Channel: 00 Id: 02 Lun: 00
  9. Vendor: VMware, Model: VMware Virtual S Rev: 1.0
  10. Type: Direct-Access ANSI SCSI revision: 02

 

步骤 #3:格式化新磁盘

现在使用 fdisk 并通过 mkfs.ext3 命令创建分区:

  1. # fdisk /dev/sdc
  2. ### [if you want ext3 fs] ###
  3. # mkfs.ext3 /dev/sdc3
  4. ### [if you want ext4 fs] ###
  5. # mkfs.ext4 /dev/sdc3

 

步骤 #4:创建挂载点并更新 /etc/fstab

  1. # mkdir /disk3

打开 /etc/fstab 文件,输入:

  1. # vi /etc/fstab

加入下面这行:

  1. /dev/sdc3 /disk3 ext3 defaults 1 2

若是 ext4 文件系统则加入:

  1. /dev/sdc3 /disk3 ext4 defaults 1 2

保存并关闭文件。

 

可选操作:为分区加标签

你可以使用 e2label 命令为分区加标签 。假设,你想要为 /backupDisk 这块新分区加标签,则输入:

  1. # e2label /dev/sdc1 /backupDisk

详情参见 "Linux 分区的重要性

 

关于作者

作者是 nixCraft 的创始人,也是一名经验丰富的系统管理员,还是 Linux 操作系统 /Unix shell 脚本培训师。他曾服务过全球客户并与多个行业合作过,包括 IT,教育,国防和空间研究,以及非盈利机构。你可以在 TwitterFacebookGoogle+ 上关注他。 

责任编辑:庞桂玉 来源: Linux中国
相关推荐

2009-12-22 16:10:35

Linux客户机

2010-01-29 09:30:14

Linux瘦客户机

2019-12-12 15:32:48

ITvCenterVMware

2012-11-28 09:41:06

Hyper-V微软

2022-07-20 07:43:51

Linux磁盘

2010-03-10 08:59:25

Linux添加硬盘

2009-05-11 15:44:24

Linux操作系统主流

2011-07-18 10:32:39

域控制器

2009-05-20 14:43:41

ibmdwLinux瘦客户机

2009-07-07 18:12:40

Linux瘦客户机linux云计算

2010-09-25 12:34:45

Microsoft D

2023-03-27 13:00:13

Javascript前端

2009-10-28 10:07:22

linux虚拟机添加硬盘

2011-11-09 16:52:42

惠普

2009-04-28 18:59:56

LinuxWindows体验

2009-06-23 17:56:29

SUSELinux虚拟机

2021-12-28 07:47:26

ESXI虚拟机 添加新硬盘

2009-03-24 18:21:36

Vmwareesx虚拟化

2010-06-30 10:55:13

SQL Server日

2012-10-15 09:33:52

PC瘦客户机云计算
点赞
收藏

51CTO技术栈公众号