本文介绍使用VMware虚拟化平台部署OpenWrt/HomeLede,并扩容固件硬盘的方法。

推荐使用虚拟化方式部署软路由,理由如下:

  • 部署、升级、回退、扩容等操作非常方便,特别适合折腾
  • 可以方便的调整网络结构(个人不建议直通,直通可能会带来的一点性能优势,但丧失了灵活性)

本文使用的软件情况:

开始前,请确认:

  • 虚拟化平台工作正常
  • Internet线路正常
  • 获取了HomeLede固件

操作步骤:

  • 使用VMware Workstation在本地创建虚拟机,部署HomeLede(并完成配置,本文中略)
  • 上传至Esxi启动

这样操作的优势:

  • 相比于使用Esxi的基于Web浏览器的管理界面,WMware Workstation是Windows本地应用,不仅操作体验方便,还可以进行可以一些Esxi无法完成的操作(比如编辑虚拟磁盘)。
  • 无需转换固件vmdk格式,VMware Workstation会自动处理
  • 本地测试路由运行没问题后再上传到Esxi,相比于直接在Esxi上操作安全很多

操作详述


1 创建虚拟机


2 选择HomeLede的ESXI格式固件作为虚拟机硬盘。(建议提前创建好虚拟机保存位置,将HomeLede固件拷贝进去)

  

注意:这里会提示转换虚拟磁盘格式,选择“转换”即可。

在向导最后一页,打开“自定义硬件”,为虚拟机添加第二块网卡(默认会添加一块,对应于HomeLede内部的eth0,也就是LAN,再增加一块,对应于eth1,也就是WAN)。 为了测试方便:

  • 这里第一块网卡选择了“仅主机模式”,默认对应于VMware Workstation在系统中创建的VMNet1。用于模拟HomeLede的LAN。
  • 第二块网卡选择“桥接”模式,相当于使这台虚拟机直接连入家庭网络。用于模拟HomeLede的WAN(可以直接利用家庭网络上网)。


3 扩充硬盘

点击“编辑虚拟机”设置。

选择“硬盘”,点击“扩展”,在弹出框内输入容量,最后点击“扩展”。


4 启动HomeLede虚拟机,进行磁盘分区及格式化

点击“开启此虚拟机”,等待HomeLede引导完毕。

在命令行界面,执行硬盘分区操作。 固件默认磁盘(Linux下第一块磁盘标记为/dev/sda)有两个分区,刚才执行了扩充操作,在现有两个分区后面扩展了60G容量,现在要把这新扩充的部分做成一个新的分区。 执行命令fdisk /dev/sda,表示开始对第一块硬盘进行分区。

依次输入:

  • n (表示新建分区)回车
  • p (创建一个新的主分区)回车
  • 3 (创建第三分区,固件内置分区分别为/dev/sda1、/dev/sda2,现在要将扩充的容量创建为第三分区,也就是/dev/sda3)回车
  • w (将新创建的分区写入磁盘分区表)回车

接下来,对新创建的分区进行格式化。

输入mkfs.ext4 /dev/sda3,将新创建的分区格式化为ext4格式。

最后,重启路由。

重启后可以进行一些在本地的换固件的准备工作。

比如:

  • 临时修改固件WAN的IP(如果默认IP和你家庭网络路由冲突的话),打开图形界面完成一些配置。
  • 上传一些备份的配置文件(dhcp、ddns、firewall、psw等等)
  • 测试固件中分流软件是否运作正常
  • 将安装软件路径、docker,某些需要记录日志的路径指向新增加的大容量分区。
  • 全部完成后,如果临时修改过路由ip,记得改回来
  • 关闭虚拟机

5 上传至ESXI

按Ctrl+L调出连接服务器窗口。或者在从菜单中寻找“WorkStation”->“文件”->“连接服务器”。 输入Esxi服务器 IP,用户及密码。

随后,上传HomeLede虚拟机到Esxi服务器。

选择已经连接的服务器。

 

至此,HomeLede虚拟机已经成功上传至Esxi,接下来在Esxi上配置一下网络,即可启动。

