No Ubuntu, você deve usar adduser em vez de useradd (consulte man useradd ).
O useradd do Ubuntu tem, e. nenhuma opção -n .
adduser cria um novo usuário do grupo, com o nome do usuário, como o grupo padrão:
adduser --no-create-home --home "/home/$homedir" "$uname"
Você será solicitado a fornecer uma senha e informações GECOS pelo programa. Se perguntar não é o que você quer, você pode fazer:
adduser --no-create-home --home "/home/$homedir" --disabled-password --gecos "$realname" "$uname" ; usermod -p "$passwd" "$uname"
A senha precisa ser o resultado de crypt() (man 3 crypt) e pode ser gerada na linha de comando usando:
passwd=$(mkpasswd -m sha-512 plaintextpassword mysalt78)
(o sal precisa ter 8-16 caracteres).
¹ Durante a experiência, use userdel "$uname" para remover uma conta de /etc/passwd , /etc/shadow e /etc/group de uma só vez.