¿El carácter 'ä' en los nombres de usuario causa errores en los sistemas Linux?


11

Quiero usar mi primer nombre como nombre de usuario pero contiene el carácter 'ä'. Encontré este hilo .

Ahora entiendo, ¿por qué algunos caracteres están desactivados, pero qué pasa con 'ä'? ¿Puede este personaje causar algún problema?

¿Por qué algunos caracteres Unicode (ü, õ, ö, ä) están deshabilitados cuando se usan con nombres completos?

Respuestas:


10

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

2
Creo que el SO de escritorio moderno debería permitir caracteres unicode, desde la parte de los servidores, todo es comprensible.
Märt Rang

2
@ MärtRang Thing es que hoy en día absolutamente todo habla ASCII básico (GRACIAS, busca EBCDIC si alguna vez quieres pesadillas), pero más allá de eso hay un millón de páginas de códigos diferentes que tratan con caracteres no estándar, y si ambos lados de una conversación no lo hacen ' No sé usar exactamente el mismo, puedes obtener clusterfucks bastante espectaculares que tardan una eternidad en diseccionarse porque cada lado insiste en que el otro lado está hablando galimatías. Como dice Piskvor, "una cosa menos de qué preocuparse". Casi todas las interfaces gráficas utilizarán su nombre real hoy en día de todos modos.
Shadur

Tengo la impresión de que puede haber una serie de sistemas (ciertos administradores de pantallas) en los que escribir caracteres Unicode puede ser problemático (o imposible) además de que el software de manejo de nombre de usuario lo interprete correctamente. : crying_cat_face:
ThorSummoner

3

El uso de nombres de inicio de sesión que no son ASCII generalmente no es compatible y parece una receta para problemas. Si bien UTF-8 se está convirtiendo en la codificación estándar de facto, todavía hay muchas personas que usan otras codificaciones (especialmente fuera del mundo de habla inglesa, donde las personas han estado utilizando otras codificaciones incompatibles de 8 o 16 bits durante mucho tiempo) ) Por ejemplo, es probable que encuentre aplicaciones que intenten interpretar su nombre de usuario de acuerdo con la codificación de la configuración regional actual, en lugar de (intentar) traducirlo a la codificación de la configuración regional actual. Su nombre de inicio de sesión también es la parte izquierda de su dirección de correo electrónico, y es aún más probable que cause problemas, ya que depende de que la codificación elegida sea compatible y respetada por todos los sistemas por los que pasa su correo.

El nombre de inicio de sesión está destinado a computadoras. Use ASCII en su nombre de usuario. El nombre completo está destinado a humanos. Use UTF-8 en su nombre completo.


2

La última pregunta es la más fácil de responder: tradición, practicidad, simplicidad (para el desarrollador) y portabilidad, si quieres ser caritativo, o alternativamente atraso, impracticabilidad (para el usuario), ignorancia y no portabilidad, si no lo haces ' t. US-ASCII es simplemente el conjunto de caracteres que se ha utilizado desde los albores del tiempo (pre-web para los jóvenes) prácticamente en todas partes.

En muchas, muchas aplicaciones simplemente no hay soporte integrado para caracteres fuera de lo que puede ver en un teclado en inglés (y a veces ni siquiera eso). En otras palabras, el software puede o no admitirlo, y solo puede esperar lo inesperado.


2
Estoy de acuerdo con eso cuando necesito crear un usuario para el servidor. ¿Por qué no habilitar los caracteres Unicode cuando usa Linux como SO de escritorio?
Märt Rang

1
¿Y si el nombre de usuario se usa para acceder a proxy, samba, nfs u otros servicios? ¿O carpetas de inicio a través de rutas compartidas?
Sirex
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.