博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用ubifs作为根文件系统的openwrt如何在进行sysupgrade时保存旧的配置
阅读量:5334 次
发布时间:2019-06-15

本文共 744 字,大约阅读时间需要 2 分钟。

1.openwrt的默认方案(squashfs + jffs2)

sysupgrade脚本直接调用default_do_upgrade更新设备树、内核、根文件系统,那么它是如何保存旧配置的呢?请看default_do_upgrade(定义在package/base-files/files/lib/upgrade/common.sh中):

1 default_do_upgrade() {2 sync3 if [ "$SAVE_CONFIG" -eq 1 ]; then4 get_image "$1" "$2" | mtd $MTD_CONFIG_ARGS -j "$CONF_TAR" write   5 else6 get_image "$1" "$2" | mtd write - "${PART_NAME:-image}"7 fi8 [ $? -ne 0 ] && exit 19 }

关注第4行即可,-j参数后面追加了$CONF_TAR,表示在写镜像的时候将旧的配置文件合并到jffs2 数据中 (integrate <file> into jffs2 data when writing an image)

2.那么如果只使用ubifs作为根文件系统应该如何备份旧的配置文件呢?

2.1 使用sysupgrade.tar这样压缩格式作为sysupgrade固件(也就是将设备树、内核和根文件系统放在一个目录下,然后将目录压缩)

2.2 使用ubiupdatevol来更新ubi镜像到当前的根文件系统,然后重新挂载文件系统,紧接着将旧的配置文件复制到刚挂载的文件系统中即可

 

转载于:https://www.cnblogs.com/dakewei/p/10058657.html

你可能感兴趣的文章
求问,我想android开机不启动自带的界面,启动自己做的应用程序,该怎么做?...
查看>>
请教关于surfaceview背景初始化
查看>>
python第四天 三级菜单新思路
查看>>
python基础学习笔记——反射
查看>>
CS231n笔记 Lecture 5 Convolutional Neural Networks
查看>>
Oracle游标
查看>>
详解nginx 配置多个tomcat共用80端口
查看>>
浅谈欧拉定理的证明
查看>>
MySQL查询机制
查看>>
JAVA中哪些情况下类不能够被继承?
查看>>
【编程之美】2.13 子数组的最大乘积
查看>>
Collection2
查看>>
62. Unique Paths
查看>>
C++普通函数与模板函数以及特化函数重载的优先级问题
查看>>
php 经典分页
查看>>
JavaScript 中的面向对象的初步认识
查看>>
mybaits中"#"和"$"的区别
查看>>
黑马程序猿——12,多线程(2)
查看>>
2.5 使用git对项目进行版本控制
查看>>
windows phone textblock C#设置颜色以及换行
查看>>