如题,笔者之前一直在使用vagrant作为虚拟机使用。

vagrant的好处自然不必说,只是有一天遇到了一个麻烦事——虚拟硬盘空间不!够!了!

笔者使用了df -h命令一看,结果发现,主硬盘(/dev/sda1)总空间居然只有10G,然而一般的系统镜像初始大小就超过9G。

在网上一查,发现vagrant其实最初设计定位是快速还原运行环境,于是vagrant一般情况下在虚拟机初始化阶段不会留出很足的主硬盘空间。

于是这就很尴尬了,用了大半年就发现空间不够了,甚至pip3 install都无法使用。

后来再一查,找到了一个亲测可行的解决方案——既然vagrant自身设定尴尬,那就直接通过vbox操作使之不尴尬!

准备工作

环境变量

在这次操作中,我们需要用到virtualbox提供的vboxmanage命令。所以我们首先需要将此命令添加到环境变量中。

在windows下的操作,就是将virtualbox的安装路径添加至path项。unix系统中应该类似。

记录原始硬盘信息

输入如下命令

vboxmanage showhdinfo "box-disk1.vmdk"

记录下原硬盘的uuid,之后会有用。

制作扩容版硬盘

首先是将原硬盘进行克隆操作

vboxmanage clonehd "box-disk1.vmdk" "new-virtualdisk.vdi" --format vdi

将硬盘克隆成了vdi格式后,就可以开始下一步的扩容操作了:

vboxmanage modifyhd "new-virtualdisk.vdi" --resize 30720

其中·30720单位为MB,即表示30G空间。

接下来将硬盘文件转回原来的格式(其实直接使用vdi格式也可以),以及,建议不要直接覆盖原来的 vmdk硬盘文件,以作备份。

VBoxManage clonehd "new-virtualdisk.vdi" "resized.vmdk" --format vmdk

记录一下新vmdk文件的uuid信息。到这一步,带有原数据和新尺寸的硬盘就制作完毕了。

将新硬盘载入使用

替换原硬盘文件

虽然说是替换,不过还是建议将原来的vmdk文件进行一个备份。

字面意思,替换原文件

windows:

ren box-disk1.vmdk box-disk1-backup.vmdk
ren resized.vmdk box-disk1.vmdk

linux:

mv box-disk1.vmdk box-disk1-backup.vmdk
mv resized.vmdk box-disk1.vmdk

修改.box配置文件

其实替换完机子之后,还差最后一步。

打开原来的vmdk对应的box文件,将原来的vmdk的uuid信息全部替换为新vmdk文件的uuid

要注意,可能有不止一处,一定要好好查找一下,保证替换完全。

大功告成

截图纪念:

可以看到,主硬盘现在已经扩大到了30G,再也不用担心空间不够用啦。

方法来源:修改Vagrant box磁盘大小

