En un sistema moderno (con soporte Unicode completo), esto no debería ser un problema, con énfasis en "no debería". Como se cita en esa respuesta,
El valor predeterminado es NAME_REGEX="^[a-z][-a-z0-9]*\$"
Aunque esto puede ser demasiado estricto para los sistemas actuales, facilita la administración, como en "una cosa menos de la que preocuparse". Tenga en cuenta que el nombre de usuario se usa en muchos lugares, por ejemplo, su directorio personal probablemente tenga la forma /home/username
; la mayoría de los sistemas de archivos sanos tienen soporte Unicode completo, pero como con cualquier cosa relacionada con la computadora, la cordura en todas las circunstancias no está garantizada.
Tenga en cuenta que existe el nombre de inicio de sesión real tal como lo utiliza el sistema (que se ajusta a estas reglas), asignado a un UID /etc/passwd
, y hay "Nombre completo", que es una cadena (y se pueden ingresar la mayoría de los caracteres válidos, aunque hay un advertencia "no ASCII").
Qué hacer: cuando corresponda, utilizo el nombre sin diacríticos (o romanizado, en el caso de los scripts no latinos) para el nombre de usuario y la forma real para el nombre completo. La entrada en su / etc / passwd podría ser similar a esto:
martrang:x:1001:1001:Märt Rang,,,:/home/martrang:/bin/bash