生成备份文件时所使用的脚本中调用的命令为sysgrade

local image_tmp   = "/tmp/firmware.img"

local backup_cmd  = "sysupgrade --create-backup - 2>/dev/null"

local fsysup = "openwrt-ar71xx-generic-ap143-16M-squashfs-sysupgrade.bin"

local fwname = "firmware.tar.gz"
   local image_tmp_gz   = "/tmp/"..fwname

最后将文件压缩为 backup-hostname-date.tar.gz    (eg:  backup-openwrt-2016-01-09.tar.gz)

luci.sys.exec("cd /tmp; tar -zxvf "..fwname.."; mv "..fsysup.." "..image_tmp.."; rm "..image_tmp_gz)

其中压缩文件.tar.gz中包含的内容有:  lib/upgrade/keep.d/ 目录下文件中所有的内容以及  etc/sysupgrade.conf中包含的内容

主要有:

root@hbg:/# cd lib/upgrade/keep.d/
root@hbg:/lib/upgrade/keep.d# ls
base-files            uboot-envtools
base-files-essential  uhttpd
root@hbg:/lib/upgrade/keep.d# cat base-files
/etc/config/            --config目录下所有文件
/etc/dropbear/       --dropbear目录下所有文件
/etc/crontabs/        --crontabs目录下所有文件
root@hbg:/lib/upgrade/keep.d# cat base-files-essential   
# Essential files that will be always kept
/etc/hosts              --etc目录下的这些文件
/etc/inittab
/etc/group
/etc/passwd
/etc/profile
/etc/shadow
/etc/shells
/etc/sysctl.conf
/etc/rc.local
root@hbg:/lib/upgrade/keep.d# cat uboot-envtools
/etc/config/ubootenv    --uboot相关文件
/etc/fw_env.config
root@hbg:/lib/upgrade/keep.d# cat uhttpd
/etc/uhttpd.crt                  --uhttpd相关文件
/etc/uhttpd.key

如果还想备份其他文件,可以在/etc目录下的sysupgrade.conf中添加相应目录或文件。

将备份的压缩文件解压后可以看到

hbg@root:~/test1214/A3$ tar zxvf backup-openwrt-2016-01-19.tar.gz
etc/config/account
etc/config/checkrssi
etc/config/dropbear
etc/config/firewall
etc/config/link.log
etc/config/lldpd
etc/config/luci
etc/config/mcs
etc/config/network
etc/config/snmpd
etc/config/snmpdata
etc/config/system
etc/config/ubootenv
etc/config/ucitrack
etc/config/uhttpd
etc/config/wireless
etc/config/wonoff
etc/crontabs/cron.update
etc/crontabs/root
etc/dropbear/dropbear_dss_host_key
etc/dropbear/dropbear_rsa_host_key
etc/fw_env.config
etc/group
etc/hosts
etc/inittab
etc/passwd
etc/profile
etc/rc.local
etc/shadow
etc/shells
etc/sysctl.conf
etc/sysupgrade.conf
etc/uhttpd.crt
etc/uhttpd.key

如果在sysupgrade.conf中添加 /overlay目录则:

root@hbg:/etc# cat sysupgrade.conf
## This file contains files and directories that should
## be preserved during an upgrade.

# /etc/example.conf
# /etc/openvpn/
/overlay     --将overlay目录下的文件压缩到备份中

解压备份文件可得

hbg@root:~/test1214/A3$ tar zxvf backup-openwrt-2016-01-19.tar.gz
etc/config/account
etc/config/checkrssi
etc/config/dropbear
etc/config/firewall
etc/config/link.log
etc/config/lldpd
etc/config/luci
etc/config/mcs
etc/config/network
etc/config/snmpd
etc/config/snmpdata
etc/config/system
etc/config/ubootenv
etc/config/ucitrack
etc/config/uhttpd
etc/config/wireless
etc/config/wonoff
etc/crontabs/cron.update
etc/crontabs/root
etc/dropbear/dropbear_dss_host_key
etc/dropbear/dropbear_rsa_host_key
etc/fw_env.config
etc/group
etc/hosts
etc/inittab
etc/passwd
etc/profile
etc/rc.local
etc/shadow
etc/shells
etc/sysctl.conf
etc/sysupgrade.conf
etc/uhttpd.crt
etc/uhttpd.key
overlay/etc/config/account
overlay/etc/config/checkrssi
overlay/etc/config/dropbear
overlay/etc/config/firewall
overlay/etc/config/link.log
overlay/etc/config/lldpd
overlay/etc/config/luci
overlay/etc/config/mcs
overlay/etc/config/network
overlay/etc/config/snmpd
overlay/etc/config/snmpdata
overlay/etc/config/system
overlay/etc/config/ubootenv
overlay/etc/config/ucitrack
overlay/etc/config/uhttpd
overlay/etc/config/wireless
overlay/etc/config/wonoff
overlay/etc/crontabs/cron.update
overlay/etc/crontabs/root
overlay/etc/dropbear/dropbear_dss_host_key
overlay/etc/dropbear/dropbear_rsa_host_key
overlay/etc/fw_env.config
overlay/etc/group
overlay/etc/hosts
overlay/etc/inittab
overlay/etc/passwd
overlay/etc/profile
overlay/etc/rc.local
overlay/etc/shadow
overlay/etc/shells
overlay/etc/sysctl.conf
overlay/etc/sysupgrade.conf
overlay/etc/uhttpd.crt
overlay/etc/uhttpd.key
overlay/root/logs
overlay/usr/lib/snmp/snmpd.conf
etc/uhttpd.key
etc/uhttpd.crt

