opkg ?

opkg 是 openwrt 里的软件包管理器,类似 Mac 下的 brew、Ubuntu 下的 apt-get 等,命令位于/bin/opkg

由于 openwrt 是嵌入式系统,硬件复杂,我们需要把 opkg 的源和 Newifi Mini(Y1)的硬件相匹配。

配置源

Y1 使用的是 mt7620a 这枚 cpu,我们需要使用 mt7620a 的源

openwrt 官方源:

http://downloads.openwrt.org/barrier_breaker/14.07/ramips/mt7620a/
http://downloads.openwrt.org/chaos_calmer/15.05/ramips/mt7620a/

需要说明的是 PandoraBox 和 小云 OS 都是基于 openwrt 14.07 开发的

由于众所周知的原因直接访问 openwrt.org 是非常慢,我们可以使用代理 mirrors.ustc.edu.cn 或者 downloads.openwrt.org.cn

两种方式:

  • ssh连接到路由器后使用vi修改配置文件
1
vi /etc/opkg.conf
  • 管理页面:OpenWrt 系统->软件包->配置;小云 OS 高级设置->系统->软件包->配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
dest root /
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay

arch ralink 1
arch all 2
arch ramips_24kec 3

src/gz barrier_breaker_base http://mirrors.ustc.edu.cn/openwrt/barrier_breaker/14.07/ramips/mt7620a/packages/base
src/gz barrier_breaker_luci http://mirrors.ustc.edu.cn/openwrt/barrier_breaker/14.07/ramips/mt7620a/packages/luci
src/gz barrier_breaker_management http://mirrors.ustc.edu.cn/openwrt/barrier_breaker/14.07/ramips/mt7620a/packages/management
src/gz barrier_breaker_oldpackages http://mirrors.ustc.edu.cn/openwrt/barrier_breaker/14.07/ramips/mt7620a/packages/oldpackages
src/gz barrier_breaker_packages http://mirrors.ustc.edu.cn/openwrt/barrier_breaker/14.07/ramips/mt7620a/packages/packages
src/gz barrier_breaker_routing http://mirrors.ustc.edu.cn/openwrt/barrier_breaker/14.07/ramips/mt7620a/packages/routing
src/gz barrier_breaker_telephony http://mirrors.ustc.edu.cn/openwrt/barrier_breaker/14.07/ramips/mt7620a/packages/telephony

src/gz openwrt_dist http://openwrt-dist.thankgfw.ml/releases/ramips/packages
src/gz openwrt_dist_luci http://openwrt-dist.thankgfw.ml/releases/luci/packages

使用 opkg 命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# 打印帮助
opkg -h

# 更新资源列表
opkg update

# 列出已安装的包
opkg list

# 搜索包
opkg search ddns

# 安装软件,以安装curl和wget为例
opkg install curl
# 安装本地软件包
opkg install /tmp/wget_1.16-1_ramips_24kec.ipk

# 移除软件
opkg remove wget