34

I would like to know, whow to modify properly the homedir of a user.

I already know about this command

usermod -d /home/peter peter

But now, do I have to create the homedir before? And what will happen to the old homedir? (I know about the -m option which would move the contents, but I don't want to move/remove the old content).

So for not removing and just leaving the old content, would I just have to use the command, exactly as I mentioned above?

I use Ubuntu 12.04.1 LTS "Server".

Peter
  • 527

1 Answers1

42

Firstly usermod can not be run as a normal user. You either need to be logged on as root, not recommended, or prefix the command with sudo. The command does not create the folder so you will need to create it first.

cd /home;
sudo mkdir peter
sudo chown peter:peter peter
sudo usermod -d /home/peter peter

Will do what you want. Any existing home folder will remain unchanged

You cannot change a user's home directory while that user is logged in (if you are logged in as peter, it will not work).

muru
  • 197,895
  • 55
  • 485
  • 740
Warren Hill
  • 22,112
  • 28
  • 68
  • 88
  • What do I do when it says the user is logged in? But for real the user is not logged in. Users just shows myself. – Peter Feb 03 '13 at 12:51
  • you can check who you are logged with whoami and everybody logged in with who. – Warren Hill Feb 04 '13 at 10:21
  • I used users and it just returned my own name. Which was not the username, which I assigned the new home directory to. Seems to me the user was somehow assigned to me, because after re-login it worked well. – Peter Feb 04 '13 at 12:38
  • small notice that moduser will move old dir to new dir, so it will not create new dir if old dir does not exist. http://manpages.ubuntu.com/manpages/precise/en/man8/usermod.8.html – HVNSweeting Apr 21 '15 at 10:01
  • 2
    sudo chown peter: peter might be preferable here. This form <user>: uses the user's default group, which is not necessarily the same name as the user name. – Jamie Cockburn May 17 '18 at 18:36
  • What would happen if I directly edit /etc/passwd? Is that unsafe? – Sridhar Sarnobat Mar 21 '21 at 00:14
  • 1
    @SridharSarnobat You can directly edit /etc/passwd with sudo vipw which will safely lock the file while you're editing it. Next time the user logs in, they will come into their new home directory. – BadHorsie Jul 05 '21 at 16:15