Paul,
Over the last few days, I've looked into the cron "problem" that I raised the other day and just to be sure, I've just reformatted and installed the whole server+Koha again, using 3.6.7's INSTALL.ubuntu, Tomas' Wiki page and my own notes.
I created the user koha by:
$ sudo adduser koha
but did not use either of the following:
$ sudo adduser koha sudo [to give sudo rights]
$ sudo adduser koha adm [to give full admin rights]
This gives rise to user=koha not being able to use crontab -e, as can be seen:
paul@server2:/$ su koha
Password:
koha@server2:/$ crontab -e
crontabs/koha/: fdopen: Permission deniedkoha@server2:/$ sudo crontab -e
[sudo] password for koha:
koha is not in the sudoers file. This incident will be reported.
koha@server2:/$
However, using a normal sudo account for crontab -e, use vi, add:
KOHA_CONF=/etc/koha/koha-conf.xml
KOHAPATH=/usr/share/koha
PERL5LIB=$KOHAPATH/lib
* * * * * koha $KOHAPATH/bin/migration_tools/rebuild_zebra.pl -a -b -z 2>&1 > /dev/null
makes a fully functional cron for incrementing Zebra, albeit in /var/spool/cron/crontab/ with root:root ownership. All that remains to be done is to rename the koha file in /etc/cron.d to koha.old (or plain remove it.) [N.B. the job is quasi-instantaneous, so running every minute is imperceptible as overhead.]
ALSO, I've had to relook at how to do a complete Zebra re-index, given the permissions to user=koha. The following is fully functional:
$ su koha
$ cd usr/share/koha
$ KOHA_CONF=/etc/koha/koha-conf.xml PERL5LIB=/usr/share/koha/lib ./bin/migration_tools/rebuild_zebra.pl -a -r -v
$ KOHA_CONF=/etc/koha/koha-conf.xml PERL5LIB=/usr/share/koha/lib ./bin/migration_tools/rebuild_zebra.pl -b -r -v -x
[N.B. This differs from the Wiki Appendix C., which relies on user=koha having sudo rights.]
All of this could possibly be avoided by giving user=koha sudo rights [$ sudo adduser koha sudo], but I am for various reasons loath to do so. The solution outlined above works, and I have not yet found a specific user=koha task that fails.