[...] Para ser portátil entre os sistemas em conformidade com o padrão IEEE Std 1003.1-2001, o valor é composto de caracteres do conjunto de caracteres de nome de arquivo portátil. O hífen não deve ser usado como o primeiro caractere de um nome de usuário portátil.
... onde o conjunto de caracteres do nome do arquivo portátil é:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
a b c d e f g h i j k l m n o p q r s t u v w x y z
0 1 2 3 4 5 6 7 8 9 . _ -
Além disso, a página de manual do arquivo /etc/adduser.conf
afirma:
VALID NAMES
adduser and addgroup enforce conformity to IEEE Std 1003.1-2001,
which allows only the following characters to appear in group
and user names: letters, digits, underscores, periods, at signs
(@) and dashes. The name may not start with a dash. The "$" sign
is allowed at the end of usernames (to conform to samba).
An additional check can be adjusted via the configuration
parameter NAME_REGEX to enforce a local policy.
No entanto,
Embora ambas as especificações pareçam incluir o ponto, o Ubuntu (pelo menos no meu 13.04) parece recusá-lo:
⊳ sudo adduser as.df
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.
O padrão NAME_REGEX
no Ubuntu é (da /etc/adduser.conf
manpage):
^[a-z][-a-z0-9]*$
- Começando com uma letra minúscula e qualquer número de traços, letras minúsculas ou dígitos. Não há
_
,@
ou.
.
Então,
Em conclusão, um ponto .
pode ser usado para um nome de usuário do Ubuntu, o NAME_REGEX
só precisa ser alterado em /etc/adduser.conf
. Visto que está em conformidade com POSIX, não deve haver nenhum problema em ter um .
no nome de usuário com qualquer programa compatível com POSIX.
Para ativar um ponto nos nomes de usuário
-
Execute este comando em um terminal:
sudo nano /etc/adduser.conf
-
Localize esta linha (perto do final do arquivo)
#NAME_REGEX="^[a-z][-a-z0-9]*$"
e substitua por
NAME_REGEX='^[a-z][-.a-z0-9]*$'
Observe que
-
deve permanecer como o primeiro caractere na expressão de colchete[...]
, caso contrário, ele é tratado como especificando um intervaloa-z
. -
Pressione Ctrl + X , então Y , depois Digite .
Referências: