由于正则表达式错误,“无法创建用户”

我正在运行Ubuntu 12.10桌面32位。 目前我只有一个用户,类型为administrator。 我想创建另一个管理员用户,但我不断收到以下错误:

无法创建用户

GDBus.Error:org.freedesktop.Accounts.Error.Failed:运行’/ usr / sbin / adduser’失败:/ usr / sbin / adduser返回错误(1):adduser:请输入与通过配置的正则表达式匹配的用户名NAME_REGEX [_SYSTEM]配置变量。 使用`–force-badname’选项放宽此检查或重新配置NAME_REGEX。

任何建议表示赞赏。

如果您尝试创建一个名称包含根据您的NAME_REGEX文件被认为不可接受的字符的用户,通常会收到此消息。 您可以再次尝试使用GUI更改用户名,也可以使用命令行和以下命令放宽检查。

sudo adduser --force-badname  

然后,如果要将用户添加到sudo组,请运行以下命令。

 sudo adduser  sudo 

您输入的用户名包含错误字符。 尝试输入一个只包含小写英文字母的简单用户名 – daniel很好, &&Daniel <*> Johnson##不太好。

在Debian系统中,定义可接受用户名的正则表达式可以在/etc/adduser.conf中找到。

一个典型的正则表达式(在我的系统上找到)是:

 NAME_REGEX="^[az][-a-z0-9_]*\$" 

我不希望使用正则表达式解析来偏离主题太远,但是插入符号^符号表示用户名的起始字符必须介于小写字母a和小写字母z之间。 其余字符可以是小写az,0-9,连字符或下划线。 如其他答案中所述,如果您愿意,可以覆盖此检查。 默认情况下,正则表达式区分大小写。

CoalaWeb的答案是正确的,但如果您不想为该用户创建自定义组…您只需使用以下命令创建用户:

 sudo useradd  

例:

 sudo useradd josh 

…然后由CoalaWeb正确地说,按照命令:

 sudo adduser   

例:

 sudo adduser josh sudo 

…这将给新用户’josh’sudo权限(超级用户权限(又名管理员))

……我还会加入名为’adm’的小组。

希望这有助于某人