Estou tentando adicionar arquivos de dados do usuário a imagens para executar o cloud-init na inicialização. Depois de adicionar o arquivo de dados do usuário, faço o hash da nova imagem para verificar se há alterações. No momento, estou tendo um problema em que o arquivo tem um hash diferente a cada vez. Não tenho certeza de como isso pode ser.
Aqui estão os comandos que estou executando...
# 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
Os relatórios em execução cmp ubuntu-1.img ubuntu-2.img
mostram uma diferença e não sei por quê.
Alguém tem alguma ideia?
É provável que os timestamps em /mnt/boot/ sejam diferentes nas duas imagens depois que você copia o arquivo para o diretório. O timestamp do arquivo pode ser mantido o mesmo usando as opções apropriadas,
cp
mas o timestamp do diretório mudará.