前言
产品镜像包含启动区镜像和备份区镜像。
启动区镜像命名为”产品版本.sda1.img.tar.gz” ,例如:2.0.sda1.img.tar.gz
备份区镜像命名为:”版本.sda3.img.tar.gz”,例如:init.sda3.img.tar.gz
通常情况下,随着产品版本更新要制作对应版本的启动区镜像,备份区镜像比较固定,除非有严重缺陷,一般不需要制作,可以配合不同版本的产品工作。
材料
- 一台主机(专用检查设备,必须是研华的品牌)
- 一个已经制作完成的生产U盘(NTFS区包含上一个版本的启动区镜像和备份区镜像文件)
- 产品新版本或升级包,如果需要研发手动升级则不需要准备
准备
- 连接设备,插入U盘,加电从U盘启动
- 假定当前产品版本为2.0.0,制作的目标版本为2.0.1
- 确保NTFS分区中包含2.0.0.sda1.img.tar.gz.current文件和当前通用的备份区镜像文件,例如init.sda3.img.tar.gz.current
- 确保上述文件是current扩展名,且没有其他文件是以current作为扩展名
开始制作
- 参考《生产指导书》,将设备恢复到2.0.0版本,重新启动设备(硬盘启动)
- 启动后,部署产品新版本或升级包,如需研发部署升级,协调研发人员处理
- 升级完成后,确保所有临时文件已经清理完成,相关测试数据已经删除,临时License也已经删除
- 重新启动设备(生产U盘启动),并执行备份脚本
[root@product ~]# ./2.backup.sh
Partclone v0.3.11 http://partclone.org
开始备份 装置 (/dev/sda1) 到 镜像 (/mnt/sda3/root/images/sda1.img)
Reading Super Block
Calculating bitmap... Please wait...
经过:00:00:02, 剩余: 00:00:00, 完成:100.00%
全部时间:00:00:02, 100.00% completed!
done!
文件系统: EXTFS
Device size: 209.7 GB = 51200000 Blocks
Space in use: 12.3 GB = 3013019 Blocks
Free Space: 197.4 GB = 48186981 Blocks
装置块大小: 4096 Byte
经过:00:01:50, 剩余: 00:00:00, 完成:100.00%, 速率: 6.73GB/min
current block: 50861600, total block: 51200000, Complete: 100.00%
全部时间:00:01:50, 平均速率: 6.7GB/min, 100.00% completed!
Syncing... OK!
备份 装置 (/dev/sda1) 到 镜像 (/mnt/sda3/root/images/sda1.img) 完成
Cloned successfully.
- 加载备份区,完成压缩操作
[root@product ~]# mount /dev/sda3 /mnt/sda3
[root@product ~]# cd /mnt/sda3/root/images/
[root@product images]# ls
sda1.img --- 执行备份操作生成的文件
#改名
[root@product images]# mv sda1.img 2.0.1.sda1.img
#压缩,3~5分钟,或者更长,耐心等待!!!
[root@product images]# tar zcvf 2.0.1.sda1.img.tar.gz 2.0.1.sda1.img
2.0.1.sda1.img
- 复制产品镜像到生产U盘的NTFS分区
#复制,3~5分钟,或者更长,耐心等待!!!
[root@product images]# cp 2.0.1.sda1.img.tar.gz /images/
- 关机
#因为要讲缓存数据完全复制到U盘,因此关机时间较长,耐心等待!!!!!!
[root@product images]# poweroff
- 注意:一定要等待系统正常关机,这样数据才能完全复制到U盘上,关机之前不能拔出U盘。
- 完成制作
验证
- 按照《生产指导书》验证新版本生产U盘生产数来的设备的产品版本是否正确。