Em um sistema moderno (com suporte completo a Unicode), isso não deve ser um problema - com ênfase em "não deveria". Conforme citado nessa resposta,
O padrão é NAME_REGEX="^[a-z][-a-z0-9]*\$"
Embora isso possa ser excessivamente rigoroso para os sistemas atuais, facilita a administração - como em "menos uma coisa com que se preocupar". Observe que o nome de usuário é usado em muitos lugares - por exemplo, seu diretório inicial provavelmente teria o formato /home/username
; a maioria dos sistemas de arquivos sãos tem suporte completo a Unicode, mas, como em qualquer coisa relacionada ao computador, a sanidade em todas as circunstâncias não é garantida.
Observe que existe o nome de login real, conforme usado pelo sistema (que se enquadra nessas regras), mapeado para um UID /etc/passwd
e existe "Nome Completo", que é uma sequência (e a maioria dos caracteres válidos pode ser inserida, embora exista uma aviso "não ASCII").
O que fazer: Onde aplicável, eu uso o nome sem sinais diacríticos (ou romanizados, no caso de scripts não latinos) para nome de usuário e a forma real para Nome completo. A entrada no seu / etc / passwd pode ser semelhante a esta:
martrang:x:1001:1001:Märt Rang,,,:/home/martrang:/bin/bash