如何更改 NTFS 分区的 UUID?
答案1
有一种方法可以通过修改超级块来修改 NTFS 分区的 UUID。卷序列号是 ntfs 格式的驱动器/分区中从偏移量 0x48 开始的八个字节,因此,修改它将改变序列号/UUID。
0x48 十进制表示为 72。
要读取 sdaX 的 UUID:
sudo dd bs=1 skip=72 count=8 if=/dev/sda1 2>/dev/null \
| xxd -plain -u \
| sed -r 's/(..)(..)(..)(..)(..)(..)(..)(..)/\8\7\6\5\4\3\2\1/'
示例输出结果:3AB79E6A2F294BBD
为 sdaX 设置 D08EFD308EFD1028 UUID:
UUID="D08EFD308EFD1028"
printf "\x${UUID:14:2}\x${UUID:12:2}\x${UUID:10:2}\x${UUID:8:2}\x${UUID:6:2}\x${UUID:4:2}\x${UUID:2:2}\x${UUID:0:2}" \
| sudo dd bs=1 seek=72 count=8 conv=notrunc of=/dev/sdaX
相关链接:如何更改 vfat 分区 UUID?