Msg#: 4196979 posted 2:37 am on Sep 6, 2010 (gmt 0)
OK help me understand this.
I have 2 users in my linux system that are BOTH part of "web-users" group.
one is www-data used by the webserver and php-cgi one is my ftp-user
when I upload files via ftp they are set to 775 for dirs and 664 for files, when I run a script on the server (so same group like the ftp user) to delete that directory and files inside: unlink for files works ok but the command rmdir doesnt work returning permission denied!?
why is that 775 means that the group's user can delete it just like 664 for files.
Msg#: 4196979 posted 3:47 am on Sep 7, 2010 (gmt 0)
If you want to delete a directory, you effectively need change permissions to the parent directory, because the rmdir() action needs to delete one entry from the parent directory list. Therefore 775 permissions on the directory which you want to remove is not enough to remove it, you also need to set proper rights on the parent.
This is an issue of ownership, not file/directory permissions. If you have a script create a directory, create tools to allow the script to remove the directory. Only root can effectively change ownership, and you don't really want your FTP user *or* PHP running as root.