【vagrant】硬盘扩容的更多相关文章

  1. [linux]如何为Virtualbox虚拟硬盘扩容(转载)

    前言 这个教程介绍如何为Virtualbox虚拟硬盘扩容,虚拟硬盘分为动态分配大小和固定虚拟硬盘,扩容的方法不一样: 如何为动态分配的Virtualbox虚拟硬盘扩容 如何为固定大小的Virtualb ...

  2. virtualbox硬盘扩容

    https://blog.csdn.net/ouyang_peng/article/details/53261599 1. cmd界面进入virtualbox安装目录:cd C:\Program Fi ...

  3. EVE-NG硬盘扩容,存储海量镜像

    EVE-NG硬盘扩容,存储海量镜像 来源 http://blog.51cto.com/sms1107/1928453 一.查看当前磁盘使用情况 /dev/mapper/eve--ng--vg-root ...

  4. linux 为动态分配的Virtualbox虚拟硬盘扩容

    如何为动态分配的Virtualbox虚拟硬盘扩容 查看虚拟硬盘是否是动态分配大小 打开虚拟机的设置界面,在左侧栏点击存储.在存储树下面选择你的虚拟硬盘.在右边可以看见虚拟硬盘的信息.在下面可以看见,我 ...

  5. [技术博客] 【vagrant】硬盘扩容

    同样,这也是少昂早年走过的坑,这里直接贴出少昂个人博客链接:https://www.cnblogs.com/HansBug/p/9447020.html PS:有一位经验丰富的后端大佬坐镇指挥是多么幸 ...

  6. linux服务器加硬盘扩容

    from: http://bbs.chinaunix.net/thread-3613556-1-1.html 试验环境: vmware下,centos6,64位版本,原来系统默认分区,/dev/sda ...

  7. (转)fastdfs group通过添加硬盘扩容

    通过给group的机器添加硬盘的方式,实现某个group的扩容. fastdfs在一台服务器支持多个store_path,每个store_path指向一个存储路径.url “M00/3F/E1/oYY ...

  8. [Linux] PHP程序员玩转Linux系列-腾讯云硬盘扩容挂载

    1.PHP程序员玩转Linux系列-怎么安装使用CentOS 2.PHP程序员玩转Linux系列-lnmp环境的搭建 3.PHP程序员玩转Linux系列-搭建FTP代码开发环境 4.PHP程序员玩转L ...

  9. Oracle VM VirtualBox虚拟机内Linux系统硬盘扩容步骤(CentOS6.5)

    1.首先获取要扩容的虚拟机的 UUID VBoxManage 改命令在C:\Program Files\Oracle\VirtualBox目录内,可先添加该目录到环境变量.C:\Users\yzkj- ...

随机推荐

  1. python小白——进阶之路——day2天-———数据类型和Number类型和str字符串

    ### -python的六大标准数据类型(1)Number 数字类型(int float bool complex)(2)String 字符串类型(3)List 列表类型(4)Tuple 元组类型(5 ...

  2. Java获取Linux和Window系统CPU、内存和磁盘总使用率的情况

    这是一个工具类,获取的内容: CPU使用率:得到的是当前CPU的使用情况,这是算出的是两次500毫秒时间差的CPU使用率 内存使用率:[1 -  剩余的物理内存/(总的物理内存+虚拟内存) ] * 1 ...

  3. 随心测试_软测基础_004<测试人员工作职责>

    接上篇续,依据_软测基础体系:<依据不同的测试对象,选取适合的方法,按照设计的流程完成测试工作,检验整个过程是否达到测试的目的>.“学以致用”,实践于工作职责 常见面试题: —— 诸如以下 ...

  4. 通知实战 设置通知图片(iOS10以后的)

    解释两个基本扩展(Notification Content.Notification Service) Notification Content其实是用来自定义长按通知显示通知的自定义界面 Notif ...

  5. Spring缓存注解@Cacheable、@CacheEvict、@CachePut使用(转)

    原文地址:https://www.cnblogs.com/fashflying/p/6908028.html 从3.1开始,Spring引入了对Cache的支持.其使用方法和原理都类似于Spring对 ...

  6. 关于vue build时一直报错

    真鸡儿坑,截图说下是什么错: 像上面这种,一大堆,看不出具体是为什么,然后根据网上搜到的教程注释了webpack.base.conf.js里的某一行: 重新build,成功.......... 醉了啊 ...

  7. Linux(Ubuntu)使用日记------为程序添加桌面快捷方式

     我们Ubuntu中的所以的程序的快捷方式都放在了/usr/share/applications文件夹下,都是以.desktop结尾的文件.我们可以在这个文件夹下创建我们的快捷方式,然后复制到桌面即可 ...

  8. python之路8-内置模块介绍

    time & datetime模块 1 #_*_coding:utf-8_*_ 2 __author__ = 'Alex Li' 3 4 import time 5 6 7 # print(t ...

  9. odoo Model字段的参数

    odoo Model字段的参数 class Field(object): """ The field descriptor contains the field defi ...

  10. 2018年第九届蓝桥杯题目(C/C++B组)汇总

    第一题 标题:第几天 2000年的1月1日,是那一年的第1天. 那么,2000年的5月4日,是那一年的第几天? 注意:需要提交的是一个整数,不要填写任何多余内容. 解题思路: 1.  判断2月有几天, ...