Filesystem Permmissions - Help

Hi,

I’m using opensuse 10.3 as a webserver, running apache and mysql with php to host a Joomla website.

The problem is that when I try to make any changes with my Joomla site (e.g. add modules, modify themes etc), it says that it has “Insufficient Permissions” to modify the file. I have tried chmodding the joomla directory to 666 645 and 777 all unsuccessfully, and fishing into the server directory on konqueror and changing the access permissions in the properties. Although these change the permissions of the files that are in the directory then, they do not effect the permissions of files that are created later - they become the “default” for that directory.

Q1) What user is it that runs the Joomla commands? Root? If so, why can’t it access/write to all files?
Q2) How can you make the whole directory’s permissions, and files that will be created in the future, set to something that Joomla will be able to write to?

Thanks for your help, feel free to ask anything,

Scott

There is a checkbox “apply to all subfolders” that you need to check however a better idea is to use public_html instead of the default srv directory.
To do this type kdesu kwrite /etc/apache2/default-server.conf in a console then change the DocumentRoot:

DocumentRoot “/home/yorusername/public_html”

Now put all your Joomla files in your public_html folder and you will no longer have permissions problems

You will need to resart apache and may need to change permissions on some files after moving them from the default directory

Bear in mind also that the mysql permissions system is independent of the Linux permissions system and that openSUSE is installed by default to prevent Linux root accessing mysql.

It may not be a matter of changing permissions but of doing a thorough review of what permissions apply to a particular operation and ensuring that they satisfy both the Linux and the mysql permissions requirements.

Mysql allows you to set very fine grained permissions for different operations and you may find it helpful to master these to ensure that any applications open to the Internet are as watertight as possible.