One of the features of Unix type systems that makes that relatively secure is permissions – for every file, you link it to a user and a group and define what the user can do with it, what other members of the group can do with it and what anyone else can do with it. However, while powerful and brilliantly clever, it can be confusing and lead to all sorts of apparently mysterious problems.
Last night I was able to help out a friend with his WordPress blog, where he wasn’t able to see recently uploaded images. It turned out that the folder for November’s uploads wasn’t flagged as executable and thus couldn’t allow the webserver to pass files back to the browser. One small tweak and he was rolling again. I also had to fix permissions on the new home I am developing for this blog; again, a few tweaks and keeping things up to date will be much easier than it has been on my current host (and the new host gives me secure shell access, by far the easiest way to explore and tweak permissions).