用户名中的字符 'ä' 会导致 linux 系统中的错误吗?

Mär*_*ang 11 users unicode

我想使用我的名字作为用户名,但它包含字符“ä”。我找到了这个线程

现在我明白了,为什么有些字符被禁用了,但是“ä”呢?这个角色会引起任何问题吗?

为什么某些 unicode 字符(ü、õ、ö、ä)在全名中使用时被禁用?

Pis*_*ing 10

现代系统(具有全面的 Unicode 支持)上,这应该不是问题 - 重点是“不应该”。正如该答案中引用的那样,

默认是 NAME_REGEX="^[a-z][-a-z0-9]*\$"

尽管这对当前系统来说可能过于严格,但它使管理更容易——就像“少了一件需要担心的事情”。请注意,用户名在很多地方都被使用——例如你的主目录可能是这样的形式/home/username;大多数健全的文件系统都有完整的 Unicode 支持,但与任何与计算机相关的事物一样,在所有情况下都不能保证健全。

请注意,有系统使用的实际登录名(属于这些规则),映射到 中的 UID /etc/passwd,还有“全名”,它是一个字符串(可以输入大多数有效字符,尽管有一个“非 ASCII”警告)。

怎么做:在适用的情况下,我使用不带变音符号的名称(或罗马化,如果是非拉丁文字)作为用户名,并使用真实形式作为全名。/etc/passwd 中的条目可能与此类似:

martrang:x:1001:1001:Märt Rang,,,:/home/martrang:/bin/bash
Run Code Online (Sandbox Code Playgroud)

  • 我认为现代桌面操作系统应该允许 unicode 字符,从服务器部分,一切都是可以理解的。 (2认同)
  • @MärtRang 事情是,现在绝对一切都说基本的 ASCII(谢天谢地 - 如果你想要噩梦,请查找 EBCDIC),但除此之外,还有大量不同的代码页处理非标准字符,如果对话双方都没有”不知道使用完全相同的方法,你可以得到非常壮观的clusterfucks,需要*永远*来剖析,因为每一方都坚持*另一方在胡言乱语。正如 Piskvor 所说,“少了一件需要担心的事情”。无论如何,现在几乎每个图形前端都会使用您的真实姓名。 (2认同)