04 opkg
前言
ipk文件的本质上是tgz文件,这里直接将其重名名为tgz文件。解压后可得到control.tar.gz data.tar.gz debian-binary三个文件
control.tar.gz中是一些系统信息
其中control文件中存在一些包的相关信息
postinst为安装完执行
prerm为卸载后执行
data.tar.gz为一些目标文件
1.1 工作原理
1.1.1 OPKG的功能
- 软件包的管理
- 软件包的查询
1.1.2 OPKG的原理
OPKG命令的执行会读取下面3部分信息:
- 配置文件,默认位置为
/etc/opkg.conf。此文件保存了OPKG的全局配置信息 - 已安装软件包状态信息,保存在
/usr/lib/opkg下。相当与windows下的注册表 - 软件仓库的软件包信息,保存在
/var/opkg-lists目录下。包含所有软件列表及其依赖关系的清单
1.2 OPKG命令
1.2.1 软件包的管理
opkg update
更新可以安装的软件包列表
opkg install
安装软件包。入参为软件包的名称。
opkg remove
卸载软件包。入参为软件包的名称。
opkg upgrade
升级软件包
1.2.2 查询信息
opkg list
列出所有可使用的软件包opkg list-installed
列出所有已经安装的软件包opkg list-changed-conffiles
列出用户修改过的配置文件opkg search
列出提供文件的软件包。需要文件的绝对路径opkg info [pkg]
显示已经安装的软件包的信息opkg download
下载软件包到当前目录opkg print-architecture
列出安装包的架构opkg whatdepends -[A] [pkg]
列出所有依赖这个软件包的软件包
1.3 选项
-A所有的软件包-d使用作为软件包的安装根目录--nodeps不按照依赖来安装,只安装软件包自己。可能会缺少依赖导致无法执行--force-reinstall强制重新安装软件包
1.4 OPKG包结构
实际上OPKG安装包(ipk文件)就是一个tar.gz文件。
使用tar解压后会出现三个文件
debina-binary
纯文本文件data.tar.gz
安装时需要复制到对应目录下的文件control.tar.gz
软件包的相关信息