OpenWrt/opkg

OpenWrt/opkg
opkg install --force-depends <package_name>

CDN

/etc/opkg/distfeeds.conf

src/gz openwrt_core http://mirrors.ustc.edu.cn/lede/releases/19.07.3/targets/ramips/mt7621/packages
src/gz openwrt_base http://mirrors.ustc.edu.cn/lede/releases/19.07.3/packages/mipsel_24kc/base
src/gz openwrt_luci http://mirrors.ustc.edu.cn/lede/releases/19.07.3/packages/mipsel_24kc/luci
src/gz openwrt_packages http://mirrors.ustc.edu.cn/lede/releases/19.07.3/packages/mipsel_24kc/packages
src/gz openwrt_routing http://mirrors.ustc.edu.cn/lede/releases/19.07.3/packages/mipsel_24kc/routing
src/gz openwrt_telephony http://mirrors.ustc.edu.cn/lede/releases/19.07.3/packages/mipsel_24kc/telephony

注意 mirrors.ustc.edu.cn 这个源同时有IPV4和IPV6。电信宽带必须把用 IPV4 访问,否则速度很慢。

常用包

  • dnsmasq-full : 替代 dnsmasq
  • nginx-all-module : 编译了所有官方模块的 nginx. (而 nginx 包只有默认模块,缺少 webdav 等支持)

"opkg_install_pkg: Failed to extract data files for nmap. Package debris may remain"

opkg 安装时,如果flash存储可用空间不足,可能装到一半报错退出:

root@TP1043IoT:~# opkg install nmap
Installing nmap (7.70-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/mips_24kc/packages/nmap_7.70-1_mips_24kc.ipk
Installing libpcap (1.8.1-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/mips_24kc/base/libpcap_1.8.1-1_mips_24kc.ipk
Installing libstdcpp (7.3.0-1) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/targets/ar71xx/generic/packages/libstdcpp_7.3.0-1_mips_24kc.ipk
Installing libpcre (8.41-2) to root...
Downloading http://downloads.openwrt.org/releases/18.06.1/packages/mips_24kc/packages/libpcre_8.41-2_mips_24kc.ipk
Configuring libpcre.
Configuring libstdcpp.
Configuring libpcap.
Collected errors:
 * pkg_write_filelist: Failed to open //usr/lib/opkg/info/nmap.list: No space left on device.
 * opkg_install_pkg: Failed to extract data files for nmap. Package debris may remain!
 * opkg_install_cmd: Cannot install package nmap.
 * opkg_conf_write_status_files: Can't open status file //usr/lib/opkg/status: No space left on device.

此时设备上的 /overlay 里可能存在残余文件,需要手工清除,否则会一直占用空间。

手工清除方法是下载 ipk 文件到PC,用 zip 文件解压缩工具打开,然后对照包里 data/ 目录里所有文件,在 /overlay/upper 里删除对应名字的文件即可。

有时在 overlay 里删除文件后 df 显示的 overlay 可用空间不会立即恢复,需要等待一段时间或重启设备。

安装 package 到外置存储

假设 usb 存储挂载在 /root/storage , 编辑 /etc/opkg.conf , 加入一行 dest 为 "ext" 的安装路径指定为外置存储里目录。

dest root /
dest ext /root/storage/rootfs
dest ram /tmp
lists_dir ext /var/opkg-lists
option overlay_root /overlay
option check_signature

安装包到外置存储

opkg install python3 -d ext

如果需要使用安装在外置存储上的包里程序,需要修改 OpenWrt 设备的环境变量。

export PATH=$PATH:/root/storage/rootfs/usr/bin:/root/storage/rootfs/usr/sbin:/root/storage/rootfs/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/root/storage/rootfs/usr/lib:/root/storage/rootfs/lib

建议加到 /etc/rc.local 和 / 或 /root/.profile 文件里。


Last update: 2021-01-19 06:35:24 UTC