I have tested this with the latest stable 6.x-2.0-beta12 and dev 6.x-2.x-dev.

Imagecache fails to create images on network shares.

#Manual Mount:
mount -t cifs //10.1.111.182/www/imgserver1/files /var/www/drupal/files -o username=root,password=secret,iocharset=utf8,file_mode=0777,dir_mode=0777
#Fstab:
//10.1.111.182/www/imgserver1/files /var/www/drupal/files    cifs    credentials=/root/.imgcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

As you can see all the permissions are set and it mounts perfect.

An addition I ran the following on the drupal server.

chown -R www-data:www-data /var/www/drupal/files
chmod 777 -R /var/www/drupal/files

And ran the following on the image server.

chown -R www-data:www-data /srv/www/imgserver1/files
chmod 777 -R /srv/www/imgserver1/files

I verified each dir on both servers:

ls -al

All have:

drwxrwxrwx 
www-data www-data

Full and unrestricted access.

If I unmount the share, imagecache works. I know this is an issue with imagecache, because imagefield_thumbs generated by cck imagefield, are being generated on the network share, unmounted or mounted.

For now I am using a backup server to host all the images; hopefully this gets resolved soon.

Comments

kingstonballer’s picture

I have also come up against this issue. I have tried looking into it, but only surface deep really.
I'm not sure why ImageCache can't use a network share as storage.
Although slightly different, I have tried creating an alias for my entire 'site/default/files' folder, and on the 'status' page, I get an error saying:

File system Not writable
The directory sites/default/files does not exist. You may need to set the correct directory at the file system settings page or change the current directory's permissions so that it is writable.

and

ImageCache Directory sites/default/files/imagecache is not a directory or is not readable by the webserver.

Now, in part I think this is down to the use of 'is_dir' which (to my knowledge) will return false, and 'is_link' should be added as well.
But what confuses me is that the alias works for the standard images that are stored in the 'files', they are displayed in full, when ImageCache is not called.
It makes me wonder whether the alias is not available to file processing PHP functions, as it is not traversable, but Apache translates http requests for the alias.
Any ideas anyone? I could be way off!

fizk’s picture

Status: Active » Closed (fixed)

Please reopen if this is still an issue with ImageCache 6.x-2.0-rc1.