Michael Brown April 23 2009 01:06:02 AMPart 10 of Setting up a home test environment for Notes/Domino 8.5
Domino As A Service
When you install Domino under Windows, the option to start Domino as a Service is right there in the install routine. It's just a tickbox that you have to check. This means that if you restart the Windows server, Domino will close down (gracefully) when Windows closes down and then start up when Windows start up. No user has to log into the server OS. There is no user intervention at all. This is, of course, just what you want in a production environment.
I've been trying to get this to happen for Domino on a Linux server too, but sadly, IBM does not supply any way of easily making this happen for a Linux server. There's no "run as a service" script included and the documentation in the Domino Admin Help database gives no information on this subject either.
I searched IBM online support and found the IBM Technote How to automatically start Domino when starting the Linux OS. This technote contains a Linux shell script that are supposed to be able to use to run Domino as a service on Linux, but the script is full of errors.
The instructions say to "Copy the script below to a file named ..." to a script file called "Domino" on your Linux box. I don't think so. Not when the first comments look like this:
# DOM_HOME is the variable that tells the script where the Domino DataThere's a hard return after the word "Data", which causes the word to "resides" to appear on a new line, where it is no longer commented. The script interpreter tries to run "resides" as part of the script and, funnily enough, it errors out. That's only sloppy work; there's worse to follow. The script continues thus:
# DOM_HOME is the variable that tells the script where the Domino DataThe Domino executables are in /opt/lotus/bin are they? Maybe once upon a time they were, but they are not there in Domino 8. I don't think they were there in Domino 7 either. The correct location now is /opt/ibm/lotus/bin. Likewise, the server's data folder is now /local/notesdata and not /home/notesdata. (I don't understand how /home/notesdata could ever have been correct Wouldn't that imply a user called "notesdata", with this folder being that user's home folder?)
#DOM_PROG is the location of the Domino executables
Note that the Software Version information for this technote says "6.0, 6.5, 7.0, 8.0" and the Modified Date reads 2008-04-10. Whoever so validated this technote simply didn't do their job that day.
Update 24/04/2009: I initially forgot to mention that I did actually point out this error to IBM via the text submission box on the technote itself. I did this about week before posting on the subject here. Liam Harpur of IBM has also followed up the matter with the technote's owner (see comments below).
After correcting the paths, the script still refused to start Domino for me.
IBM Redbook - Lotus Domino 6 for Linux
At least this Redbook doesn't pretend to be relevant for any version of Domino higher than 6. But where is the version for Domino 8 or even for Domino 7 for that matter?
There's a script on page 130/131, but it looked pretty much the same as the one in the technote. However, Appendix B pointed me to the an FTP site containing more up-to-date versions of the scripts. This was more encouraging. The "Domino" script here at least had the Data folder set to /local/notesdata. (The executables folder is still incorrect, but the script is for Domino 6, remember.) There's also an extra script in the FTP folder called "startserver", which is intended to be run manually rather than as a script.
I played with both of these scripts. But after correcting the paths and commenting out the "PRELOAD lines" as the comments instructed, I could not get either of them to start Domino for me. I also issued the command chkconfig --add domino to register the script with the Linux startup process, as the Rebook instructed, but to no avail.
Daniel Nashed To the Rescue
Finally, a script that worked for me. And yes, it's from a third party. Many thanks to you, Daniel.
You'll need to email him to get the script by filling out the form on his web page. It's all automated though; you don't have to explain why you want it or ask his permission or anything. Just give him a name and and email address and the script will appear in your inbox immediately.
Just follow the instructions on his site for where to put the scripts. (There's also a readme file included with the email that you receive). Do the chkconfig --add domino command to register the server and then you should be set.
I've not been through Daniel's script in any detail yet, but from what I've seen, it's extremely thorough. For example, it tests for different server platforms - e.g. Suse vs Red Hat - and makes allowances accordingly. His documentation also takes into account these different platforms; for example, he points out that the chkconfig command is how you register a service on Red Hat-based distributions (CentOS, Fedora etc.) and that other types of distribution have different commands for this doing this.
IBM, why haven't you hired this guy yet?!!! At least, buy his script off him and include it with the Domino Linux installer.
- Comments