嵌入式爱好者

overlayfs实现系统快速覆盖与恢复的方法

2024-8-27 16:35| 发布者: 安道尔| 查看: 60| 评论: 0

类目: RK3568系列产品  >  ubuntu     文档编号: 1494

挂载脚本内容:

mkdir -p /backup/{etc,home,usr,var,lib} /backup_work/{etc,home,usr,var,lib}

 

mount -t overlay overlay -o lowerdir=/lib,upperdir=/backup/lib,workdir=/backup_work/lib /lib

 

mount -t overlay overlay -o lowerdir=/etc,upperdir=/backup/etc,workdir=/backup_work/etc /etc

 

mount -t overlay overlay -o lowerdir=/home,upperdir=/backup/home,workdir=/backup_work/home /home

 

mount -t overlay overlay -o lowerdir=/usr,upperdir=/backup/usr,workdir=/backup_work/usr /usr

 

mount -t overlay overlay -o lowerdir=/var,upperdir=/backup/var,workdir=/backup_work/var /var

 

 

挂载主要分为三层,lowerdir层,原本基础内容的路径;upperdir层,修改信息保存的路径;最后的显示层,将lowerdir内容,结合upperdir中的保存信息,最终显示内容的路径

基本程序脚本是将原本系统中内容挂载到对应位置,并且将修改信息保存到upperdir层。

也就是说使用上述脚本进行挂载之后,不会影响lowerdir层即原本镜像的内容,如需要回退则随时删除upperdir对应目录即可,同时能简单查看到修改效果。

 

 

举例来说,进行挂载后,使用apt-get命令安装sqlite3

此时使用命令dpkg -L sqlite3会看到所有内容安装在usr路径下,而安装信息保存在var路径下

取消这两个路径的挂载后则能够看到,sqlite3在当前系统中并不存在

重新挂载后能够继续正常使用

该方法选择挂载了安装程序与修改配置常用的路径,如有其他需要,可在脚本中自行添加其他对应路径

 

 

需要注意以太网配置等进程读取配置文件的时间较早,所以这种情况下建议在lowerdir层配置以太网

以及挂载需要注意软链接文件先后问题。

 

upperdir层可以通过压缩复制到u盘,再传到另一台设备

 

压缩:

tar -cvf 归档文件名.tar 文件夹名

 

解压:

tar -xvf 归档文件名.tar


已解决

未解决

只是看看

最新评论

QQ|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )

GMT+8, 2024-11-22 10:08

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部