mdadm mdadm: cannot open /dev/sda1: Device or resource busy
Solution 1:
Just try to stop before reassambling array :
sudo mdadm -Esv
sudo mdadm --stop /dev/md*
sudo mdadm --misc --scan --detail /dev/md0
sudo mdadm -v --assemble "$array" "$disk1$part" "$disk2$part"
Solution 2:
do I need to
...
create the arrays for / and /boot while they are not mounted?
Precisely.
I hope you also realised that the old contents will be wiped in the process, so you might want to create a new array with one device missing (use mdadm --level=10 --raid-devices=8 --missing /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1 /dev/sdh1
). Then format the filesystem on the new array volume and copy all data from /dev/sda1 to it. Then reboot from the array (thus NOT using the /dev/sda1 root) and actually add /dev/sda1.
Do not forget to adjust the bootloader accordingly.