我正在尝试将用户数据文件添加到映像中,以便在启动时运行 cloud-init。添加用户数据文件后,我会对新映像进行哈希处理以检查是否有更改。我目前遇到一个问题,即文件每次都有不同的哈希值。我不确定这是怎么回事。
以下是我正在运行的命令...
# I have a user-data file and ubuntu.img file
img_name="ubuntu-1.img"
sudo cp ubuntu.img "${img_name}"
sudo losetup --partscan /dev/loop0 "${img_name}"
sudo mount /dev/loop0p1 /mnt/boot
sudo cp user-data /mnt/boot
sudo umount /mnt/boot
sudo losetup --detach /dev/loop0
img_name="ubuntu-2.img"
# repeat above setups using ubuntu-2.img
运行cmp ubuntu-1.img ubuntu-2.img
报告有差异,但我不知道为什么。
有人有什么想法吗?
将文件复制到目录后,两个映像中的 /mnt/boot/ 上的时间戳可能会有所不同。可以使用适当的开关保持文件时间戳相同,
cp
但目录时间戳会发生变化。