Most folder names in the *nix world are lower case. It makes them easier to type in my opinion. However, everything in my home-dir is capitalized! Why is this? Is it possible to change them?

The only solution I have come up with so far is putting soft links in my home dir for each folder with lower case names.

ln -s ~/Downloads dls

Furthermore, doesn't it seem weird that there are no abbreviations in the home dir? I'm used to folder names like dev, lib, tmp, var, or usr. That's right, we want to save one keystroke by shortening user to usr and three on binary to bin, but Downloads can't be shortened to dls.

Which of the following looks more like a *nix directory structure to you?

Desktop Documents Downloads Music Pictures Public Templates Videos


desk docs dls music img pub templates vids

Is there a reason for this inconsistency or is this just a legacy issue?

migrated from serverfault.com Jan 5 '10 at 20:35

This question came from our site for system and network administrators.

  • 6
    usr means "unix system resources", not "user" – mhaller Jan 5 '10 at 22:41
  • 2
    Rubbish. That's a backronym. See early manuals like in-ulm.de/~mascheck/bourne/v3 where directories such as /usr/dmr are used as examples (dmr is Dennis M Ritchie, a co-creator of Unix). Clearly, /usr is where user directories were located. – camh Jan 6 '10 at 7:01

10 Answers 10


Which of the following looks more like a *nix directory structure to you?

I suspect the mainstream distros these days are more concerned with the question "which of the following is the slightest bit user-friendly?" Linux distributions like Fedora and Ubuntu are attempting to attract mainstream, non-programmer users, and things like this are a good step in that direction.

bin, lib, tmp, usr, etc. are generally not exposed to average (i.e. "my mother") users, so leaving them abbreviated doesn't harm usability. The home directory, though, is something that every user is going to encounter, so it makes sense to have it easily human-readable.

  • 3
    Good point, although I think that's a slippery slope. If you make all your decisions based on what your uninformed users want you'll get Windows. – brad Jan 5 '10 at 19:54
  • 11
    That's it's own slippery slope - at which level of "uninformed" do we start ignoring user feedback? Must they be able to code assembly to be listened to? Ultimately, calling the downloads folder "Downloads" instead of the obtuse "dls" really harms no one and benefits plenty. – ceejayoz Jan 5 '10 at 20:01
  • 7
    @Brad: usability makes or breaks an app/system. I'd hazard a guess that the (vast) majority of people would know what "Downloads" means as opposed to "dls". – squillman Jan 5 '10 at 20:02
  • 1
    If they could the world would be a better place. Disclaimer: I can't code assembly either. :) I agree with you but I'm a user too, whatever my level of informed is. If linux isn't the informed users system then what is? – brad Jan 5 '10 at 20:06
  • 3
    Why limit Linux's obvious benefits to only a tiny subset of the population? An operating system can be friendly to informed and uninformed users at the same time, and it's well worth the effort. – ceejayoz Jan 5 '10 at 20:24

If I look at my home folder, I see countless folders and files starting with a dot and consisting mostly of lowercase letters. I don’t like having this mess in the home folder and seeing these capitalised folders gives me a comforting feeling that it is possible to organise and structure things in a good way.

Don’t see anything wrong with capitalised folders at all. But then, I also use spaces and unicode characters for files when it makes things more readable.

  • Normally dotfiles are hidden. – grawity Jan 6 '10 at 10:51
  • I knew someone would be saying that… — True, but a messy room is a messy room even with your eyes closed. (Well, there are also countless visible, undotted files in my home but that’s maybe another story. That might not be the OS’s fault…) – Debilski Jan 6 '10 at 11:44

It's easy to make the directories in the home directory space more user friendly because probably nothing cares what they are called except a few end user programs in KDE or Gnome. You can't do similar things to something like /usr or /etc because there are literally thousands of programs that may or may not break if you made that change.

  • 2
    /usr and /etc are also not commonly exposed to basic users. Something mass-market like Firefox is going to expose its /etc config options in a UI within the app as well as in the text file. – ceejayoz Jan 5 '10 at 20:26
  • 1
    @ceejayoz: a mass-market app like Firefox is gonna stick config options in some dotfolder in the user's home directory like it should, and won't stick anything in /etc .. – quack quixote Jan 5 '10 at 21:22
  • OK, use a different app for the example. You get the point, though. – ceejayoz Jan 5 '10 at 21:50
  • 1
    The main kind of software that uses /etc for its configuration is server software. Applications generally store preferences and config in the home directory (hidden in a folder like .appname), or in the applications folder (in the case of some windows ports). – Adam Luchjenbroers Jan 6 '10 at 1:45

Most people seem to like it when it's very clear what a directory is for - would you know what a dls directory was for if you hadn't created it yourself?

These directories you describe, with the exception of Desktop, aren't actually needed by any software I have come across. You can just rename them and any software you use tends to remember the directory you last used.

The difference between Desktop and desk is just one keypress if you are using bash tab-completion, for all the Windows-converts who are scared of the big black box of a shell prompt it makes absolutely no difference time-wise and it is much more user-friendly. I think one extra keypress is worth this user-friendlyness.

  • Hell, it doesn't even have to be an extra keypress. "De[Tab]" vs. "de[Tab]". – ceejayoz Jan 5 '10 at 20:25
  • 3
    It is an extra keypress because you need to press the shift key. – WheresAlice Jan 5 '10 at 20:43
  • 6
    "set completion-ignore-case on". :) – RJFalconer Jan 5 '10 at 20:55
  • 1
    Aw, crap, @kaerast, you're right! – ceejayoz Jan 5 '10 at 21:08
  • 1
    But it’s an extra keypress that costs no extra time when done right. – Debilski Jan 6 '10 at 1:25

This may have become widespread first on Mac OS X, which mixed the "cryptic" Unixy stuff with the more "user-friendly" names; not only in each user's directory, but at the root: /System, /Applications, etc. I find it to be a useful distinction.


You can use xdg-user-dirs to tell applications to use your shortened names. There are some apps that forget to check if the locations are non-standard, but since it's an i18n issue you should get a good response if you file bugs.


I'd rather suspect that the big name distros are more concered with the question "which of the following is the most Windows/Mac like".

  • ... "which is more user friendly", yes. More mac/windows like, no. I don't think they're necessarily the same thing :P. – RJFalconer Jan 5 '10 at 20:55

Programmers/system administrators on UNIX systems use command line tools a lot, so it's not surprising that most of the directories used by them have been abbreviated for their convenience, as they'd be typing them a lot. More so if you consider that in the beginning of UNIX, physical teletypes were in use.

In a GUI, you don't have to type anything most of the time, so having longer, clearer, friendlier names is more viable.

Of course, by using tab completion or symlinks, everyone can be happy, but I can't blame GUI designers for assuming or envisioning that normal users will do less typing of names, and not care about their length, as opposed to administrators/programmers.

Most of the directories you mention, like Downloads, etc. AFAIK are actually put there and recognized by your desktop environment. Without a desktop environment, Linux doesn't really put very much in your home directory. I'm sure they are configurable, you may want to read the documentation for whatever desktop environment/file manager you are using.


Because it's Linux. If you don't like the way a distro does something, you're encouraged (that is, expected) to create your own.


Take a look at ~/.config/user-dirs.dirs. You can edit the paths there, or just use the xdg-user-dirs-update command, e.g.

mv ~/Downloads ~/dls
xdg-user-dirs-update --set DOWNLOAD /home/$USER/dls

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.