使用Esxi虚拟化部署OpenWrt/HomeLede+扩容硬盘 保姆级教程的更多相关文章

  1. Eclipse for C/C++ 开发环境部署保姆级教程

    Eclipse for C/C++ 开发环境部署保姆级教程 工欲善其事,必先利其器. 对开发人员来说,顺手的开发工具必定事半功倍.自学编程的小白不知道该选择那个开发工具,Eclipse作为一个功能强大 ...

  2. 【k8s】在AWS EKS部署并通过ALB访问k8s Dashboard保姆级教程

    本教程适用范围 在AWS上使用EKS服务部署k8s Dashboard,并通过ALB访问 EKS集群计算节点采用托管EC2,并使用启动模板. 使用AWS海外账号,us-west-2区域 使用账号默认v ...

  3. VMware vSphere6.0 服务器虚拟化部署安装图解

    一 VMware vSphere部署的前期规划要点 1 vSphere的优点 (略) 2 如何利用现在的设备架构虚拟化环境 在虚拟化过程中,用户大多会考虑目前现有的服务器.存储.交换机等基础设备是否可 ...

  4. VMware vSphere6.0 服务器虚拟化部署安装图解(最全,最详细)-搭建的所有步骤

    VMware vSphere6.0 服务器虚拟化部署安装图解 一 .VMware vSphere部署的前期规划要点 1.vSphere的优点 (略) 2如何利用现在的设备架构虚拟化环境 在虚拟化过程中 ...

  5. linux硬盘挂载-新硬盘挂载和扩容硬盘挂载

    这里对当前我实际操作后的两种硬盘挂载进行整理: 第1种是直接添加一块新硬盘,然后进行挂载. 第2种是对硬盘进行扩容后,对扩容后的空间进行分区再进行挂载. [内容为参考网上资料,再加自已实际操作情况进行 ...

  6. DIY ESXI虚拟化服务器再度升级ESXI6.0 (U盘安装Esxi)

    前期我写了一个篇关于<IT屌丝DIY ESXI虚拟化服务器记实 >链接地址:http://lidongni.blog.51cto.com/2554605/1643996,这次主要是在原有的 ...

  7. -Java-Runoob-高级教程-实例-数组:09. Java 实例 – 数组扩容

    ylbtech-Java-Runoob-高级教程-实例-数组:09. Java 实例 – 数组扩容 1.返回顶部 1. Java 实例 - 数组扩容  Java 实例 以下实例演示了如何在数组初始化后 ...

  8. Linux下手动备份还原硬盘主引导记录MBR跟硬盘分区表DPT教程

    Linux下手动备份还原硬盘主引导记录MBR跟硬盘分区表DPT教程 二 18 奶牛 Linux, Ubuntu, Windows 1,885 views查看评论 最近奶牛一直在折腾linux下的gru ...

  9. 虚拟化之vmware虚拟机扩容与克隆

    前提条件: 1.在新建虚拟机的时候创建磁盘如下图,之后这个磁盘就可以在虚拟机关机状态下动态扩展大小,否则只能通过添加另外一块硬盘的方式来扩容.

随机推荐

  1. python之os模块分类整理

    OS模块简单介绍: 它是一个Python的系统编程的操作模块,可以处理文件和目录.比如查找文件或目录,对大量的路径与文件处理. 常用操作方法: os.name :指出当前你使用的操作平台,‘nt’代表 ...

  2. 每日一题 - 剑指 Offer 38. 字符串的排列

    题目信息 时间: 2019-06-29 题目链接:Leetcode tag:深度优先搜索 回溯法 难易程度:中等 题目描述: 输入一个字符串,打印出该字符串中字符的所有排列. 你可以以任意顺序返回这个 ...

  3. css定义变量_css原生变量的使用和兼容 附带还有更高性能,文件更高压缩率的好处

    在开发中,css样式有一些属性往往需要重复使用,为了避免代码冗余,降低维护成本.我们需要使用CSS预编译工具[Sass/Less/Stylus],随着这些工具的流行,CSS变量也开始规范制定,目前很多 ...

  4. 四维DP之方格取数

    题目描述 传送门 设有N*N的方格图(N<=20,我们将其中的某些方格中填入正整数,而其他的方格中则放入数字0.如下图所示(见样例): 某人从图的左上角的A(1,1) 点出发,可以向下行走,也可 ...

  5. POJ3057 Evacuation 二分图匹配+最短路

    POJ3057 Evacuation 二分图匹配+最短路 题目描述 Fires can be disastrous, especially when a fire breaks out in a ro ...

  6. Layui数据表格动态加载操作按钮

    效果: 方法一:绑定模版选择器 <div class="layui-card"> <div class="layui-card-body layui-r ...

  7. Kafka入门(1):概述

    摘要 在本文中,我将从为什么需要消息队列开始讲起,举两个小例子,跟你聊聊目前消息队列的一些使用场景. 比如消息队列在复杂系统中的解耦,又比如消息队列在高并发下的场景如果让流量变得更平缓. 随后我会跟你 ...

  8. python面试题三:Python 网络编程与并发

    1 简述 OSI 七层协议. OSI七层协议模型主要是: 应用层(Application):为用户的应用程序(例如电子邮件.文件传输和终端仿真)提供网络服务. 表示层(Presentation):使用 ...

  9. java 面向对象(三十):异常(三) 手动抛出异常对象

    1.使用说明在程序执行中,除了自动抛出异常对象的情况之外,我们还可以手动的throw一个异常类的对象. 2.[面试题] throw 和 throws区别:throw 表示抛出一个异常类的对象,生成异常 ...

  10. 数据可视化之powerBI基础(十三)熟练使用Power BI的日期切片器

    https://zhuanlan.zhihu.com/p/64416522 交互式设计可以让用户使用的过程中更具参与感,在PowerBI中经常用到的交互方式就是切片器,利用它可以从不同维度查看数据,切 ...