Sysupgrade is not yet supported on的解决方法

检测规则:
1、通过/lib/ramips.sh 规则直接生成/tmp/sysinfo/board_name /tmp/sysinfo/model, model对应dts里的model,board_name的生成规则是根据model进行转化为对应name,验证/lib/ramips.sh不是生成/tmp/sysinfo的信息,是文件/lib/preinit/02_sysinfo 生成,文件内容如下:

do_sysinfo_generic() {
[ -d /proc/device-tree ] || return
mkdir -p /tmp/sysinfo
[ -e /tmp/sysinfo/board_name ] || \
echo "$(strings /proc/device-tree/compatible | head -1)" > /tmp/sysinfo/board_name
[ ! -e /tmp/sysinfo/model -a -e /proc/device-tree/model ] && \
echo "$(cat /proc/device-tree/model)" > /tmp/sysinfo/model
}
boot_hook_add preinit_main do_sysinfo_generic

2、/sbin/sysupgarde 进行platform_check_image 和 fwtool_check_image 进行检查规则
3、 /lib/upgrade/platform.sh里的platform_check_image 读取/tmp/sysinfo/board_name 与 自身文件内容进行对比
4、 /lib/upgrade/fwtool.sh 里fwtool_check_image 读取/tmp/sysupgrade.meta 与 /tmp/sysinfo/board_name 进行对比。 sysupgrade.meta 与 dts里compatible对应

5、sysupgrade 的命令参数介绍: https://www.huaweicloud.com/articles/ad213197538ce84b306a83593dcba71d.html

posted @ 2020-02-03 16:52  cogitoergosum  阅读(652)  评论(0编辑  收藏  举报