本文介绍使用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. js实现简单的菜谱全选功能

    思路:全选按钮和子按钮分开考虑,当全选按钮选中的时候,也就是其checked为true的时候,所有的子按钮也全都为true,反之,则为false.子按钮的想法是,当点击某一个子按钮的时候,会看一下是否 ...

  2. C#操作SharePoint文档库文档

    using (Stream file = spFile.OpenBinaryStream()) { //其余代码 }

  3. JavaScript图形实例:再谈IFS生成图形

    在“JavaScript图形实例:迭代函数系统生成图形”一文中,我们介绍了采用迭代函数系统(Iterated Function System,IFS)创建分形图案的一些实例.在该文中,仿射变换函数W的 ...

  4. Layui数据表格加入自定义扩展方法(重新渲染Render当前页数据)

    具体开发中遇到的问题如下, 数据表格的重新渲染或重新加载会导致当前操作的分页 或 配置被清空.我正在操作第5页,重新渲染后就回到了最原始第1页. 需要达到的效果是: 不调用接口,仅仅只是从table. ...

  5. HDU - 5970 题解

    题目链接 HDU - 5970 分析 很显然\(f(x,y)\)与\(f(x+y*k,y)\)的结果相同,因为它们在第一次取模后会变成相同的式子 我们再看一下数据的范围,突破口肯定在\(m\)那里 那 ...

  6. 洛谷 P4408 [NOI2003]逃学的小孩

    题目传送门 题目描述 Chris家的电话铃响起了,里面传出了Chris的老师焦急的声音:“喂,是Chris的家长吗?你们的孩子又没来上课,不想参加考试了吗?”一听说要考试,Chris的父母就心急如焚, ...

  7. 调整数组顺序使奇数位于偶数前面(剑指offer-13)

    方法1:新建两个数组,一个数组用来放奇数,一个数组用来放偶数,最后再把它们合并起来. 1 import java.util.*; 2 public class Solution { 3 public ...

  8. __stdcall、__cdcel和__fastcall三者的区别

    转自:https://www.cnblogs.com/huhewei/p/6080143.html 一.概述 __stdcall.__cdecl和__fastcall是三种函数调用协议,函数调用协议会 ...

  9. 使用@AutoConfigureBefore、After、Order调整Spring Boot自动配置顺序

    前言 Spring Boot是Spring家族具有划时代意义的一款产品,它发展自Spring Framework却又高于它,这种高于主要表现在其最重要的三大特性,而相较于这三大特性中更为重要的便是Sp ...

  10. day04总结

    print("陈少最帅!!!") 输出结果: 陈少最帅!!! 可以变,不可变数据类型#1.可变类型:list,dict#在值改变的情况下,id号不变,也就是说内存地址不变,证明就是 ...