vbox虚拟机添加硬盘
开发过程中,随着工程的增加,虚拟机经常需要扩容。
硬盘分类:
- 虚拟只用来安装软件,所以硬盘不需要太大
- 扩展的硬盘放工程或代码,一般开发的SDK、工程、源码都放在扩展的虚拟硬盘中
好处:
- 这样虚拟机的copy可以分离。工程和虚拟机分离。备份的时候只需要备份虚拟硬盘即可,虚拟机都是一样的。
步骤:
网上查找:“virtualbox虚拟机怎么添加硬盘” ,会有一堆的教程等着你。大概就是使用vbox去新建硬盘。
网上有两种方式可以新建硬盘
- 使用virtualbox的命令去新建硬盘(装B可以使用,但是不推荐)
- 设置-存储-控制器SATA-创建新的虚拟硬盘-vdi-动态分配
进入虚拟机ubuntu进行如下操作
- 格式化硬盘(ext4文件系统)
- 开机自动挂载
格式化新建的硬盘(格式华为ext4)
- sudo fdisk -l
- 对硬盘分区:fdisk /dev/sdb1,
- 可以根据提示获得help,按【p】,然后按【Enter】使用默认配置
- 注意最后需要保存分区输入【w】后按【Enter】
- 格式化硬盘:mkfs.ext4 /dev/sdb1
开机自动挂载
/etc/fstab挂载
`sudo blkid /dev/sdb1`,查看UUID
a. 修改uuid
进入到virtualbox目录执行
`VBoxManage internalcommands sethduuid "Z:\extdisk1.vdi"
`
b. 这个外挂的硬盘有读写权限
```
vi /etc/fstab 添加如下:
UUID=d011f6c5-ec87-45af-afce-fbd4133d8ba4 /mnt/extdisk1 ext4 defaults,rw 0 2
//如果想挂载在其他目录,也可以将/mnt/extdisk1改为/mnt/disk_name_u_like
```
c. 建立软连接
`ln -s /mnt/extdisk1 /home/hhh/extdisk1`
systemd方式挂载
为什么使用systemd来挂载文件系统而不使用fstab?使用fstab的时候如果设备被移除会导致系统启动失败,无法进入系统(只能进入临时修复系统),systemd则没有这个问题。
vim /etc/systemd/system/mnt-extdisk1.mount
内容为
[Unit]
Description = mount extdisk1
[Mount]
What = /dev/sdb4
Where = /mnt/extdisk1
Type = ext4
Options = defaults
[Install]
WantedBy = local-fs.target