openwrt生成备份文件
生成备份文件时所使用的脚本中调用的命令为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生成备份文件的更多相关文章
- mysqldump定时任务生成备份文件内容为空解决方法
1问题:写好了一个mysqldump备份脚本(如图)直接执行可以正常生成备份文件,但在用crontab运行时却生成内容为空 2原因分析:由于mysqldump存在于全局环境变量mysql的bin下面, ...
- mydumper 快速高效备份mysql,按照表生成备份文件,快速恢复
Mydumper是一个针对MySQL和Drizzle的高性能多线程备份和恢复工具.开发人员主要来自MySQL,Facebook,SkySQL公司.目前已经在一些线上使用了Mydumper. Mydum ...
- 如何为openwrt生成补丁
答:使用quilt工具 步骤如下: 1. 配置quilt $cat> ~/.quiltrc <<EOF QUILT_DIFF_ARGS="--no-timestamps - ...
- openwrt生成的交叉编译器在哪里
答:在staging_dir目录下,示例如下: 编译一个arm64架构所生成的编译器在staging_dir/toolchain-aarch64_generic_gcc-7.4.0_musl/bin/ ...
- 配置gVim使之不自动生成备份文件
设置 _vimrc set nobacku 1 set nobacku 或指定一个其备份的地方: set backupdir=D:/Program/ Files/Vim /tmp 1 1 1 ...
- openwrt生成的镜像放在哪里
答:1.打包好之后是放在build_dir/target-$(cross-compile-toolchan-name)/linux-$(chip-series-name)_$(chip-arch)/t ...
- openwrt: sysupgrade
sysupgrade 用法: sysupgrade [...] sysupgrade [-q] [-i] 升级选项: -d 重启前等待 delay 秒 -f 从 .tar.gz (文件或链接) 中恢复 ...
- 1028阿里RDS如何恢复云数据库MySQL的备份文件到自建数据库
参照 https://help.aliyun.com/knowledge_detail/41817.html 恢复云数据库MySQL的备份文件到自建数据库 更新时间:2017-07-27 14:52: ...
- 编译树莓派2代B型OpenWrt固件实现无线路由器及nodogsplash认证功能
最终功能: 无线路由器的主要功能,网口WAN接入,USB无线网卡AP热点输出,连上wifi之后跳转到认证页面,点击认证方可上网,有效时间10分钟,认证成功之后自动访问指定网址. 文章结尾有编译好的刷机 ...
随机推荐
- Top 20 JavaScript Projects of 2017
https://www.youtube.com/watch?v=SUMn8y3pi28 20. AngularJS 1 19. Passport 18. Pug 17. Socket.IO 16. J ...
- ECMAScript6之Set结构和Map结构
set数据结构 ES6提供了一个新的数据结构,Set,Set和Array数组相似,但是Set里没有重复的数据,可以说是一个值的集合. 同时,Set数据结构有以下属性和方法: size:返回成员总数 a ...
- const 那点事儿
修饰变量时 const char 与 char const 是等价的,例如 const char a = 'a'; char const a = 'a'; 表示变量a不能再被赋予其他值. 到指针时情况 ...
- 8个不可不知的Mac OS X专用命令行工具【转】
OS X的终端下通用很多Unix的工具和脚本.如果从Linux迁移到OS X会发现很多熟悉的命令和脚本工具,其实并没有任何区别. 但是OS X也提供了很多其他系统所没有的特别的命令行工具.我们推荐8个 ...
- Android中设定EditText的输入长度
方法一:可以在layout xml中加上属性android:maxLength 比如: <EditText android:id="@+id/editTextShow& ...
- openSuse使用技巧
1.opensuse的gnome默认使用nautilus作为文件浏览工具,若要设置文件的默认排序和视图,参考网页 https://thelinuxexperiment.com/change-the-d ...
- OBJECT-ORIENTED
- Apache 关于 mod_rewrite 遇到 %2F或%5C (正反斜杠)等特殊符号导致URL重写失效出现404的问题
.htaccess 文件 <IfModule mod_rewrite.c> RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d Rew ...
- Chapter 2 Open Book——36
"That was awful," he groaned. "They all looked exactly the same. You're lucky you had ...
- java 随机生成11位 组合
public static String generate8RateUuid() { String[] chars = new String[] { "a", & ...