I'm confused I don't know what's causing the above error message, which seems wrong anyway (how can "/" be a symlink!). Code: 06.08.2015-17:06 - DEBUG - There is already an instance of server.php running. Exiting. 06.08.2015-17:06 - DEBUG - Set Lock: /usr/local/ispconfig/server/temp/.ispconfig_lock 06.08.2015-17:06 - DEBUG - Found 5 changes, starting update process. 06.08.2015-17:06 - DEBUG - Calling function 'user_update' from plugin 'mail_plugin' raised by event 'mail_user_update'. 06.08.2015-17:06 - WARNING - Action aborted, file is a symlink: / 06.08.2015-17:06 - WARNING - Action aborted, file is a symlink: / 06.08.2015-17:06 - WARNING - Action aborted, file is a symlink: / 06.08.2015-17:06 - WARNING - Action aborted, file is a symlink: / 06.08.2015-17:06 - DEBUG - mkdir failed: //var 06.08.2015-17:06 - DEBUG - chmod failed: //var : 448 06.08.2015-17:06 - DEBUG - mkdir failed: //var/vmail 06.08.2015-17:06 - DEBUG - chmod failed: //var/vmail : 448 06.08.2015-17:06 - DEBUG - mkdir failed: //var/vmail/******.co.uk 06.08.2015-17:06 - DEBUG - chmod failed: //var/vmail/******.co.uk : 448 06.08.2015-17:06 - DEBUG - Created Directory: /var/vmail/******.co.uk The last log line is misleading since it didn't actually create that dir; it already existed. But anyway that's not my question which is, how can I trace what's causing these "file is a symlink: /" messages? Is it maybe associated with a later log line? Code: 06.08.2015-17:06 - ERROR - WARNING: Could not open file /etc/passwd (e.g. it could not find the home dir for user vmail?) (I don't know why /etc/passwd could not be opened (root:root 0644) - maybe because it's not in phpi.ini open_basedir? (which I need to set to enable other non-ISPConfig scripts to work). (I just updated from 3.0.5.4p6 to 3.0.5.4p8)
You can set a open_basedir and other restrictions in the php.ini file for apache, cgi and fpm but not in the cli php.ini file.
So is the message (and the e-mails I get) "Action aborted, file is a symlink: /" misleading? Wouldn't it better to check whether open_basedir has been set and issue a 'proper' warning?
That's possible. Restricting PHP functions in the shell script may lead to misleading error messages. The open_basedr for websites is set by ispconfig, setting it globally makes not much sense as this value is wrong for each website anyway.
True, but my server doesn't just run websites ;-) It also runs PHP CLI-only scripts which feed data to server software outside of ISPConfig's realm. I suppose I can specify a different php.ini on the commandline to those scripts. I do think it would be helpful for ISPC to provide a better error message if it detects that open_basedir has been set for CLI, as otherwise you can waste a long time looking for the cause of a spurious error message. Thanks. (p.s. is it in the manual that you can't set open_basedir in php.ini? I couldn't see it there)