Domino on Linux/Unix, Troubleshooting, Best Practices, Tips and more ...

    Domino Start Script V3.2.0

    Daniel Nashed  4 November 2018 08:38:18

    There wasn't a new release of my Linux/Unix Start Script for a year.
    I still have many download requests but there is not much feedback or feature requests.

    Most of the new functionality added is coming from my own requirements (for example to simplify operations) Or direct customer requests.
    I am always trying to understand the underlying requirement and add it in a flexible way, that many admins can benefit from it.

    The new version I am working on simplifies configuration with systemd. You don't have to change the rc_domino file any more.
    And it comes with a simple installation script that will copy the files for you and sets the right permissions.

    Sadly systemd does not allow to use variables in the way I would need it, to read configuration from a config file.
    So the install script will only work for default configurations where you use the notes user and group with a single partition.
    I wanted to avoid a complex configuration script that replaces variables in the start script files.

    Beside that I also added a couple of commands that make your life easier. You can now list or edit all files involved including the systemd service file.

    And you can also show the log of the server. That's one command that was missing for me.
    Before I already added lastlog where you can show the last n log lines and redirect that for example to a grep command.
    Now you can do whatever you like with the log by specifying an additional parameter behind log (without a parameter vi is used).

    And last but not least I added another way to schedule compact operations.
    You can now configure a one time compact for example after a maintenance boot.

    See detailed feature list below for more information.
    If you have other ideas and requirements that should be in the standard, let me know.

    I am currently testing the new version and will update the start script page soon.


    -- Daniel


    V3.2.0

    New Features
    ------------

    New command 'log' -- displays the start script output log.
    This command can be used with additional options like specifying the command to open the log (e.g. 'log more').
    See log command description for details.

    New command 'systemdcfg' to edit the systemd configuration file

    New command 'compactnextstart' which allows you to configure a one time compact at next startup.
    For example after an OS patch day. The new command allows you to enable/disable/display the settings.
    Check the command documentation for details.

    New config variables DOMINO_DOMLOG_DB_DAYS, DOMINO_DOMLOG_DB_BACKUP_DIR which can move domlog.nsf to a backup directory.
    This works like the log.nsf backup/rename introduced earlier.

    New config variable DOMINO_UMASK.
    And also allow to set the umask when starting the server via DOMINO_UMASK.

    Show the umask used in the startup log of the server (along with environment and ulimits etc).

    Separate, simple script 'install_script' that will allow you to install the start script for default configurations.


    Changes
    -------

    Start script is now prepared for systemd without changing rc_domino script (adding the service name).

    Enable the configuration for systemd in the rc_domino script by default and check if systemd is used on the platform.
    This allows to install it on servers with systemd or init.d without changing the rc_domino script.

    Changing deployment from zip to tar format. So you can unpack the files directly on the target machine.
    This also means you can run the install_script without changing the permissions.

    Changed the default location for the Domino PID file for systemd from /local/notesdata/domino.pid to /tmp/domino.pid.
    This allows you to change the data directory location without changing the pid file name in domino.service and config.
    But this means for multiple partitions you have to change the name for each of the services.

    I tried to dynamically read parameters from the config file in domino.service.
    There is an EnvironmentFile= statement in systemd services to read configuration files.
    But using variables does only work for parameters passed to a an ExecStart/ExecStop command but not for the name of
    those scripts invoked. Also it is not directly sourcing the parameters but reading them directly.
    So there seems to be no way to read the config of domino.service from the config file.
    And I had to "hardcode" the filenames.
    Comments

    1Jan Böjeryd  04.11.2018 16:47:32  Domino Start Script V3.2.0

    Daniel, I was struck by guilt when I read your post. I really appreciate what you doing for the Domino community and I have learnt a great deal from following your blog. And your script, which I requested some weeks ago, came to my rescue since I'm in no way a Linux guru. So, don't think that we who follow you are unthankful in any way. At least I'm not.

    So thank you Daniel for all your effort.

    // Jan

    2Friedhelm Klein  04.11.2018 18:44:02  Domino Start Script V3.2.0

    Hi Daniel,

    thanks for the new version. As I read you added a simple install script, and I want to suggest an improvement that I practice since I am using systemd based CentOS 7:

    When you enabled your script for systemd, the location of rc_domino was no longer fixed to /etc/init.d/.

    So I now always put rc_domino to /usr/sbin (which is a quite good choice as it is in the default search sequence), I also use to rename it to simple 'domino', without the rc_prefix.

    That makes it very easy to use, just type domino start or domino stop or domino live in your shell, no /etc/init.d/rc_ prefix required.

    Saved me some hours of valuable life time :)

    Best Regards

    Friedhelm

    3Daniel Nashed  05.11.2018 23:14:48  Domino Start Script V3.2.0

    @Friedhelm,

    I sent you a preview of the new version with some comments.

    The install script creates a link called "domino". I am staying with the default location /etc/init.d/rc_domino even it isn't needed any more.

    It has been like this since ever. And I don't want to completely change it. But the link will do for now.

    And you are free to rename it and put it in any location.

    The install script generates a link /usr/bin/domino ;-)

    I have also a description how to configure sudo.

    And I am looking for feedback how to make it even easier.

    -- Daniel

    4Friedhelm Klein  11.11.2018 9:32:10  Domino Start Script V3.2.0

    Thank you, I've now discovered your mail it in my junk folder. (I really *beep* *beep* Outlook) Adding a link is fine.

    5Friedhelm Klein  11.11.2018 9:45:23  Domino Start Script V3.2.0

    PS: Moving to tar format wasn't really necessary. With Domino 10 IBM changed the Traveler setup, it now requires unzip or it will fail to unzip the JVM runtime during install. So I now anyway install unzip on all my linux installations by default. Took me a few moments to detect why traveler setup didn't work any more with Version 10. Domino 10 also requires bc and perl, which are not part of a CentOS minimum install. So the first command I run on Centos is "yum install -y bc perl unzip". Just for those who wondered what packages are required for an absolute minimum install.

    Archives


    • [IBM Lotus Domino]
    • [Domino on Linux]
    • [Nash!Com]
    • [Daniel Nashed]