virtualbox虚拟机命令行添加新硬盘

用vagrant box装了个虚拟机,然而硬盘不够用,就想着增加一块虚拟硬盘给这个虚拟机,主机是linux系统,没有桌面,真是痛苦啊。

踩过的坑得及时记下来,希望能帮到以后的自己或者读者。

添加硬盘分为3步:1. 创建虚拟磁盘镜像 2.附加磁盘镜像到虚拟机存储控制器 3.进入虚拟机挂载新磁盘

创建虚拟磁盘

这一步最简单,在母机上执行命令

VBoxManage createhd --filename /storage/vms/disk50g --size 50000 --format VMDK

这句的意思是,创建一个虚拟磁盘 /storage/vms/disk50g 容量 50000MB 格式是 VMDK ,执行成功后会有一个文件 /storage/vms/disk50g.vmdk 记好它,路径当然根据个人需求

添加磁盘到虚拟机

这个步骤相当于我们装电脑时把硬盘插到主板上,怎么插呢?首先你得有一块硬盘,就是上面创建的那个文件,然后你要插到主板上哪个口子?我们知道主板有 ide 或 sata 磁盘驱动器,假如是sata,它还有好几个口,这些口都有编号 1,2,3,4,5 。了解了这些,下面的命令就比较好理解了。

首先,看一下虚拟机的信息

VBoxManage list vms #列出virtualbox下所有的虚拟机

找到你想弄的虚拟机,记下它的名字 ,像我这里这样的

"vm2_default_1471395575217_38235" {98d2cc97-beda-4be1-876d-d5cd7200837e}
"vm1-master" {9f172263-c4d6-4af5-a6ba-7ff0df695d37}

我要弄的是 "vm1-master" .

VBoxManage showvminfo vm1-master

根据输出信息,大概找到 Storage Controller 那一块:

Storage Controller Name (0):            IDE Controller
Storage Controller Type (0):            PIIX4
Storage Controller Instance Number (0): 0
Storage Controller Max Port Count (0):  2
Storage Controller Port Count (0):      2
Storage Controller Bootable (0):        on

我发现这个虚拟机只有 IDE Controller ,要插硬盘还得先关闭虚拟机,麻烦啊,为了以后一劳永逸,我决定给虚拟机增加一个 Sata Controller ,首先 我关闭了虚拟机,当然不关闭虚拟机不知道行不行,下次试试。

VBoxManage storagectl vm1-master --name "SATA Controller" --add sata --portcount 5 --controller IntelAhci --bootable on

这样就增加了个 sata 驱动器。

继续我们把硬盘插上去

VBoxManage storageattach vm1-master --storagectl "SATA Controller" --type hdd --medium /storage/vms/disk50g.vmdk --port 1 --device 0

需要了解的有几个参数

  • vm1-master 就是你虚拟机的名字,上面有提到
  • --storagectl 参数就是磁盘控制器的名字,参考上一条命令中的 --name
  • --type hdd 表示是硬盘,因为这个命令不仅仅可以插硬盘,还能插光驱等,所以要指定插的是什么
  • --medium 这里指定的是虚拟磁盘的文件名,想想一下你手里拿着的硬盘
  • --port 表示插在哪个端口,上面我们创建 sata 控制器的时候通过 --portcount 5 开放了5个端口,相当于主板上的5个sata接口,此时我们用第1个
  • --device 0 设备id,设为0 就可以了,我也不知道什么意思

如果没有错误的话,这里就成功添加了一块硬盘到虚拟机了,启动虚拟机,这里我用的是vagrant来管理虚拟机的。

vagrant up
vagrant ssh

登陆虚拟机后,执行 sudo fdisk -l ,可以看到我们刚添加的磁盘 /dev/sdb

下面我们把它分区

sudo fdisk /dev/sdb

出现提示,"command m for help .." ,直接输入 "n" ,进行分区,如果只要分一个区的话,最好办,一路enter ,又回到 "command m for help .." 的时候,输入 "w" 并回车,分区完成。

格式化分区 sudo mkfs.ext4 /dev/sdb1 如果命令不存在就 sudo mkfs.ext3 /dev/sdb1

挂载分区:

sudo vi /etc/fstab

在最后一行添加

/dev/sdb1    /home/wwwroot    ext4    defaults 1 2

这里我把它挂载到 /home/wwwroot ,别忘了要先 mkdir /home/wwwroot

wq退出

执行 mount -a 挂载成功。

就写这么多,希望我的经验能帮到别人。

转载于:https://my.oschina.net/cxz001/blog/734167

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值