There are specific folders designed for specific tasks. /var/www holds your web sites, /usr/bin contains files to run your applications...yet I still find myself putting nearly all of my work in ~. Is it possible to overuse my home directory? Will it come back to haunt me?

Anyone have a good link to an article of best practices for organizing your files so that they are placed in their "correct" place? Is there even such a thing in Linux?

I am referring specifically to user-generated content. I do not compile applications from source, I use apt-get for those tasks.

This article has a great introduction to what I'm looking for. Table 3-2, "Subdirectories of the root directory" is the sort of thing I'm looking for, but with more details/examples.

link|improve this question

1  
This is probably the canonical resource. – Daniel Beck Nov 12 '11 at 16:12
You could (and should) make this an answer. – Droogans Nov 12 '11 at 16:22
feedback

closed as not constructive by random Nov 12 '11 at 19:08

This question is not a good fit to our Q&A format. We expect answers to generally involve facts, references, or specific expertise; this question will likely solicit opinion, debate, arguments, polling, or extended discussion. See the FAQ for guidance on how to improve it.

3 Answers

up vote 6 down vote accepted

The Filesystem Hierarchy Standard is probably the canonical resource on Unix file system layout.

Some users replicate something similar to the root hierarchy within their home directory for software only installed for them personally.


If you're concerned about your private or work related data, it's advisable to keep most or all of it in your home directory with whatever structure works for you, unless you intent to share it with other users. There's a reason many programs are able to use custom, user-specific information from within your home directory (e.g. .profile, .ssh/), …

The structure within your home directory is entirely up to you. Some directories are automatically generated depending on the software you use, e.g. ~/Documents is common. Both Windows and Mac OS X have some kind of basic structure (Movies, Music, etc.) that are more or less enforced, but you aren't obligated to adhere to it even there. Do whatever works for you and the way you think.

I don't like the default structure in these systems, as I don't care about the file or media types — I like to keep everything related to a project in a common location. So I just ignore or hide these directories and create my own.


If I'm the only person using a machine, it helps me to think about whether another person use that computer for its intended purpose would need access to a file or program. If yes, I'd put it in a shared location or install a program system-wide. If not, it goes into my home directory.

link|improve this answer
Some users replicate something similar to the root hierarchy within their home directory for software only installed for them personally. What a novel idea. I can finally feel confident in keeping my ~ directory sensible during growth. Thanks. – Droogans Nov 13 '11 at 15:38
feedback

I guess you should look into Filesystem Hierarchy Standard and policy of your linux distribution regarding this standard. E.g. Debian policy on filesystem hierarchy

link|improve this answer
feedback

Using the manpage for hier as reference also helps.

link|improve this answer
feedback

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