openwrt是由Cisco放出源代码的开放无线路由平台。由于是基于linux内核,所以可以将很多linux平台下的软件移植到此平台下,然后让无线路由拥有很多意想不到的功能,例如拿来做BT下载器,音乐播放器,小型数据库处理等等。

环境:

Ubuntu 10.04,subversion,VMware workstation 7.1.3

首先是得到openwrt的源代码。

在Ubuntu下,首先安装上svn工具:

sudo apt-get install subversion

然后装上各种依赖关系包:

sudo apt-get install gcc g++ binutils patch bzip2 flex bison make autoconf gettext texinfo unzip sharutils subversion libncurses5-dev ncurses-term zlib1g-dev

sudo apt-get update

然后进入home目录,建立文件夹:

mkdir openwrt

cd openwrt

然后使用svn命令行checkout出源代码:

svn checkout svn://svn.openwrt.org/openwrt/trunk

进入trunk文件夹:

cd trunk

更新openwrt:

./scripts/feeds update -a

安装所有包:

./scripts/feeds install -a

这个时候,我觉得有必要把LUCI编译进内核,这样就方便以后我们通过web来控制openwrt,而不是通过命令行来控制了。所以加上以下命令:

./scripts/feeds update packages luci

./scripts/feeds install -a -p luci

这样之后,在编译内核时才会出现LUci选项。

由于我没有Linksys系列的路由器,而且只是为了体验openwrt,所以我就把openwrt编译成VMware workstation的磁盘镜像,使用VMware workstation来模拟一台路由的硬件环境。

以下为符合此情况的配置:(由于编译时会继续从网络上下载相应的包,所以一旦开始编译,就不要断开连接。但是遇到很大的包,但是下的很慢的,可以中断过程,使用下载过程去相应的网站上下载之后放入)

首先输入make menuconfig,开始进入内核配置界面:

1. Target System (x86) ---> (X) x86
2. 配目标文件系统为 EXT2
        Target Images ---> [*] ext2
        Target Images ---> [*] Build VMware image files (VMDK)
这样就后面编译时产生可以直接在 VM 上用的虚拟硬盘。

配 Web UI :
1) Base system ---> <*> uci................ Utility for the Unified Configuration Interfa
2) LuCI都选上

3) Network --->
<*> uhttpd........................ uHTTPd - tiny, single threaded HTTP server --->
<*> uhttpd-mod-lua... uHTTPd - tiny, single threaded HTTP server (Lua plugin)
4) make V=99 编译,时间有点长,完后,在 bin/x86/ 就是最后编译出来的文件了。
5) 拷贝 bin/x86/ ,我的全部路径是 /home/longjindong/openwrt/trunk/bin/x86/ 中的 “openwrt-x86-genericcombined-ext2.vmdk”到 XP 电脑上;

XP VM 安装运行 OpenWRT:
1. 创建一个虚拟机
打开 VMware --> New --> Virtual Machine ... --> 下一步 --> 下一步 --> linux 、Other Linux 2.6.x kernel --
> 下一步 --> 这里Vm名和路径可以自己指定 --> 下一步 --> 网络默认“Use bridged networking” --> 下一步 --> 这
里的硬盘大小用默认,反证一会要被删掉 --> 完成;这样在 VMware Workstatio 里有“Other Linux 2.6.x kernel”的虚
拟机了。
2. 加载 OpenWRT 虚拟盘并启动
1) 删创建虚拟机时的虚拟盘
右击 “Other Linux 2.6.x kernel” -- > Setting --> Hard Disk --> Remoe;
2) 加载 OpenWRT 虚拟盘
“Other Linux 2.6.x kernel” -- > Settin --> Add --> Hard Disk --> Next --> Use an existing virtual disk --
> Browse ,选前面 “openwrt-x86-generic-combined-ext2.vmdk” --> Finish.
3) 点 run 按钮就可以开始运行 OpenWRT。

上图:

输入192.168.1.1,就可以在浏览器里看见:

这只是编译内核部分,以后把相关的设置和软件开发方面慢慢写出来吧。

