小米路由器挂php,小米路由器mini 安装openWrt+更新源+挂载U盘+安装python
刚刚入手一个小米路由器mini,本来就是打算装openWrt的,想试试玩玩看。
刷openwrt的基本流程是参考的如下博主的文章
http://www.right.com.cn/forum/thread-147929-1-1.html
没有遇到什么严重问题,但是一些细节需要注意。
(0)小米路由器mini和小米路由器,不要搞混了。。。。
(1)截止到今天,小米路由mini的firmware版本为0.7.51,我的是0.7.50。一定要先刷入一个开发板而不是稳定版,并且能够支持上面博主所说的mtd命令的版本。
若不使用低版本,在尝试mtd -r write xxxx.bin firmware时会找不到firmware的错误。
我使用的是0.7.15版,这个版本可以从如下地址获得。
http://www.miui.com/thread-1776173-1-1.html
(2)刷机之前需要做一次路由器绑定,然后连接上路由器,进入miwifi.com,再进入“下载”页面。找到页面下面的“SSH工具”那个按钮,此时会有一个root密码需要记下来,后面用。
(3)刷miwifi_ssh.bin时,一定要保证U盘里没有残留miwifi.bin。
(4)貌似一定要用WinSCP这个软件将待刷入的固件传送到小米路由mini上,记得选择SCP模式。
(5)刷完以后,重新连接小米路由器mini,这次使用的是192.168.1.1的ip,要配置好ssh,之后才能通过电脑ssh上去。
我选择的是Dropbear接口为wan。我ssh工具用的是SecureCRT,并不是上面博主说的putty。
好,总的来说刷机过程还是没有痛苦的。系统小,刷起速度也快。刷的时候还在和女朋友看关于大脑的纪录片。看完了以后想,怎么也要搞个软件源才行吧,于是就ssh上小米路由mini。上来就
opkg update
好嘛,没有一个源是可以的。。。于是着手手动改源。目前我刷的openWrt是PandoraBox 14.09 r355,是基于openWrt Barrier Breaker的。使用的原地址是
http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/
这里面有好几个文件夹,将这些源都写到/etc/opkg.conf里。我的opkg.conf文件如下
rc/gz barrier_breaker_base http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/base
src/gz barrier_breaker_management http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/management
src/gz barrier_breaker_oldpackages http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/oldpackages
src/gz barrier_breaker_packages http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/packages
src/gz barrier_breaker_routing http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/routing
src/gz barrier_breaker_telephony http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/packages/telephony
dest root /data
dest ram /tmp
lists_dir ext /data/var/opkg-lists
option overlay_root /data
保存后运行opkg update。发现源是可以链接上了,但是报出类似于如下错误
Package xxx version xxx has no valid architecture, ignoring.
一些朋友也遇到了
http://www.right.com.cn/FORUM/thread-128532-1-1.html
google了一下原因,发现是源指定的architecture和路由上刷好的系统的不一致造成的。一些解决方案可以从如下地址找到
http://wayjam.me/post/two-problems-about-install-package-on-openwrt.md
其实在openWrt官网上已经对opkg进行了详细的说明,上面博主的做法也是和openWrt官网推荐的方法相一致(http://wiki.openwrt.org/doc/techref/opkg),意思就是在/etc/opkg.conf文件中加入对系统支持的architecture的设置,具体方法是添加如下几行
arch all 100
arch 200
arch 300
官网的意思是告诉opkg,arch类型2的包可以兼容的装在arch类型1的系统上。那么问题来了,现在的arch类型是什么呢?折腾了好久,我尝试过查看系统的arch,利用
uname -a
我得到
Linux PandoraBox 3.10.64 #20 Wed Jan 14 00:19:50 CST 2015 mips GNU/Linux
就是说系统的mechine type 是mips的,这个硬件描述我也不是很懂,再看看uname -p,查看一下processor type,好嘛。。。显示是这样的
整个人都不好了有木有!!这unknown算是什么?
再看cat /proc/cpuinfo
也就是说,小米路由mini使用的是联发科的MT7620A型号的芯片,机器类型属于mips类的,这也与官网的源地址相一致,
于是我又尝试了
arch all 100
arch mips 200
arch mips2 300
arch ramips 400
arch unkown 500
入此种种甚至是待arch unkown的脑残设置,每次都有opkg update,每次都要看那一大片报错信息。夜已经深了,为了不打扰室友,在客厅里用的笔记本电池,电脑的电也剩一半了。突然灵机一动,想如果能确定系统指定的arch,不就不就不用乱试各种arch了么,虽说最可能的ramips 的architecture都不行,但是总该在什么地方写着正确的arch的配置吧。于是开始翻官网的源目录,发现疑似文件
下载下来,notepad++打开查看,配置项目还是很多的,直接搜索“ARCH”,找到了这样的一行
我只能说,我擦了,为毛要有一个"_24kec"的后缀!?
把脑残的opkg.conf文件改成
再次opkg update,终于没有错误了!!!!yeah
那么整个什么软件安装一下试试看呢,先来python吧!其实我只想装一个python而已。。。。google一下发现貌似要先装libc库,貌似还要手动装(可参考这篇博客中关于安装Transmission的描述,http://blog.sina.com.cn/s/blog_56a70c040102vaay.html),opkg自己装不了。于是在官网的源列表里找libc,很容易找,就在base文件夹里
下载下来。从这个libc名字上也看到,确实系统的arch是ramips_24kec,看来是自己too森破too naive啊
scp到路由器/tmp,然后寻思着,这玩意应该装在挂载的u盘上吧,要不根文件系统的空间不够啊,于是根据那个装Transmission的博主的做法,外加自己google到的其他方法,尝试将库安装到u盘上。openWrt官网上对调整opkg安装位置做了描述,还是改/etc/opkg.conf文件,添加dest设置,用一个别名来代替一个地址位置,在opkg install时用-d参数来控制opkg的安装位置。我就填了两个dest,一个是到U盘的根上,一个是到u盘里新创建的opt目录。这么做有个原因是,openWrt刚刷好的系统里根上是没有opt路径的,可以做一个符号链接从U盘的opt到根上。我的/etc/opkg.conf文件最后变为
然后用opkg安装libc,
opkg -d usb install libc_xxxxx
好嘛,又报错,错误意思是做符号链接时出现了“Operation not permitted”,这个网友遇到了一样的错误
http://www.dd-wrt.com/phpBB2/viewtopic.php?p=766847
完全不知道为什么,关键是,手动做符号链接是可以的,可以将u盘上的文件链接到路由器上。确实没问题。那么问题又来了,这是TM怎么个情况??google了许久,然后在一个德语论坛上找到了一个解决方案,貌似外部挂在的usb存储设备,必须要使用ext格式才能作为opkg安装时符号的链接点。这点在openWrt官网关于扩展根文件系统的描述中都没有找到。
http://forum.nas-portal.org/archive/index.php/t-14384.html
http://wiki.openwrt.org/doc/howto/extroot/extroot.theory
已经是夜里三点了。。。所以我果断选择先睡一觉。。。。主要还是因为手头没有舍得格式化的u盘。。。。。
第二天,找了个不用的microSD卡,加了个读卡器,格式化成了ext4格式,查到小米路由上,再来opkg安装,没问题了!yeah
当然也不忘改一下环境变量,参考这个博主的做法
http://blog.jkey.lu/2013/04/22/openwrt-install-package-on-usb-flash-disk/
一运行python,果然给力,打个hello world,果然可以,来个方向键。。。擦,方向键乱码。。。
好嘛,这又是什么情况。。。
google了一圈,发现貌似是readline的问题,于是opkg了readline的包,还有python-ncurses包,都没用。于是想是不是搞个ipython能好一点。opkg了一下ipython,竟然有!安装,成了运行,报module import错误,擦,这也行!?
查看了一下python的lib,发现确实没有ipython所要import的package,怎么回事,这python安装的不完整???看来要自己编译python了,没想到才第二天就要搞交叉编译,痛苦可能来的太早啊。上openWrt,看看如何develop,从git上搞下来现在trunk代码,按照documentation的方法一步一步的实践,发现,python的编译配置就在feeds/oldpackages/python里,打开makefile看一看,发现openWrt把很多python的package做成独立的ipk文件放到源上了,若是找不到某个package,直接opkg安装就可以了。ipthon说是缺少pydoc,这个对应python-doc,opkg安装,再次运行ipython,起来了。
悲剧的是,方向键还是不能用,看来真的要重新编译python才行了。。。。今天就到这了,搞不动了。
小米路由器挂php,小米路由器mini 安装openWrt+更新源+挂载U盘+安装python相关推荐
- linux 本地yum 恢复,Linux_RHEL系统恢复安装光盘中的yum更新源的方法,安装光盘本地YUM更新源挂载安 - phpStudy...
RHEL系统恢复安装光盘中的yum更新源的方法 安装光盘本地YUM更新源挂载安装光盘: 复制代码代码如下: mount /dev/cdrom /mnt vi /etc/yum.repos.d/loca ...
- 服务器u盘安装win7系统,如何用U盘安装win7原版64位系统
现在很多人都在使用U盘安装win7原版64位系统,不少使用win7系统32位的朋友也想来凑个热闹,想用U盘装win7系统64位,体验U盘安装win7原版64位系统后的稳定/安全/快速.那么下面,win ...
- CentOS7更换国内源以及安装补充更新源(安装nethogs)
CentOS7更换国内源以及安装补充更新源 一般情况下,CentOS 7 的更新源文件都放置在 /etc/yum.repos.d 删除所有的更新源文件 cd /etc/yum.repos.d/ rm ...
- win8下u盘安装linux,win7 win8下U盘安装ubuntu(linux)双系统教程
WIN7下安装unbuntu双系统教程(U盘安装) 声明:win8已经测试,成功! 一.安装环境 win7系统 二.安装ubuntu首先需要准备以下工具以及安装包: 1.ubuntu系统安装包(本人所 ...
- 一帖搞定U盘系统制作及安装苹果mac os引导U盘安装windows7
坛友有问题可以直接微博问我:http://t.qq.com/juqiandai 之前在<全民普及 版主现身教你用苹果AIR装win7(桌面上pro air razer)>那篇帖子上用的外置 ...
- u盘安装linux启动报错,U盘安装centos7,启动报错
通过U盘安装centos7的时候,启动报错,找不到安装媒介,解决方法. /dev/root does not exits. centos7的iso文件是:CentOS-7-x86_64-DVD-151 ...
- mysql5.5源码包安装_mysql的源码包方式安装(mysql5.5)
-------初写博客,希望在工作和日常中学习到的一些知识和经验与大家交流分享! 在Mysql5.5之后,使用源码包方式安装mysql就需要通过cmake方式进行编译了.以下内容介绍通过cmake方式 ...
- 浪潮服务器u盘安装系统_浪潮服务器U盘安装系统无法识别到电脑硬题的解决
首先说明一下,我是开发人员,不是专业的运维.公司来了一台服务器要我给他装linux系统,我呢就按正常的U盘安装系统方法操作,结果在选择安装指定磁盘的时候,发现只有我插入的那张U盘别检测到,服务器有一张 ...
- 移动硬盘安装ubuntu系统二——启动U盘安装
一. 简介 在之前的一篇文章中记录了使用VMware Workstation给移动硬盘中安装Ubuntu系统过程,本篇文章简单记录使用启动盘安装 Ubuntu 20.04.5系统到移动硬盘. 二. 制 ...
- 计算机设备驱动程序的安装与更新,电脑系统驱动如何安装更新?
电脑平时出现问题比较多的一个是系统问题,一个是硬件问题!这两个问题都会跟电脑驱动打交道!如果说驱动出现问题就会引起电脑蓝屏.卡屏.拖尾等现象,就需要重装驱动程序,电脑驱动的安装也不是简单的安装一下就行 ...
最新文章
- 有哪些可以免登录的视频会议软件/服务?
- 怎么自学python编程-如何自学Python编程呢?老男孩Python学习方法
- SAP Spartacus B2B页面的6个tile,url是维护在什么地方的?
- centos 安装boost(caffe需要)
- [多线程] Thread
- 【Elasticsearch】es FST (Finite State Tranduer) 有限状态转换器
- Ssm在线商城系统实战开发
- flask 重定向(redirect)和会话(session)
- 文件(文本、二进制)读写,利用popen读取linux命令读取结果
- VMware 修复 Workstation、Fusion 中多个严重的代码执行漏洞
- UCI数据集详解及其数据处理(附148个数据集及处理代码)
- win10 cmd中文显示乱码
- 明源云与华为联合发起828 B2B企业节,共同成就好生意!
- DRM DUMB相关说明
- 电商订单批量导入API接口功能
- 远程连接出现 登陆失败:用户账户限制 解决方案
- 拼多多商品id怎么查看 拼多多店铺ID怎样看
- 林肯公园(LINKIN PARK)上海演唱会观众座位表(转帖)
- 如何获取请求端真实IP和远程主机IP详解
- 记录wps js 宏学习过程中积累的一些函数模板