Priority: Normal
Current State: Closed
Released In: 1.1.0
Target Release: minor
Applies To: Engine
Component: Configure
Branches:
Noticed that the configure checkers for
PubDir, etc. were not really working. Main issue is in the routine
Checker::checkTreePerms
- Logic to exclude svn files was backwards - excluding everything except for svn files.
- The "$filter" parameter was probably backwards. Changed to exclude files matching the filter.
- Symbolic links were reported as missing files
- Doesn't check for "execute" bit on directories which blocks reading of the directory contents
- Recursive call to checkTreePerms is missing the $this, shifting the parameters
- "D" file handle was not reusable and prematurely closed when called recursively.
This exposed some other issues in the Checkers themselves.
- Checkers that check for an indirect filename cfg{DataDir}j/blah - didn't expand the cfg{DataDir} prior to check.
- PubDir checker didn't exclude rcs ,v files from the write check,
- WorkingDir check needs to exclude the configure/backup directory which contains readonly files.
--
GeorgeClark - 28 May 2010
A fresh installation now provides an error that
data/.htpasswd
is missing. That's because no users are registered yet.
Options
- ship an empty
.htpasswd
(don't forget to update the docs (where are they?) on how to roll an upgrade release tgz?)
- make
checkTreePerms()
return something more complex than just a warning string
- make
checkTreePerms()
take a parameter that might inhibit the "file missing" message being reported
--
PaulHarvey - 28 May 2010
I think instead, I should just check the file directly. No need to run the recursive
checkTreePerms()
just to check a single file.
- If file is missing, include a warning that it is not found, and will be created once a user registers
- If file is not writable, then it's an error.
--
GeorgeClark - 29 May 2010
Maybe we could close
Item6065 when this is done.
I have a problem - on a 10k topic site, configure takes 20+ seconds (depending on server traffic) to load. Subsequent visits to configure takes approx. 5-7 seconds, I suppose the FS is cached then.
Probably, the check should be an interactive button that you need to click - for pub and data anyway.
--
PaulHarvey - 07 Jun 2010
I've added an Expert option - {PathCheckLimit} and updated the
PubDir and
DataDir checkers to stop checking if the limit is exceeded. This should resolve the performance issues checking the Pub and Data directories. But still will detect issues on new installations. For now the limit is set to 4200. This should handle the default installation.
--
GeorgeClark - 12 Jun 2010
One more issue, the path checker doesn't detect that directories have incorrect group permissions. It misses the condition caused by suexec umask controls that override the {RCS}{dirPermission} setting - see
Tasks/Item709. Added a "d" option to Checker::checkTreePerms that will validate directories against the RCS setting. Note that due to inconsistencies in Manifest defaults vs. {RCS}{filePermission}, checking file permissions results in 100's of errors. Deferring this for a future discussion.
--
GeorgeClark - 13 Jun 2010
See also
ReviewFileSystemPermissionsAndCheckFix for discussion of future updates.
--
GeorgeClark - 14 Jun 2010
It was pointed out that on Windows, directories are mode 777. For now, disable directory permission checking on the Windows platform. Also added the code (commented out for now) to check file permission consistency.
--
GeorgeClark - 15 Jun 2010