最近闲来无事,想研究下openwrt, 所以尝试着自己搭建一个来玩玩, 当然这里不是以源码编译的形式,那样太耗时。

首先官网下载已有的系统image,  路径如下 :

https://archive.openwrt.org/chaos_calmer/15.05.1/x86/generic/

然后找到combined-ext4.img.gz 这个image, 下载下来后, 解压, 得到一个.img的文件:

vmware安装就不讲了, 可以参见我的另一篇博客。

由于.img文件没法被vmware直接使用,需要转换成vmdk格式的,那么需要使用qemu-img工具。

ubuntu下直接使用 :

sudo  apt-get  install  qemu-utils  -y
    安装完后, 使用下面命令生成.vmdk格式的文件:

sudo qemu-img convert -f raw openwrt-15.05.1-x86-generic-combined-ext4.img -O vmdk openwrt-15.05.1-x86-generic-combined-ext4.vmdk
      
  准备完毕, 接下来开始搭建openwrt环境。

打开vmware, 选择Create a New Virtual  Machine 。

1,在Virtual  Machine Configuration 选择"Custom(advanced) ":

2,点下一步, Virtual  Machine  Hardware  Compatibility  保持默认就好了 :

3, 继续下一步,  在install  operating  system  from选择 “I  will  install the  operating system later.” :

4 ,继续下一步, 在Guest  Operating  System选择 “Linux”, Version选择 “Other  Linux  3.x  kernel”  :

5 ,继续下一步, 在Virtual  Machine  Name 中设置虚拟机名称, 这个随意命名就好了, 在这里设置为openwrt-15.05 ,路径的话设置成你实际想要保存的路径即可, 这里是/home/ballack/vmware/openwrt-15.05/:

0

6 ,继续下一步, Processors 和 Memory 都保持不变就好了 :

7 ,继续下一步, Network  Connection 选择 “Use  bridged  networking” , 这里网上大部分都说设置为 “ Use  network  address  translation(NAT)” , 但是我后面测试没法和主机ping通, 后面有空再研究了, 先mark一下!!

8 ,继续下一步, I/O  Controller  Types 保持默认的就可以:

9 ,继续下一步, Virtual  Disk  Type 选择 IDE,  这里一定要选择IDE, 不然启动时会找不到分区!!!

10 ,继续下一步 , Disk 选择 “Create  a  new  Virtual  Disk” :

11,继续下一步, Disk  Size 保持不变:

12 ,继续下一步, Disk File 保持不变就好 :

13 ,继续下一步, 选择 Customize  Hardware :

14 ,将New CD/DVD (IDE), Sound Card, Printer, USB Controller 都删除掉 ,然后close退出。

15 , 点击Finish就好了, 看到以下界面, 说明创建成功了:

上面的步骤做完后, 不要着急启动, 先把前面使用qemu-img工具转换得到的openwrt-15.05.1-x86-generic-combined-ext4.vmdk 文件拷贝到刚创建的openwrt虚拟机工作目录下:

cp  openwrt-15.05.1-x86-generic-combined-ext4.vmdk   /home/ballack/vmware/openwrt-15.05
  进入openwrt虚拟机工作目录, 通过 ls 命令查看文件:

cd /home/ballack/vmware/openwrt-15.05

vim  openwrt-15.05.vmx  
  修改配置:

把 ide1:1.fileName = "openwrt-15.05.vmdk"  改为:

ide1:1.fileName = "openwrt-15.05.1-x86-generic-combined-ext4.vmdk"

保存, 退出 !!

配置完毕, 启动openwrt :

这样就启动成功了!!!

不过你会发现主机没办法通过网页访问openwrt, 这里只需要修改 /etc/config/network文件:

可以看到 lan0 的 ipaddr 是 192.168.1.1,由于我主机的 ip 是 192.168.1.142, 路由器网关也是192.168.1.1, 这样就没法访问openwrt了,  在此将 lan0 ipaddr 修改为 192.168.1.4,要保证和主机是在同一个网段。

修改后如下:

然后保存, 退出,  执行  /etc/inid.d/network   restart 重启服务 。

然后主机ping一下192.168.1.4,此时是可以ping通的 :

然后打开浏览器, 输入192.168.1.4, 可以看到正常访问了:

直接点 Login, 界面会提示你设置密码 :

设置完密码后, 直接点Save & Apply 即可。

用root帐号和刚才设置的密码登录后, 就可以看到真正的openwrt界面了:

————————————————
版权声明:本文为CSDN博主「ballack_linux」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ballack_linux/article/details/81331527