openwrt生成备份文件的更多相关文章

  1. mysqldump定时任务生成备份文件内容为空解决方法

    1问题:写好了一个mysqldump备份脚本(如图)直接执行可以正常生成备份文件,但在用crontab运行时却生成内容为空 2原因分析:由于mysqldump存在于全局环境变量mysql的bin下面, ...

  2. mydumper 快速高效备份mysql,按照表生成备份文件,快速恢复

    Mydumper是一个针对MySQL和Drizzle的高性能多线程备份和恢复工具.开发人员主要来自MySQL,Facebook,SkySQL公司.目前已经在一些线上使用了Mydumper. Mydum ...

  3. 如何为openwrt生成补丁

    答:使用quilt工具 步骤如下: 1. 配置quilt $cat> ~/.quiltrc <<EOF QUILT_DIFF_ARGS="--no-timestamps - ...

  4. openwrt生成的交叉编译器在哪里

    答:在staging_dir目录下,示例如下: 编译一个arm64架构所生成的编译器在staging_dir/toolchain-aarch64_generic_gcc-7.4.0_musl/bin/ ...

  5. 配置gVim使之不自动生成备份文件

    设置 _vimrc set nobacku   1 set nobacku 或指定一个其备份的地方: set backupdir=D:/Program/ Files/Vim /tmp 1 1   1 ...

  6. openwrt生成的镜像放在哪里

    答:1.打包好之后是放在build_dir/target-$(cross-compile-toolchan-name)/linux-$(chip-series-name)_$(chip-arch)/t ...

  7. openwrt: sysupgrade

    sysupgrade 用法: sysupgrade [...] sysupgrade [-q] [-i] 升级选项: -d 重启前等待 delay 秒 -f 从 .tar.gz (文件或链接) 中恢复 ...

  8. 1028阿里RDS如何恢复云数据库MySQL的备份文件到自建数据库

    参照 https://help.aliyun.com/knowledge_detail/41817.html 恢复云数据库MySQL的备份文件到自建数据库 更新时间:2017-07-27 14:52: ...

  9. 编译树莓派2代B型OpenWrt固件实现无线路由器及nodogsplash认证功能

    最终功能: 无线路由器的主要功能,网口WAN接入,USB无线网卡AP热点输出,连上wifi之后跳转到认证页面,点击认证方可上网,有效时间10分钟,认证成功之后自动访问指定网址. 文章结尾有编译好的刷机 ...

随机推荐

  1. database disk image is malformed

    在Linux上使用yum安装软件的时候报如下错误: database disk image is malformed 根本原因是:yum的缓存出错, 需要清理缓存 使用如下命令来解决这个问题: yum ...

  2. IPython与notebook 安装

    基于 python2.7.13 32-bit版本安装 1.安装pyreadline https://pypi.python.org/pypi/pyreadline 下载对应的32位版本 2.用pip安 ...

  3. get请求与post请求之间的差异

    GET:常用于向服务器请求查询某些信息 get请求适用于当URL完全指定请求资源. get请求不会对数据库进行任何操作相当于数据库的查询.  当进行字段查询时可将查询字段增加到url的末尾. get请 ...

  4. metrics实践 (metrics-spring)

    这里主要介绍metrics与spring集成的使用方式. 1  添加maven依赖 <dependency> <groupId>com.ryantenney.metrics&l ...

  5. svn自动备份并上传到ftp

    .建立bat文件 simpleBackup.bat,文件内容如下 @echo 正在备份版本库%1......@%SVN_HOME%bin\svnadmin hotcopy %1 %BACKUP_DIR ...

  6. 三星首次更新Gear VR虚拟现实浏览器

    通过VR浏览网页不是问题,不过你需要一个专门的VR浏览器,而GearVR的虚拟现实应用名为"Samsung Internet for Gear VR".继去年12月份上线后,迎来了 ...

  7. canvas烟花-娱乐

    网上看到一个释放烟花的canvas案例,很好看哦. 新建文本,把下面代码复制进去,后缀名改为html,用浏览器打开即可. 看懂注释后,可以自己修改烟花的各个效果.我试过让烟花炸成了心型.:-) < ...

  8. jsp日期插件My97DatePicker 强大的日期控件 使用方便简单

    本文属转载(希望对编程爱好者有所帮助)详情请访问官方网站 http://www.my97.net/dp/index.asp 一. 简介 1. 简介 目前的版本是:4.7 2. 注意事项 My97Dat ...

  9. php笔记(二)PHP类和对象之Static静态关键字

      PHP类和对象之Static静态关键字 静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用.静态属性不允许对象使用->操作符调用. class Car { pr ...

  10. action解耦方式

    ServletAction方式,必须要有Servlet容器作支持 package com.hanqi.action; import javax.servlet.ServletContext; impo ...