При вызове hasher-useradd, последний может отработать частично, создав пользователей и группы, но не записав конфиг. Например, это может быть вызвано #40041. После этого, hasher-useradd, увидев, что пользователи уже созданы, выходит. Считаю, что правильным поведением для скрипта при повторном вызове должна быть проверка всех условий — т.е. пользователи созданы, группы созданы, пользователи добавлены в группу и конфиг записан.