vmware下搭建openwrt的更多相关文章

  1. Linux环境搭建 | VMware下共享文件夹的实现

    在进行程序开发的过程中,我们经常要在主机与虚拟机之间传递文件,比如说,源代码位于虚拟机,而在主机下阅读或修改源代码,这里就需要使用到 「共享文件」 这个机制了.本文介绍了两种共享文件夹的实现机制:VM ...

  2. MongoDB学习笔记—Linux下搭建MongoDB环境

    1.MongoDB简单说明 a MongoDB是由C++语言编写的一个基于分布式文件存储的开源数据库系统,它的目的在于为WEB应用提供可扩展的高性能数据存储解决方案. b MongoDB是一个介于关系 ...

  3. CentOS6.5下搭建LAMP+FreeRadius+Daloradius Web管理和TP-LINK路由器、H3C交换机连接,实现,上网认证和记账功能

    什么是RADIUS服务: RADIUS:(Remote Authentication Dial In User Service)中文名为远程用户拨号认证服务,简称RADIUS,是目前应用最广泛的AAA ...

  4. Ubuntu下搭建Hyperledger Fabric v1.0环境

      多次尝试才正常启动了Fabric,如遇到各种莫名错误,请参考如下一步步严格安装,特别用户权限需要注意. 一.安装Ubuntu16 虚拟机或双系统,虚拟机有VirtualBox或者VMware,Ub ...

  5. 基于VMware Workstation搭建开发服务器

    基于VMware Workstation搭建开发服务器   文章为本人原创,转载请联系作者并注明出处.晓松 源URL: https://www.jianshu.com/p/e62ab7de0124 我 ...

  6. 初学Hadoop:利用VMWare+CentOS7搭建Hadoop集群

     一.前言 开始学习数据处理相关的知识了,第一步是搭建一个Hadoop集群.搭建一个分布式集群需要多台电脑,在此我选择采用VMWare+CentOS7搭建一个三台虚拟机组成的Hadoop集群. 注:1 ...

  7. win10下搭建jz2440v3(arm s3c2440)开发及gdb调试环境【转】

    本文转载自:https://blog.csdn.net/newjay03/article/details/72835758 本来打算完全在Ubuntu下开发的,但是水平有限,没有在Ubuntu下找到合 ...

  8. 在Win7虚拟机下搭建Hadoop2.6.0伪分布式环境

    近几年大数据越来越火热.由于工作需要以及个人兴趣,最近开始学习大数据相关技术.学习过程中的一些经验教训希望能通过博文沉淀下来,与网友分享讨论,作为个人备忘. 第一篇,在win7虚拟机下搭建hadoop ...

  9. Vmware下的Linux系统,安装WPS报错:[Errno 256] No more mirrors to try

    最近新装了虚拟环境Vmware下的Linux系统,准备看doc文档发现不能读取,才想起来一起都是重新开始的~没别的~开始安装吧: 1.关虚拟机Linux,添加cdrom镜像ISO文件--开虚拟机--- ...

随机推荐

  1. 如何快速使用YOLO3进行目标检测

    本文目的:介绍一篇YOLO3的Keras实现项目,便于快速了解如何使用预训练的YOLOv3,来对新图像进行目标检测. 本文使用的是Github上一位大神训练的YOLO3开源的项目.这个项目提供了很多使 ...

  2. 【leetcode】756. Pyramid Transition Matrix

    题目如下: We are stacking blocks to form a pyramid. Each block has a color which is a one letter string, ...

  3. 【Flutter学习】页面跳转之路由及导航

    一,概述 移动应用通常通过成为‘屏幕’或者‘页面’的全屏元素显示其内容,在Flutter中,这些元素统称为路由,它们由导航器Navigator组件管理.导航器管理一组路由Route对象,并提供了管理堆 ...

  4. TP model where条件丢失

    最近我修复了一个bug,这个bug是用户能看到所有用户的数据,经过排查发现是where条件丢失,导致查询语句直接查了所有数据. 但是代码并没有问题,然后查到了 ThinkPHP/Library/Thi ...

  5. .net文件下载的四种方法

    using System; using System.Data; using System.Configuration; using System.Web; using System.Web.Secu ...

  6. tar的具体参数和用法!

    tar -c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解压都要用到其中一个,可以和别的命令连用但只能用其中一个.下面的 ...

  7. eclipse debug (调试)基础

    进入debug模式: 1.设置断点 2.启动servers端的debug模式 3.运行程序,在后台遇到断点时,进入debug调试状态 ============================= 作用域 ...

  8. 用 Flask 来写个轻博客 (15) — M(V)C_实现博文页面评论表单

    目录 目录 前文列表 实现 post 视图函数 在 posthtml 中添加表单 效果 前文列表 用 Flask 来写个轻博客 (1) - 创建项目 用 Flask 来写个轻博客 (2) - Hell ...

  9. .NET Core开源组件:后台任务利器之Hangfire 转载 https://www.cnblogs.com/chenug/p/6655636.html

    .NET Core开源组件:后台任务利器之Hangfire   一.简述 Hangfire作为一款高人气且容易上手的分布式后台执行服务,支持多种数据库.在.net core的环境中,由Core自带的D ...

  10. 字符串模式匹配算法系列(三):Trie树及AC改进算法

    Trie树的python实现(leetcode 208) #!/usr/bin/env python #-*- coding: utf-8 -*- import sys import pdb relo ...