Issues with installing EPrints on RHEL / CentOS / Rocky 10
No other known issues beyond those below if running at least EPrints 3.4.6.
mod_perl cannot handle dir_perms parameter
By default EPrints is configures its dir_perms parameter to 02775
in perl_lib/EPrints/SystemSettings.pm and lib/syscfg.d/core.pl. This is used when creating a new directory with EPrints::System::mkdir, which call CORE::mkdir. Previously this core Perl function has ignored the mask for the setuid/setgid/sticky bit so it did not matter^ if dir_perms was 02775
or 0775
but the version of mod_perl used on RHEL-based Linux 10 now gets confused by this and will fail to create directory. To fix this you will need to modify lib/syscfg.d/core.pl and set $c->{dir_perms}
as follows:
$c->{dir_perms} = '0775';
In addition, to make sure that the setgid bit gets set the same as it would before, it is advised you make sure all the sub-directories in your archive have the setgid bit set:
find EPRINTS_PATH/archives/ARCHIVE_ID -type d -exec chmod g+s {} \;
Technically, it should not be necessary to do this to all directories, it might be sufficient to do this only to the html and documents directories, as well as their sub-directories but there should not be any problem updating all the archive's directories.
^This is why EPrints::System::mkdir would subsequently called CORE::chmod to update setuid/setgid/sticky bits on the newly created directories.