备份系统恢复之后Mac地址重复问题

按照官方教程备份系统及恢复后,发现所有Lan网卡的Mac地址是一样的。如何避免这种情况

您好,请问是使用的我们哪个固件,kernel 是哪里的?
我们需要知道您的环境,方便复现。

使用我们原始的固件会有mac地址相同的情况? 备份是使用的哪个教程?

使用的是官方给的固件

您可以说详细点不,比如我们的固件版本号,备份方式是哪个

ubuntu-22.04-preinstalled-desktop-arm64-armsom-sige7.img.xz

直接使用这个固件没有问题。只有在备份后才有
备份教程 1. System backup | ArmSoM docs

可以写一个脚本,备份后的系统烧录后都执行一下修改mac地址

类似:if [ ! -e “/boot/boot_mac_$iface” ] ; then
# 生成随机MAC地址
new_mac=$(printf ‘%01x2:%02x:%02x:%02x:%02x:%02x’ $((RANDOM%16)) $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256)) $((RANDOM%256)))

           # 创建判断文件,第二次启动存在该文件则不再执行随机mac
           touch /boot/boot_mac_$iface

           # 保存随机生成的mac到判断文件中
           echo "$new_mac" > /boot/boot_mac_$iface
        fi

        ip link set dev "$iface" down

        # 获取生成的mac并修改
        mac_address=$(cat /boot/boot_mac_$iface)
        ifconfig $iface hw ether $mac_address

可以检查一下您这边备份的时候,是不是配置过mac地址,导致备份的系统是固定的。

理论上我们的kernel 驱动里面 mac地址是随机的。

由于使用dd完整备份emmc里面的系统,网口mac是随机生成并固定在uboot环境变量的,且不能覆盖,但如果不修改mac会造成新烧录的一块或多块板的网口mac地址相同,造成网络无法通信,因此我们需要重新随机网口mac地址,可使用脚本重新随机。

嗯,我们这边也检查一下

我们使用的是NetworkManager. 我看了配置文件里面,没有固定Mac的操作。除了NM中,还有什么地方会固定Mac

我们的文档里面只备份了 rootfs, 您这边是备份了完整的固件?

另外您目前使用的 ubuntu-22.04-preinstalled-desktop-arm64-armsom-sige7.img.xz 是开源社区上的版本,可以使用我们的

我们做了全盘备份。应该是将自动的Mac地址也备份进去了
Mac地址在什么地方。能不能不备份这部分内容

或者你们有没有什么好的方案去全量备份系统。

数量不多的话,可以手动再配置一下

我们就是准备批量操作的

我们采购了100块,一个一个修改太麻烦了