내 이름을 사용자 이름으로 사용하고 싶지만 "ä"라는 문자가 포함되어 있습니다. 내가 찾은이 스레드.
이제 일부 문자가 비활성화되는 이유를 이해합니다. 그런데 "ä"는 어떻습니까? 이 캐릭터가 문제를 일으킬까요?
전체 이름에 사용될 때 특정 유니코드 문자(ü, õ, ö, ä)가 비활성화되는 이유는 무엇입니까?
답변1
이전의현대의시스템(완전한 유니코드 지원), 이해서는 안 된다질문을 하세요 – “하면 안 된다”를 강조하세요. 이 답변에서 인용했듯이,
기본값은
NAME_REGEX="^[a-z][-a-z0-9]*\$"
이는 현재 시스템에 비해 너무 제한적일 수 있지만 관리가 더 쉬워집니다. 이는 "걱정할 것이 하나 줄어드는" 것과 같습니다. 사용자 이름은 여러 곳에서 사용됩니다. 예를 들어 홈 디렉토리는 다음과 같습니다. /home/username
대부분의 정상적인 파일 시스템은 완전한 유니코드를 지원하지만 컴퓨터와 관련된 모든 경우와 마찬가지로 건전성을 보장할 수는 없습니다.
시스템에서 사용하는 실제 로그인 이름(이 규칙의 범위에 속함)은 /etc/passwd
)의 UID에 매핑됩니다.
해야 할 일: 해당되는 경우 사용자 이름에는 발음 구별 부호 없이(또는 라틴어가 아닌 스크립트인 경우 로마자 표기) 이름을 사용하고 전체 이름에는 실제 형식을 사용합니다. /etc/passwd의 항목은 다음과 유사할 수 있습니다.
martrang:x:1001:1001:Märt Rang,,,:/home/martrang:/bin/bash
답변2
비ASCII 로그인 사용은 일반적으로 지원되지 않으며 문제가 발생할 수 있는 것처럼 들립니다. UTF-8이 사실상의 표준 인코딩이 되고 있지만 여전히 다른 인코딩을 사용하는 사람들이 많습니다(특히 사람들이 오랫동안 호환되지 않는 8비트 또는 16비트 인코딩을 사용해 온 영어권 국가 외부에서는 더욱 그렇습니다). 예를 들어 사용자 이름을 현재 로케일의 인코딩으로 변환하는 대신(시도하는) 현재 로케일의 인코딩에 따라 해석하려고 시도하는 애플리케이션을 접할 수 있습니다. 귀하의 로그인 이름은 이메일 주소의 왼쪽 부분이기도 합니다. 이는 귀하가 선택한 인코딩을 지원하고 존중하기 위해 메시지가 통과하는 모든 시스템에 의존하고 있기 때문에 문제를 일으킬 가능성이 더 높습니다.
로그인 이름은 컴퓨터용입니다. 로그인에 ASCII를 사용하십시오. 전체 이름은 인간을 위해 설계되었습니다. 이름에 UTF-8을 사용하세요.
답변3
마지막 질문은 대답하기 가장 쉬운 질문입니다. 유산, 실용성, 단순성(개발자의 경우) 및 이식성(자선 활동을 원하는 경우) 또는 후진성, 비실용성(사용자의 경우), 무지 및 비이식성(원하지 않는 경우) 더하다.US-ASCII고대부터(웹이 출현하기 전, 젊은이들을 위한) 거의 모든 곳에서 사용되어 온 문자 집합입니다.
많은 응용 프로그램에는 영어 키보드에서 볼 수 있는 것 외에 문자에 대한 기본 지원 기능이 없습니다(때로는 지원하지도 않음). 즉, 소프트웨어가 이를 지원할 수도 있고 지원하지 않을 수도 있으며 예상치 못한 결과만 기대할 수 있습니다.