嵌入式linux release版本管理

2019-07-12 14:25发布

版本信息:
  Linux version 4.1.15
需求:嵌入式linux需要烧写的image文件有uboot、dtb、kernel、rootfs。每个image都需要有版本信息以供区分。 uboot:
 uboot启动时会打印出build时间戳,所以没必要每次build时手动修改uboot的版本. kernel:
 kernel的版本信息获取十分方便。可以通过
  cat /proc/version
  或者
  uname -a
  获取包括kernel build的时间戳在内的版本信息。
 
dtb:
dtb(device tree blob) 默认没有提供一个版本属性供查看,需要我们自己添加一个版本属性。在root 节点添加一个版本属性,如
 version = “DTB V1.00 20180518”;
build生成dtb烧写到target设备,启动进入系统,可以看到/proc/device-tree/version。
当然理想的效果是version属性的时间戳能自动生成,但没找到解决办法,只能每次build dtb手动修改version. rootfs:
rootfs默认在/etc/version有一个时间戳文件,每次build rootfs, /etc/version会自动更新,可用以区分rootfs版本。rootfs有时是个tar.bz2压缩文件,每次修改rootfs可以直接用解压缩工具添加或删除文件,需要注意修改这个时间戳文件,或者仅仅修改/etc/issue文件,添加自定义版本信息作为rootfs的版本。