I installed ubuntu on a computer and I have the OS installed on a solid state drive, and the home directories mounted from a separate hard drive. I wanted to create a folder proj which lived on the second hard drive, but I hadn't partitioned it, so I just used mkdir /home/proj.

proj is meant to be a directory which contains various software packages used by different experimental groups. For example, /proj/experiment1 would contain software used by one group and proj/experiment2 would be different packages or versions used by another group. I wanted it on the second hard drive with the /home directories so that the OS can be reinstalled while keeping this directory intact.

I'm now worried about what will happen to this directory if someone in the future runs adduser proj. Will this delete the directory and replace it with their home directory.

Is it bad practice to create non-user directories in /home? If so, what should I have done?

  • 1
    if you have your home directory on the external drive why not just put the proj folder under /home/youruser/proj? – Brandon Kreisel Jul 11 '12 at 17:46
  • The proj folder is meant to contain software packages that all users can access, and so I wanted it separate from my own home directory. – user545424 Jul 11 '12 at 17:49
  • I'd use /var/bin and add it to the PATH for all the users. – Rob Jul 11 '12 at 18:29

Multi-user, shared modifiable directories are, by convention, usually somewhere in /var or /opt.

However, if you are really worried about someone making a user called "proj", you could have just created a proj user, set its account disabled so nobody can login as it, and put the files in its home directory. Then make the home directory world readable and executable (and writable, too, if you want that).


While this is not the most common situation, from a practical standpoint I wouldn't say it should be forbidden to put "shared user data" directories under /home (specially if the system is yours or is not subject to express rules which disallow it). I use it myself for the same reasons as you. As a matter of fact, I usually partition my /home separately from the root directory to make it easy to backup what I really care about (user data), and so I don't have to worry about it in case I decide to completely reinstall or upgrade my system (in this case I can just wipe the root directory without having to worry about user data being erased - and the files to be shared among all users I also regard as user data).

In case you are worried about a user creating a homedir with the same name, the ''adduser'' script or similar (I use Slackware, not Ubuntu) will probably complain that homedir already exists and will ask the user to choose another one or chown it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.