After upgrading mdadm 4.2-2 to 4.3-1, it fails to assemble arrays with error: "Value ":A1_ROOT" cannot be set as name. Reason: Not POSIX compatible." Leading ':' is for empty homehost, legal (or was legal, at least).
I also found debian bugreport (https://groups.google.com/g/linux.debian.bugs.dist/c/LiQeJIuqGo4) with same error and array name "basecamp:0". Without discussion.
Can anyone tell what's going on? Is 4.3 buggy?
I have just upgraded mine and rebooted, my raid is still working as normal.
mdadm 4.3-2 is the current version.
I suppose you don't have colon in array name?
No I don't have a colon in the name.
But I am on version 4.3-2, and you say you are on 4.3-1?
AFAIK that suffix after hyphen is incremented by distro maintainers when they recompile same package sources -- e.g. after dependencies upgraded. Hence, irrelevant.
Your reply somewhat confirms my suspicion that mdadm complains about colon. Maybe I should try `HOMEHOST <ignore>` in /etc/mdadm.conf instead. Would be nice to see confirmation from mdadm docs or devs, though. Haven't found one yet.
https://archlinux.org/news/mkinitcpio-hook-migration-and-early-microcode/
Check any packages on the list are all from the same repo.
Just a hunch? I saw your post earlier then just came across that link and was reminded of it.
Likely irrelevant: for now I just downgraded mdadm, re-run mkinitcpio so downgraded binary made into initramfs, rebooted -- and everything works, with all other packages being actual.
Fixed. (1) Removed colon from `mdadm --assemble` command:
-mdadm -q --assemble /dev/md/A1_ROOT --name=:A1_ROOT
+mdadm -q --assemble /dev/md/A1_ROOT --name=A1_ROOT
(2) Just in case, added `HOMEHOST` to `/etc/mdadm.conf`:
HOMEHOST <ignore>
AUTO -all
(This is whole file; I use names & labels everywhere, no GUIDs). Renaming arrays was NOT needed:
# mdadm --detail /dev/md/A1_ROOT | grep Name
Name : :A1_ROOT
Although it worked even if I renamed it to e.g. "a1:A1_ROOT", .i.e. `mdadm -A ... --name=A1_ROOT` takes `name` parameter without host.
Since I've got empty host in array name, maybe I could write `HOMEHOST <none>` instead of `<ignore>`, but it's good as it is.