O caractere 'ä' nos nomes de usuário causa bugs nos sistemas linux?


11

Quero usar meu primeiro nome como nome de usuário, mas ele contém o caractere 'ä'. Encontrei esta discussão .

Agora eu entendo, por que alguns caracteres estão desativados, mas e 'ä'? Esse personagem pode causar problemas?

Por que alguns caracteres unicode (ü, õ, ö, ä) são desativados quando são usados ​​em nomes completos?

Respostas:


10

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/passwde 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

2
Eu acho que o sistema operacional moderno da área de trabalho deve permitir caracteres unicode, da parte dos servidores, tudo é compreensível.
Marä Rt

2
@ MärtRang A coisa é que, hoje em dia, absolutamente tudo fala ASCII básico (OBRIGADO - procure EBCDIC se você quiser pesadelos), mas além disso existem cerca de um bilhão de páginas de código diferentes que lidam com personagens não-padrão e se os dois lados de uma conversa não ' Se você não sabe usar exatamente o mesmo, é possível obter cliques espetaculares que demoram uma eternidade para dissecar, porque cada lado insiste que o outro lado está falando sem sentido. Como diz Piskvor, "menos uma coisa com que se preocupar". Praticamente todos os front-end gráficos usam seu nome real hoje em dia de qualquer maneira.
Shadur

Tenho a impressão de que pode haver vários sistemas (determinados gerenciadores de exibição) nos quais a digitação de caracteres unicode pode ser problemática (ou impossível), além de apenas fazer com que o software de tratamento de nome de usuário o interprete corretamente. : crying_cat_face:
ThorSummoner

3

O uso de nomes de login não ASCII geralmente não é suportado e parece uma receita para problemas. Enquanto o UTF-8 está se tornando a codificação padrão de fato, ainda há muitas pessoas que usam outras codificações (especialmente fora do mundo de língua inglesa, onde as pessoas usam outras codificações incompatíveis de 8 ou 16 bits há muito tempo ) Por exemplo, é provável que você encontre aplicativos que tentam interpretar seu nome de usuário de acordo com a codificação do código do idioma atual, em vez de (tentar) convertê-lo na codificação do código do idioma atual. Seu nome de login também é a parte esquerda do seu endereço de e-mail, e é mais provável que isso cause problemas, pois você depende da codificação escolhida ser suportada e respeitada por todos os sistemas pelos quais o seu correio passa.

O nome de login é destinado a computadores. Use ASCII no seu nome de login. O nome completo é destinado a seres humanos. Use UTF-8 em seu nome completo.


2

A última pergunta é a mais fácil de responder: tradição, praticidade, simplicidade (para o desenvolvedor) e portabilidade, se você deseja ser caridoso ou, alternativamente, atraso, impraticabilidade (para o usuário), ignorância e não-portabilidade, se você não t. O US-ASCII é simplesmente o conjunto de caracteres usado desde o início dos tempos (pré-web para os jovens) em praticamente todos os lugares.

Em muitos aplicativos, simplesmente não há suporte interno para caracteres fora do que você pode ver em um teclado em inglês (e às vezes nem isso). Em outras palavras, o software pode ou não suportá-lo e você pode esperar apenas o inesperado.


2
Concordo com isso quando preciso criar usuário para servidor. Por que não habilitar caracteres unicode quando você usa o linux como um sistema operacional de desktop?
Marä Rt

1
e se o nome de usuário for usado para acessar proxy, samba, nfs ou outros serviços? Ou pastas pessoais por caminhos compartilhados?
Sirex 20/09
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.