Safely change home directory

sblundy picture sblundy · Oct 22, 2008 · Viewed 95.2k times · Source

I'm trying to safely update the home directory as specified in /etc/passwd, but the standard Linux utils - usermod and vipw - for doing so aren't provided by Cygwin.

Could anyone tell me how they changed this in Cygwin?

Answer

netjeff picture netjeff · Nov 29, 2008

EDIT: For recent versions of Cygwin (1.7.34 and beyond), see this newer question.

Like sblundy's answer, you can always edit by-hand.

But if you want to do it the "official" way, use the cygwin-specific mkpasswd command. Below is a snippet from the official docs on mkpasswd :

For example, this command:

Example 3.11. Using an alternate home root

$ mkpasswd -l -p "$(cygpath -H)" > /etc/passwd

would put local users' home directories in the Windows 'Profiles' directory.

There's a bunch of other really useful commands described on the Cygwin Utilities documentation page (which includes mkpasswd). The use of cygpath in the example above is another of these cygwin-specific tools.

While you're at it, you probably also want to read the Using Cygwin Effectively with Windows documentation. There's a bunch of really good advice.