"Failed to create user" due to regular expression error
I'm running Ubuntu 12.10 desktop 32 bit. Currently I have only a user, type administrator. I'd like to create another administrator user but I keep getting the following error:
Failed to create user
GDBus.Error:org.freedesktop.Accounts.Error.Failed: running '/usr/sbin/adduser' failed: /usr/sbin/adduser returned an error (1): adduser: Please enter a username matching the regular expression configured via the NAME_REGEX[_SYSTEM] configuration variable. Use the `--force-badname' option to relax this check or reconfigure NAME_REGEX.
Any suggestion is appreciated.
The username you're entering contains bad characters. Try entering a simple username containing only lower-case English letters - daniel
is good, &&Daniel <*> Johnson##
is not so good.
You normally get this message if you are trying to create a user with a name that contains characters that are considered to be un acceptable as per your NAME_REGEX file. You can try again changing the username with the GUI or you can relax the check by using the command line with the following command.
sudo adduser --force-badname <username>
and then if you want to add the user to the sudo group run the following command.
sudo adduser <username> sudo
In Debian systems, the regex defining acceptable user names is found in /etc/adduser.conf
.
A typical regex (found on my system) is:
NAME_REGEX="^[a-z][-a-z0-9_]*\$"
I don't want to veer too far off topic with regex parsing, but the caret ^ symbol indicates the beginning character of the user name must be between lowercase a and lowercase z. The remaining characters may be lowercase a-z, 0-9, hyphen, or underscore. As mentioned in other answers, you can override this check if you like. By default, regexes are case-sensitive.
I faced the same problem -and I solved it- when I wrote
# adduser --home /Ali Ali
I got the error of
adduser --home /Ali Ali
adduser: Please enter a username matching the regular expression configured
via the NAME_REGEX configuration variable. Use the `--force-badname'
option to relax this check or reconfigure NAME_REGEX.
I solved it just by removing the uppercase letters as shown below
# adduser --home /ali ali
Adding user `ali' ...
Adding new group `ali' (1001) ...
Adding new user `ali' (1001) with group `ali' ...
Creating home directory `/ali' ...
Copying files from `/etc/skel' ...
passwd:
passwd: password updated successfully