ubuntu编译openwrt前端web界面的更多相关文章

  1. 3 django系列之Form表单在前端web界面渲染与入库保存

    author: 温柔易淡(Leo),欢迎技术交流与拍砖 preface 我们在前端写表单的时候,其实可以使用django自带的forms功能来实现,特别是在处理 修改已经存在数据 的场景特别好用,下面 ...

  2. 简单实用后台任务执行框架(Struts2+Spring+AJAX前端web界面可以获取进度)

    使用场景: 在平常web开发过程中,有时操作员要做一个后台会运行很长时间的任务(如上传一个大文件到后台处理),而此时前台页面仍需要给用户及时的进度信息反馈,同时还要避免前台页面超时. 框架介绍: 本架 ...

  3. OpenWRT - WEB界面开发思路和基本方法

    想要对OpenWRT的WEB界面(*下称界面)进行修改.修改的目标是: 1.修改页面的样式,设计为企业的风格(stylesheet) 2.新建自己的功能,实现 访问页面后,用户就可以对配置文件(也就是 ...

  4. 继上次编译openwrt之后,添加web界面

    上编博客写了关于openwrt编译环境和编译一个默认配置的openwrt系统. 现在我正在做如何添加web界面.(hiwooya自带的luci web) 方法如下: 首先在编译环境中配置 make m ...

  5. UIkit – 轻量级前端框架,帮助你快速构建 Web 界面

    UIKit 是一个轻量级,模块化的前端框架,用于构建快速和强大的 Web 界面.UIKit 为您提供了 HTML,CSS 和 JavaScirpt 组件,使用简单,容易定制和扩展.UIKit 基于 L ...

  6. (七)ubuntu下编译openwrt内核的环境配置

    首先安装基本开发环境: sudo apt-get install ssh vim samba tftp nfs 安装编译openwrt须要的包: 解压openwrt包编译出错: Build depen ...

  7. Vue.js – 基于 MVVM 实现交互式的 Web 界面

    Vue.js 是用于构建交互式的 Web  界面的库.它提供了 MVVM 数据绑定和一个可组合的组件系统,具有简单.灵活的 API.从技术上讲, Vue.js 集中在 MVVM 模式上的视图模型层,并 ...

  8. 转:小白编译openwrt固件教程

    原文地址 编译openwrt固件并没有想象的那么复杂,我也是个小白,以下内容是我将网络上的编译教程稍微进行了一下整合.因为我发现很多编译教程没有说明如何更改flash相关配置.   安装ubuntu, ...

  9. Ubuntu系统配置Zabbix前端及中文乱码解决方案

    Ubuntu系统配置Zabbix前端及中文乱码解决方案  作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.安装zabbix 博主推荐阅读: https://www.cnblogs ...

随机推荐

  1. Android-自定义多TAB悬浮控件实现蘑菇街首页效果

    因为项目的一些需求需要用到此种展现方式.  找了市面上大部分有类似功能的应用.  基本思路嵌套ScrollView 转换事件分发给listview 实现. 但是此种方案有个缺点. 在ScrollVie ...

  2. 1 加到 100 的 时间复杂度 C#.

    //1 加到 100 的 时间复杂度: ; ; ; i <= n; i++){ sum += i; } T() = ; //Initialize 'n'. T() = ; //Initializ ...

  3. 解决kernel headers报错

    Make sure you have updated version $ sudo apt-get update Search for kernel version (optional) $ apt- ...

  4. iOS 使用 FFmpeg

    iOS 使用 FFmpeg 字数486 阅读288 评论7 喜欢5 集成 下载FFmpeg For iOS编译脚本: 打开 terminal 执行sh build-ffmpeg.sh: 步骤2执行完成 ...

  5. 一条sql语句循环插入N条不同记录(转)

    SET NOCOUNT ON IF (OBJECT_ID('TB' ) IS NOT NULL ) DROP TABLE TB GO CREATE TABLE TB(ID INT IDENTITY ( ...

  6. 微信小程序开发之入门篇(熟悉项目结构)

    微信小程序创建之后会生成一个项目模板,如下图所示(基本如此,但并不局限于此) 现在分别来说明一下每个文件及目录的意思 app.js 程序的入口文件,必须存在. app.js是小程序的脚本代码.我们可以 ...

  7. 子树大小平衡树(Size Balanced Tree,SBT)操作模板及杂谈

    基础知识(包括但不限于:二叉查找树是啥,SBT又是啥反正又不能吃,平衡树怎么旋转,等等)在这里就不(lan)予(de)赘(duo)述(xie)了. 先贴代码(数组模拟): int seed; int ...

  8. Linux嘚瑟一时的Shared Object

    场景概述 近来接触node程序以及负责实现node扩展来对象本地SDK的调用,旨在借node及其第三方库来快速实现RESTful API以及给浏览器端使用.当然这中间研究工作耗了不少时间. 在实现目标 ...

  9. 从windows到Linux-ubuntu新手

    版本选择: 经多次实验,Ubuntu个人认为长期支持(LTS)版才值得装. VMware9中测试:Ubuntu10.04开机内存170M,Ubuntu12.04开机内存340M. 个人感觉Ubuntu ...

  10. JQuery 实现鼠标经过图片高亮显示,其余图片变暗

    效果图: 当鼠标经过图片时,其余图片变暗,来高亮显示当前图片,主要用的是对比度.当然你也可以先把其他图片默认变暗,鼠标经过时高亮显示,不过,无鼠标经过时整体图片都会是偏暗色调. 效果可以通过 三步实现 ...