更改用户名和主目录名称

Che*_*tan 6 rvm oracle user-management 14.04

我更改了用户的用户名。

命令:

killall -u 用户名
usermod -l new_username old_username
groupmod -n new_groupname old_groupname
usermod -d /home/new_username -m new_username
usermod -c "新名称" new_username

chown new_username:new_groupname .Xauthority

我想知道将主目录从例如更改为/home/test/ 是否/home/ubuntu/会影响任何应用程序。

我已经安装了 RVM、Ruby、Rails、Oracle 等等。

NZD*_*NZD 3

它应该有效。

\n\n

某些应用程序会将绝对路径名存储在其配置文件或它们保留的其他文件中。您必须手动更改这些内容或再次设置应用程序的用户特定部分。

\n\n

您可以按如下方式搜索这些文件(至少搜索将路径名存储为文本的文件):

\n\n
find /home/new_username -type f -exec egrep -H \'/home/old_username\' {} \\;\n
Run Code Online (Sandbox Code Playgroud)\n\n

该命令不会修复这些文件。它只会为您找到它们。您可以用来sed更改文件。大致如下:

\n\n
find /home/new_username -type f -exec egrep -l \'/home/old_username\' {} \\;|xargs sed -i \'s%/home/old_username%/home/new_username/\xe2\x80\x8c\xe2\x80\x8b;g\'\n
Run Code Online (Sandbox Code Playgroud)\n\n

请先测试一下。

\n\n

请注意,某些文件可能看起来是文本文件,但实际上是二进制文件。对这些文件进行搜索和替换可能会破坏它们。

\n\n

注意:您不需要使用将chown -R new_username:new_groupname /home/new_username新主目录中文件的所有权转移给新用户,因为“新用户”的 UID 与“旧用户”相同,因此文件已由“新用户”拥有。

\n


小智 0

唯一对我有用的是:

须藤 gedit /etc/passwd

须藤 gedit /etc/group

并手动进行了我想要的更改!