内容简介:有时候为了折腾,在PC的虚拟机上跑 OpenWrt 有着很多优势。这里介绍一下使用 Vmware 运行 OpenWrt 的方法。1. 准备一个Linux发行版的虚拟机系统,这里使用Ubuntu 18.042. 进入Ubuntu系统,打开终端,下载系统镜像:
有时候为了折腾,在PC的虚拟机上跑 OpenWrt 有着很多优势。这里介绍一下使用 Vmware 运行 OpenWrt 的方法。
1. 准备一个 Linux 发行版的虚拟机系统,这里使用Ubuntu 18.04
2. 进入Ubuntu系统,打开终端,下载系统镜像:
mkdir temp cd temp wget https://downloads.openwrt.org/releases/18.06.1/targets/x86/64/openwrt-18.06.1-x86-64-combined-ext4.img.gz gunzip openwrt*.img.gz sudo apt install qemu-utils qemu-img convert -f raw -O vmdk openwrt-18.06.1-x86-64-combined-ext4.img openwrt-18.06.1-x86-64-combined-ext4.vmdk
然后把转好的vmdk文件拷贝到宿主机上,记得备份一份以免后续重新分区时候操作失误是还得重新下。
3. 扩展磁盘大小,首先将vmdk挂载到vmware,在Ubuntu虚拟机的设置里,点击添加硬盘(需要先把虚拟机关机)
调整最大磁盘大小,酌情设置。
4. 调整分区
开机,进终端,sudo -s提权为root,并确定新挂上去的磁盘文件对应的设备名是什么,可以用fdisk -l 查看所有设备,找到挂载的磁盘名字,一般来说是/dev/sda,接着:
fdisk /dev/sda
然后输入p,回车
记住第二个分区的起点数字(33792),然后按:
d[Enter] 2[Enter] 删除第二个分区
然后重新分区,并应用
n [enter] p [enter] 2 [enter] 33792 [enter] [enter] w [enter]
然后先卸载/dev/sda2分区(也可以使用umount /dev/sda2)
然后在终端依次执行(如果提示确认执行时候按y),
e2fsck -f /dev/sda2
resize2fs /dev/sda2
PS:下面这张图是我后截的,里面的信息可能和上面的截图不一致
完成!
然后将Ubuntu关机,移除openwrt的磁盘。
5. 创建openwrt虚拟机,需要注意的截屏了,其他的按需设置:
创建好以后可以把USB的支持改成3.0
6. 设置网络
OpenWrt至少需要两张网卡,一个作为WAN口一个作为LAN口,WAN口使用NAT方式连接宿主机网络用于访问互联网,LAN口要模拟一个交换机出来,所以这里使用“仅主机”模式。设置步骤如下。
点击VMware软件菜单的“编辑”-“虚拟网络编辑器”,弹出的虚拟网络编辑器窗口,UAC打开时,默认没有管理员权限,各个项目是灰色无法更改,此时点击右下角的“更改设置”即可。
然后点击“添加网络”,添加一个VMnet2网络,并按照下图设置。
设置完毕后,点击确定。然后打开OpenWrt虚拟机的设置,为虚拟机添加第二张网卡(点击添加,然后选择网络适配器,确定)。
然后将两张虚拟网卡的连接方式按下图配置,网卡1连接到刚才建立的VMnet2,网卡2直接选NAT模式。
这里要提一下,VMware的网卡到了OpenWrt里头,网卡1对应eth0,网卡2对应eth1,而默认OpenWrt将eth0连到LAN口,因此这里将网卡一配置为VMnet2,方面接下来从宿主机连接到OpenWrt。
接下来开机,等待大概二十秒就启动起来了,不过大概到一分钟左右,出现random字样的log后算是完全启动完毕,此时按一下回车,命令行就出来了。不过一般也不在VMware这里操作,因为不太方便,通常还是通过luci/SCP/SSH来操作。
OpenWrt的LAN口默认是192.168.1.1的IP,这个考虑到这个IP可能和宿主机网络冲突,最好换掉;这里先断开宿主机的物理网卡连接防止IP冲突,然后修改VMnet2的虚拟网卡,手工指定IP为192.168.1.2
然后应该就可以通过浏览器访问192.168.1.1进入luci了。修改LAN口的网段:
然后重新将VMnet2网卡设置为IP自动获取,确认其获取到192.168.126.x的IP后,使用192.168.126.1重新访问luci,并添加WAN口:
看到WAN口正确的获取到了VMware分配的IP即告成功。此后使用SSH连接后,尝试opkg update获取软件列表,使用opkg install安装软件,如果没问题,则网络配置完成!剩下的就随便搞了和路由器上用一个样。
PS:由于VMnet2网卡上,不配置VMware的DHCP服务,而是由OpenWrt的DHCP分配IP,因此,OpenWrt开机后,可能VMnet2并未正确获取到OpenWrt分配的IP,此时禁用并重新启用即可,此种情况经常出现在宿主机重启过后。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 像虚拟机一样运行容器
- 【Java虚拟机规范】Java虚拟机结构:运行时数据区
- 弄清Java虚拟机GC的运行过程
- 技术进阶:Java虚拟机(JVM)运行时详解
- Java代码如何运行在Java虚拟机中
- Java 虚拟机中的运行时数据区分析
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Impractical Python Projects
Lee Vaughan / No Starch Press / 2018-11 / USD 29.95
Impractical Python Projects picks up where the complete beginner books leave off, expanding on existing concepts and introducing new tools that you’ll use every day. And to keep things interesting, ea......一起来看看 《Impractical Python Projects》 这本书的介绍吧!