适当修改主目录

我想知道如何适当地修改用户的主目录。
我已经了解这个命令。
usermod -d /home/peter peter

现在,我需要在创建家目录之前吗? 旧的家目录会发生什么情况?(我知道有一个-m选项可以移动内容,但我不想移动/删除旧内容)。
所以,为了不删除旧内容,只保留旧内容,我只需要使用上面提到的命令吗?
我使用的是Ubuntu 12.04.1 LTS "Server"。
1个回答

首先,usermod不能以普通用户身份运行。您需要以root用户登录(不推荐),或者在命令前加上sudo前缀。该命令不会创建文件夹,所以您需要先创建它。
cd /home;
sudo mkdir peter
sudo chown peter:peter peter
sudo usermod -d /home/peter peter

会按照您的要求进行操作。任何现有的个人文件夹都将保持不变。
在用户登录状态下,无法更改用户的主目录(如果您以“peter”的身份登录,则无法进行更改)。

当显示用户已登录时,我该怎么办? 但实际上用户并没有登录。用户只是显示为自己。 - Peter
你可以使用 whoami 命令来查看当前登录的用户,使用 who 命令可以查看所有已登录的用户。 - Warren Hill
我使用了users,但它只返回了我的名字。这并不是我分配给新的主目录的用户名。看起来用户是以某种方式分配给了我,因为重新登录后它正常工作了。 - Peter
小提示:moduser将把旧目录“移动”到新目录,如果旧目录不存在,则不会创建新目录。http://manpages.ubuntu.com/manpages/precise/en/man8/usermod.8.html - HVNSweeting
2在这里,sudo chown peter: peter 可能更好。这种形式 <user>: 使用用户的默认组,该组的名称不一定与用户名相同。 - Jamie Cockburn
如果我直接编辑/etc/passwd会发生什么?这样做是否安全? - Sridhar Sarnobat
1@SridharSarnobat 你可以使用 sudo vipw 直接编辑 /etc/passwd 文件,在你编辑时会安全地锁定该文件。下次用户登录时,他们将进入他们的新家目录。 - BadHorsie