更新软件包源 执行完整系统更新以下命令将升级所有可更新的软件包(包括内核)
opkg update
opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade
更新软件包源
无论采用何种更新方式,必须首先执行以下命令刷新软件包列表:
opkg update
作用:从配置的软件仓库下载最新的软件包列表(Packages.gz文件),存储在/var/opkg-lists/目录下
原理:OPKG通过读取/etc/opkg.conf配置文件中的仓库地址,获取并解压软件包信息
查看可升级软件包
使用以下命令列出所有可升级的软件包:
opkg list-upgradable
输出示例:
luci-app-firewall - 1.1-1 - 1.2-1 luci-base - 1.1-1 - 1.2-1
选择性更新场景
场景1:仅更新LuCI相关组件
当仅需更新Web管理界面及其插件时,执行以下组合命令:
opkg list-upgradable | grep luci- | cut -f 1 -d ' ' | xargs opkg upgrade
分步解析:
grep luci-:筛选出名称以luci-开头的软件包cut -f 1 -d ' ':提取软件包名称xargs opkg upgrade:逐个升级筛选出的软件包1
场景2:更新特定软件包
若需更新指定软件包,直接使用以下命令:
opkg upgrade <包名>
全面更新操作
执行完整系统更新以下命令将升级所有可更新的软件包(包括内核):
opkg list-upgradable | cut -f 1 -d ' ' | xargs opkg upgrade
风险提示:
内核更新可能导致驱动或模块失效
第三方内核模块可能出现兼容性问题
关键注意事项
存储空间检查
更新前务必检查设备存储空间,避免更新中断:
df -h
配置备份
建议通过以下方式备份系统配置:
bash复制sysupgrade -b /tmp/backup.tar.gz
或通过LuCI界面(系统 > 备份/升级)进行
1
。
分阶段更新策略
推荐先更新LuCI观察效果,再逐步更新其他组件
常用OPKG命令速查
| 命令 | 作用 |
|---|---|
opkg install <包名> | 安装软件包(自动解决依赖) |
opkg remove <包名> --autoremove | 卸载软件包及无用依赖 |
opkg list-installed | 列出已安装的软件包 |
opkg files <包名> | 查看软件包包含的文件 |
更新失败处理
清理软件包缓存
删除/var/opkg-lists/目录下的文件后重新执行更新:
rm -rf /var/opkg-lists/*opkg update
强制重新安装
对特定软件包执行强制重新安装:
opkg upgrade --force-reinstall <包名>

发表评论