CGI, anydbm.open() and linux file permissions

Derek Basch dbasch at yahoo.com
Tue Jan 11 18:16:53 EST 2005


Hello,

I have a CGI script which uses anydb.open() to create a DBM. However I get this
traceback:

 /usr/lib/python2.3/bsddb/__init__.py in
hashopen(file='/var/www/bp/predictor/tools.dbm', flag='c', mode=438,
pgsize=None, ffactor=None, nelem=None, cachesize=None, lorder=None, hflags=0)
  190     if ffactor is not None:   d.set_h_ffactor(ffactor)
  191     if nelem is not None:     d.set_h_nelem(nelem)
  192     d.open(file, db.DB_HASH, flags, mode)
  193     return _DBWithCursor(d)
  194 
d = <DB object>, d.open = <built-in method open of DB object>, file =
'/var/www/bp/predictor/tools.dbm', global db = <module '_bsddb' from
'/usr/lib/python2.3/lib-dynload/_bsddb.so'>, db.DB_HASH = 2, flags = 65, mode =
438

DBAccessError: (13, 'Permission denied')
      args = (13, 'Permission denied')

The permissions on the CGI script (/usr/lib/cgi-bin/evaluator.py) are:

-rwxr-xr-x   1 bpeters bpeters  2446 Jan 11 14:42 evaluator.py

and the permissions on the target DBM creation directory
(/var/www/bp/predictor/) are:

drwxr-xr-x  2 bpeters bpeters  4096 Jan 11 14:45 predictor

Can anyone tell me what I need to do to allow the CGI script to create the DBM
in the target directory? That is short of changing everything to root.

Thanks everyone,
Derek Basch




		
__________________________________ 
Do you Yahoo!? 
Meet the all-new My Yahoo! - Try it today! 
http://my.yahoo.com 
 




More information about the Python-list mailing list