Linux:无法获取包含空格的用户主目录[关闭]

Posted

技术标签:

【中文标题】Linux:无法获取包含空格的用户主目录[关闭]【英文标题】:Linux: Can't get home directory of user which contains whitespace [closed] 【发布时间】:2016-08-03 07:02:51 【问题描述】:

我在 CentOS 7(Shambala) 中从 GUI 注册标准用户。从 vipw 文件我更改了它的用户内容sha mbala:x:1001:1001:sha mbala:/home/sha mbala:/bin/bash 现在我无法使用

进入主目录
cd ~sha mbala

我也试过

cd ~sha\ mbala

问题是我需要使用 ~ 进入主目录。

【问题讨论】:

unix 用户名中的空格?我相信 unix 用户名必须匹配 ^[a-z_][a-z0-9_-]+$ UNIX 用户名中不允许有空格。这就是为什么我无法关注您的问题 查看serverfault 的一些评论。主目录名称中的空格会破坏许多内容。 没错,但我有这方面的任务所以手动更改vipw 文件有效。 你能告诉我在哪里可以获得有关 CentOS 的官方命名约定吗? 【参考方案1】:

基本的 gnu/linux 用户名是一个 32 个字符的字符串 (useradd(8))。这是 BSD 4.3 标准的遗留格式。 passwd(5) 增加了一些额外的限制,比如不要使用大写字母,不要使用点,不要以破折号结尾,不能包含冒号。

在此答案What are the real rules for linux usernames on CentOS 6 and RHEL 6?中查看更多详细信息

【讨论】:

以上是关于Linux:无法获取包含空格的用户主目录[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

linux获取用户主目录的绝对路径

Linux目录结构

奇点;在用户主目录中获取一个 github 存储库

Linux目录结构

Linux创建用户

linux如何修改用户主目录