磁盘空间不够用vbox如何直接存取物理磁盘分区
程序员文章站
2022-03-09 15:59:19
磁盘空间不够用vbox如何直接存取物理磁盘分区...
把win7作为虚拟机的一个问题是磁盘空间不够用, 一个常规的办法是使用共享文件夹,我使用这种方式遇到了两个大问题:
1. 不能创建文件。
2. 映射为盘符后,不能执行里面的可执行文件(直接在\\vboxsrv 里面倒是可以,不过cmd不能切过去)
今天突然想到,能不能把磁盘分区直接给vbox用,我搜索"vbox direct access disk partition"的确是可以的:
sudo vboxmanage internalcommands createrawvmdk -filename /mnt/sda5.vmdk \
-rawdisk /dev/sda -partitions 3,5 -relative
sudo chown $user /mnt/sda5*
sudo chmod 777 /dev/sda3
sudo chmod 777 /dev/sda5
然后在storage/sata controller 新增磁盘/mnt/sda5.vmdk 就行啦。
说明:
1. 其中3,5 对应我原来win7下面的d盘和e盘,(f盘被我装成ubuntu啦)。
2. 加relative 的目的是不用把/dev/sda权限给我。
3. chown,chmod 是为了解决在新增磁盘时出现vbox_e_object_not_found的问题。
把虚拟机win7起来后,explorer多了两个raw disk, 如果你去format 就坏了, 因为那是linux用的。
用disks工具查看布局是这样的:
sda:
sda1 | sda2 | sda3 | sda4|
sda4:
sda5 | sda6 | sda7 | sda8|
对应到win7下面,
sda1 是系统保留分区105mb
sda2 是c盘 107gb
sda3 是d盘 137gb
sda4 是扩展分区,包括:
sda5 是e盘137gb,原来的f盘在装linux时分割为
sda6 boot 分区128mb,sda7 交换分区1.8gb, sda8 根分区116gb.
为了避免误操作, 到计算机管理磁盘管理去掉分配的盘符即可。
1. 不能创建文件。
2. 映射为盘符后,不能执行里面的可执行文件(直接在\\vboxsrv 里面倒是可以,不过cmd不能切过去)
今天突然想到,能不能把磁盘分区直接给vbox用,我搜索"vbox direct access disk partition"的确是可以的:
sudo vboxmanage internalcommands createrawvmdk -filename /mnt/sda5.vmdk \
-rawdisk /dev/sda -partitions 3,5 -relative
sudo chown $user /mnt/sda5*
sudo chmod 777 /dev/sda3
sudo chmod 777 /dev/sda5
然后在storage/sata controller 新增磁盘/mnt/sda5.vmdk 就行啦。
说明:
1. 其中3,5 对应我原来win7下面的d盘和e盘,(f盘被我装成ubuntu啦)。
2. 加relative 的目的是不用把/dev/sda权限给我。
3. chown,chmod 是为了解决在新增磁盘时出现vbox_e_object_not_found的问题。
把虚拟机win7起来后,explorer多了两个raw disk, 如果你去format 就坏了, 因为那是linux用的。
用disks工具查看布局是这样的:
sda:
sda1 | sda2 | sda3 | sda4|
sda4:
sda5 | sda6 | sda7 | sda8|
对应到win7下面,
sda1 是系统保留分区105mb
sda2 是c盘 107gb
sda3 是d盘 137gb
sda4 是扩展分区,包括:
sda5 是e盘137gb,原来的f盘在装linux时分割为
sda6 boot 分区128mb,sda7 交换分区1.8gb, sda8 根分区116gb.
为了避免误操作, 到计算机管理磁盘管理去掉分配的盘符即可。