forked from nashcom/domino-startscript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrc_domino_readme.txt
2608 lines (1689 loc) · 88.9 KB
/
rc_domino_readme.txt
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
###########################################################################
# README - Start/Stop Script for Domino on Linux & AIX #
# Version 3.6.2 04.12.2021 #
# #
# (C) Copyright Daniel Nashed/NashCom 2005-2021 #
# Feedback domino_unix@nashcom.de #
# #
# Licensed under the Apache License, Version 2.0 (the "License"); #
# you may not use this file except in compliance with the License. #
# You may obtain a copy of the License at #
# #
# http://www.apache.org/licenses/LICENSE-2.0 #
# #
# Unless required by applicable law or agreed to in writing, software #
# distributed under the License is distributed on an "AS IS" BASIS, #
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.#
# See the License for the specific language governing permissions and #
# limitations under the License. #
###########################################################################
Note: See end of file for detailed Change History
Starting with V3.7.0 documentation switched to markdown format.
See new functionality and improved formatting in the docs directory or on-line.
Current location: https://github.com/IBM/domino-docker/tree/master/start_script/docs
------------
Introduction
------------
The Domino cross platform start/stop and diagnostic script has been written
to unify and simplify running Domino on Linux and UNIX. The start script
is designed to be "one-stop shopping" for all kind of operations done on the
Linux/UNIX prompt. The script can start and stop the server, provides an interactive
console and run NSD in different flavors.
It ensures that the environment is always setup correct and supports multiple partitions.
This script is designed to run with a dedicated user for each partition.
Out of the box the script is configured to use the "notes" user/group and the standard
directories for binaries (/opt/hcl/domino) and the data directory (/local/notesdata).
You should setup all settings in the script configuration file.
Note: Linux systemd (CentOS 7 RHEL 7/ SLES 12) requires root permissions for start/stop.
One way to accomplish this is to grant "sudo" permissions for the "rc_domino" script.
See the "Enable Startup with sudo" section for details.
--------------------
Simple Configuration
--------------------
If you configure your Domino environment with the standard path names
and users names, you can use this standard configuration and install script.
The default configuration is
User : notes
Group: notes
Binary Directory: /opt/hcl/domino
Data Directory : /local/notesdata
The standard configuration is highly recommended. This will make your life easier for installing the server.
You can change the data directory in the rc_domino_config file.
But the binary location and the notes:notes user and group should stay the same.
I would stay with the standard /local/notesdata. This could be a spearate mount-point.
And you could also use the following directory structure for the other directories.
/local/translog
/local/nif
/local/daos
Each of them could be a separate file-system/disk.
If you have the standard environemnt you just have to untar the start-script files and start the install_script.
It copies all the scripts and configuration and after installation you can use the "domino" command for everything.
The script is pre-configured and will work for older versions with init.d and also with the newer systemd.
- The first command untars the files
- The install_scripts writes all required files into the right locations with the right owner and permissions.
- The next command enables the service (works for init.d and systemd)
- And finally the server is started
tar -xvf start_script.tar
./install_script
domino service on
domino start
Other useful commands
---------------------
domino status
domino statusd
domino console
All details about configuration and commands are documented below.
--------------------------
Enable Startup with sudo
--------------------------
If you never looked into sudo, here is a simple configuration that allow you to run the start script with root permissions.
Basically this allows the notes user to run the /etc/init.d/rc_domino as root.
This avoids switching to the root user.
visudo
Add the following lines to the sudoer file
-- snip --
%notes ALL= NOPASSWD: /etc/init.d/rc_domino *, /usr/bin/domino *
-- snip --
This allows you to to run the start script in the following way from your notes user.
sudo /etc/init.d/rc_domino ..
--------------------------
Quick manual Configuration
--------------------------
1.) Copy Script Files
a.) Copy the script rc_domino_script into your Nash!Com start script directory /opt/nashcom/startscript
b.) Copy rc_domino into /etc/init.d
c.) For systemd copy the domino.service file to /etc/systemd/system
And ensure that rc_domino contains the right location for the service file
configured in the top section of your rc_domino file -> DOMINO_SYSTEMD_NAME=domino.service.
2.) Ensure the script files are executable by the notes user
Example:
chmod 755 /opt/nashcom/startscript/rc_domino_script
chmod 755 /etc/init.d/rc_domino
3.) Check Configuration
Ensure that your UNIX/Linux user name matches the one in the configuration part
of the Domino server. Default is "notes".
For systemd ensure the configuration of the domino.service file is matching and
specially if it contains the right user name and path to the rc_domino_script.
And also the right path for the "PIDFile"
(See "Special platform considerations --> systemd (CentOS 7 RHEL 7/ SLES 12 or higher)" for details).
Special Note for systemd
------------------------
For systemd the start/stop operations are executed using the systemd service "domino.service".
The rc_domino script itself can be still used as a central entry point for all operations.
This includes start/stop which will calls the systemd commands in the background.
When using systemd you can re-locate the rc_domino script into any other directory.
It but it is perfectly OK to keep it in the /etc/init.d directory for consistence.
In addition take care that systemd does not use .profile and .bash_profile!
Environment variables are specified in the systemd service in the following way:
Environment=LANG=de_DE.UTF-8
4.) Ensure to setup at least the following script variables per Domino partition.
- LOTUS
Domino binary directory
default: /opt/hcl/domino
- DOMINO_DATA_PATH
Domino data directory
default: /local/notesdata
Setup the script in the configuration file per Domino partition.
The default location is in /etc/sysconfig/rc_domino_config
Having the configuration separated from the script logic allows you to install new script
versions without changing the code in the script itself.
All configuration can be found in the rc_domino_config file.
It contains all configuration parameters either with a default value or commented out waiting to be enabled.
For a single partition the defaults in the start script should work.
This is the current recommended configuration. You should not modify the script itself.
For AIX you may have to create a directory for the config file.
---------------------------------------
Special platform considerations systemd
---------------------------------------
systemd (CentOS 7 RHEL 7/ SLES 12 or higher)
--------------------------------------------
etc/systemd/system/domino.service contains the configuration for the systemd service.
The following parameters should be reviewed and might need to be configured.
Once you have configured the service you can enable and disable it with systemctl.
systemctl enable domino.service
systemctl disable domino.service
To check the status use "systemctl status domino.service".
Description of parameters used in domino.service
User=notes
----------
This is the Linux user name that your partition runs with.
LimitNOFILE=65535
-----------------
With systemd the security limit configuration is not used anymore and the limits
are enforced by systemd. Starting with Domino 9 you should configure at least 65535 files.
Files means file handles and also TCP/IP sockets!
LimitNPROC=8000
---------------
With systemd the security limit configuration is not used anymore and the limits
are enforced by systemd. Even Domino uses pthreads you should ensure that you have
sufficient processes configured because the limit does not specify the number of
processes but the number of threads that the "notes" user is allowed to use!
TasksMax=8000
-------------
The version of systemd shipped in SLES 12 SP2 uses the PIDs cgroup controller.
This provides some per-service fork() bomb protection, leading to a safer system.
It controls the number of threads/processes a user can use.
To control the default TasksMax= setting for services and scopes running on the system,
use the system.conf setting DefaultTasksMax=.
This setting defaults to 512, which means services that are not explicitly configured otherwise
will only be able to create 512 processes or threads at maximum.
The domino.service sets this value for the service to 8000 explicitly.
But you could also change the system wide setting.
CentOS / RHEL versions also support TaskMax and the setting is required as well.
Note: If you are running an older version TaskMax might not be supported and you have to remove the line from the domino.service
#Environment=LANG=en_US.UTF-8
#Environment=LANG=de_DE.UTF-8
-----------------------------
You can specify environment variables in the systemd service file.
Depending on your configuration you might want to set the LANG variable.
But in normal cases it should be fine to set it in the profile.
PIDFile=/local/notesdata/domino.pid
-----------------------------------
This PIDFile has to match the configured DOMINO_PID_FILE ins the start script.
By default the name is "domino.pid" in your data directory.
You can change the location if you set the configuration variable "DOMINO_PID_FILE"
to override the default configuration if really needed.
ExecStart=/opt/nashcom/startscript/rc_domino_script start
ExecStop=/opt/nashcom/startscript/rc_domino_script stop
------------------------------------------------
Those two lines need to match the location of the main domino script including the start/stop command parameter.
TimeoutSec=100
--------------
Time-out value for starting the service
TimeoutStopSec=300
------------------
Time-out value for stopping the service
------------------------------------------------
Special platform considerations SLES11 and below
------------------------------------------------
The script (rc_domino) contains the name of the service. If you modify the name of
the script you need to change the "Provides:"-line in the main rc-script
Example: " # Provides: rc_domino"
On SLES you can use the insserv command or run-level editor in YaST
Example: insserv /etc/init.d/rc_domino
To verify that your service is correctly added to the rc-levels use the following command
find /etc/init.d/ -name "*domino*"
Sample Output:
/etc/init.d/rc3.d/K13rc_domino
/etc/init.d/rc3.d/S09rc_domino
/etc/init.d/rc5.d/K13rc_domino
/etc/init.d/rc5.d/S09rc_domino
/etc/init.d/rc_domino
------------------------------------
Special platform considerations AIX
------------------------------------
For AIX change first line of the scripts from "#!/bin/sh" to "#!/bin/ksh"
Domino on Linux use "sh". AIX uses "ksh".
The implementation of the shells differs in some ways on different platforms.
Make sure you change this line in rc_domino and rc_domino_script
On AIX you can use the mkitab to include rc_domino in the right run-level
Example: mkitab domino:2:once:"/etc/rc_domino start"
----------------------
Domino Docker Support
----------------------
This start script supports Domino on Docker.
But the configuration differs from classical way to run the start script.
The install_script and also the start script detects a Docker configuration.
And will work according the the requirements of a Docker environment.
For Domino on Docker a separate entry point is needed to start the server.
Images derived from CentOS 7.4 and higher are supported.
A Docker image doesn't have a full systemd implementation and start/stop cannot be implemented leveraging systemd.
Therefore the start script comes with a separate Docker entry point script "domino_docker_entrypoint.sh"
The script can be used in your Docker build script and you can include the start script into your own Docker images.
The entry point script takes care of start and stop of the server by invoking the rc_domino_start script directly.
You can still use rc_domino (or the new alias domino) to interact with your server once you started a shell inside the container.
In addition the script also supports remote setup of a Domino server.
If no names.nsf is located in the data directory it puts the server into listen mode for port 1352 for remote server setup.
You an add your own configuration script (/docker_prestart.sh) to change the way the server is configured.
The script is started before this standard operations.
If the file /docker_prestart.sh is present in the container and the server is not yet setup, the script is executed first.
The output log of the Domino server is still written to the notes.log files.
And the only output you see in from the entry point script are the start and stop operations.
If you want to interact with the logs or use the monitor command, you can use a shell inside the container.
Using a shell you can use all existing Start Script commands.
But you should stop the Domino server by stopping the container and not use the 'stop' command provided by the start script.
!! Important information !!
---------------------------
Docker has a very short default shutdown timeout!
When you stop your container Docker will send a SIGTERM to the entry point.
After waiting for 10 seconds Docker will send a SIGKILL signal to the entry point!!
This would cause an unclean Domino Server shutdown!
The entrypoint script is designed to catch the signals, but the server needs time to shutdown!
So you should stop your Domino Docker containers always specifying the --time parameter to increase the shutdown grace period.
Example: docker stop --time=60 domino
Will wait for 60 seconds until the container is killed.
Additonal Docker Start Script Configuration
-------------------------------------------
There is a special configuration option for start script parameters for Docker.
Because the rc_domino_config file is read-only, on Docker you can specify an additional config file
in your data directory which is usually configured to use a persistent volume which isn't part of the container.
This allows you to set new parameters or override parameters from the default config file.
-------------------------
Components of the Script
-------------------------
1.) rc_domino
This shell script has two main purposes
- Have a basic entry point per instance to include it in "rc" run-level
scripts for automatic startup of the Domino partition
You need one script per Domino partition or a symbolic link
with a unique name per Domino partition.
- Switch to the right user and call the rc_domino_script.
Notes:
- If the user does not change or you invoke it as root you will not
be prompted for a password. Else the shell prompts for the Notes
UNIX user password.
- The script contains the location of the rc_domino_script.
You have to specify the location in DOMINO_START_SCRIPT
(default is /opt/nashcom/startscript/rc_domino_script).
It is not recommended to change this default location because of systemd configuration.
2.) rc_domino_script
This shell script contains
- Implementation of the shell logic and helper functions.
- General configuration of the script.
- The configuration per Domino server specified by notes Linux/UNIX user.
You have to add more configurations depending on your Domino partition setup.
This is now optional and we recommend using the rc_domino_config_xxx files
3.) rc_domino_config / rc_domino_config_xxx
This file is located by default in /etc/sysconfig and should be used as an external
configuration (outside the script itself).
By default the script searches for a name in the format rc_domino_config_xxx (e.g. for the 'notes' user rc_domino_config_notes)
where xxx is the UNIX user name of the Domino server.
The default name of the script shipped is rc_domino_config but you can add also a specific configuration file for your partition.
The config files are used in the following order to allow flexible configurations:
- First the default config-file is loaded if exists (by default: /etc/sysconfig/rc_domino_config)
- In the next step the server specific config-file (by default: /etc/sysconfig/rc_domino_config_notes) is included.
- The server specific config file can add or overwrite configuration parameters.
This allows very flexible configuration. You can specify global parameters in the default config file and have specific config files per Domino partition.
So you can now use both config files in combination or just one of them.
Note: On AIX this directory is not standard but you can create it
or if really needed change the location the script.
Usually there is one configuration file per Domino partition and the last part of the name
determines the partition it is used for.
Examples:
rc_domino_config_notes, rc_domino_config_notes1, rc_domino_config_notes2, ...
If this file exists for a partition those parameters are used for server
start script configuration.
This way you can completely separate configuration and script logic.
You could give even write permissions to Domino admins to allow them to change
the start-up script configuration.
This file only needs to be readable in contrast to rc_domino and rc_domino_script
which need to be executable.
4.) systemd service file "domino.service
Starting with CentOS 7 RHEL 7 and SLES 12 systemd is used to start/stop services.
The domino.service file contains the configuration for the service.
The variables used (Linux user name and script location) have to match your configuration.
Configuration for the domino.service file is described in the previous section.
Each Domino partition needs a separate service file.
See configuration details in section "Domino Start Script systemd Support"
5.) domino_docker_entrypoint.sh Docker entry point script
This script can be used as the standard entry point for your Domino Docker container.
It takes care of your Domino Server start/stop operations.
See details in the Docker section.
---------------------
Commands & Parameters
---------------------
start
-----
Starts the Domino server and archives the last OS-level Domino output-file.
The output-file is renamed with a time-stamp and compressed using the
configured compression tool. Compressing the log file is invoked in background
to avoid slowing down the server start when compressing large log-files.
The start operation does clear the console input file and logs information
about the UNIX user environment and the security limits of the Unix user.
start live
----------
Same as "start" but displays the live console at restart.
See "monitor" command for details
stop
----
Stops the Domino server via server -q and waits a given grace period
(configurable via DOMINO_SHUTDOWN_TIMEOUT -- default 10 minutes).
After this time the Domino server is killed via NSD if it cannot be shutdown
and processes are still ruining after this time (see "kill" command below)
The Java controller will also be shutdown (if used).
This is specially important when invoking a shutdown on systems using systemd.
If you specify "stop live" the live console is shown during shutdown.
stop live
---------
Same as "stop" but displays the live console during shutdown.
The live console is automatically closed after shutdown of the server
See "monitor" command for details
quit
----
Stops the Domino server via server -q and waits a given grace period
(configurable via DOMINO_SHUTDOWN_TIMEOUT -- default 10 minutes).
After this time the Domino server is killed via NSD if it cannot be shutdown
and processes are still ruining after this time (see "kill" command below)
The Java controller remains active if configured.
restart
-------
Stops the Domino server and restarts it using "stop" and "start" command with
all implications and specially the time-out values for "stop".
restart live
------------
Same as "restart" but displays the live console for server/start stop
See "monitor" command for details
status
------
Checks if the Domino server is running and prints a message.
Return code of the script:
0 = server is not running
3 = server is running
statusd
-------
systemd has a very nice and detailed status command.
The default status check remains the status the existing status command.
This command is used to show the systemd status for the domino.service.
(the systemd command would be: systemctl status domino.service"
tika stop|kill
--------------
Shows the Tika server status and can be used to terminate the process.
Without additional parameters this command shows the status of the Tiker server process.
tika stop -> stops the Tika server process
tika kill -> kills the Tika server process
service
-------
Enables, Disables and shows the startup status of the service.
This command works on Linux only for rc-system and also systemd.
It is implemented in the "rc_domino" entry script.
service on -> enables the service
service off -> disables the service
service add -> deletes the service
service del -> deletes the service
service -> shows the startup status of the service
monitor
-------
Attaches to the output and the input files of a running Domino server and
allows a kind of live console from a telnet/ssh session using the input
and output files. ctrl+c or "stop" terminates the live console.
cmd
---
Issue console commands from the linux command line
Syntax: rc_domino cmd "command" [n log lines]
The command needs to be specified in double-quotes like shown above.
The optional parameter log lines can be used to print the last n lines of
log file (via tail) after waiting 5 seconds for the command to finish
Example: rc_domino cmd "show server" 200
issues a remote console command, waits 5 seconds and displays the last 200 lines
Note: Command parameters always need to be enclosed in quotes.
rc_domino passes the parameters with quotes to the main rc_domino_script.
But if you are using another script or other binary that calls rc_domino
(for example service), the parameters might not be enclosed in quotes any more.
The rc_domino script requires that you have the parameters in quotes.
Every blank will be interpreted as a delimiter for a new parameter.
version
-------
Shows version of start script
inivar
------
Displays notes.ini setting specified.
Example: rc_domino inivar server_restricted
ini
---
Edit the notes.ini of the server. "vi" is the default editor which can be changed via "EDIT_COMMAND" config setting.
Note: You should not edit the notes.ini while the server is running.
You might corrupt the notes.ini. For a running server use "set config .. " on the server console instead.
Also take care with umlauts and other special characters.
In this case it is always recommended to use "set config" on a Notes Client instead because this will ensure that
the characters are converted correctly.
listini
-------
Lists server's notes.ini. You can use this command to show the notes.ini or redirect the output to a grep command
config/cfg
----------
Edit the start script configuration.
By default if no specific server/user configuration is present the default config is edited
You can either specify config 'server' or config 'default' for the different configurations.
The two options are:
config server
config default
systemdcfg
----------
Edit the systemd config file.
log
---
Show or edit the log file. By default vi is used to edit the log file.
Optionally you can specify your own command e.g. log more or log head -100
lastlog
-------
Shows last log lines. by default 100 lines are displayed.
Optionally you can specify the number of log lines
systemlog
---------
Shows last system log lines for the service from systemd. by default 100 lines are displayed.
Optionally you can specify the number of log lines
archivelog
----------
Archives the current server text log-file. The file is copied, compressed and
the current log file is set to an empty file without losing the current
file-handles of the server process. There might be a very short log file
interruption between copying the file and setting it to an empty file.
The new log file contains a log-line showing the archived log file name.
You can add a string to the archive log name as an additional parameter.
This can be useful if you have enabled debugging and want to capture an
error situation. In that case run archivelog before and run it afterwards with a
string as an additional parameter which will be added to the file name of the zip.
clearlog
--------
Clears logs, custom logs and log backups as configured.
Optionally you can specify custom log cleanup days with two additional parameters.
First parameter defines log cut-off days for logs and second parameter defines cut-off days for backup logs.
Example: rc_domino clearlog 30 90
Clears logs with 30 days expiration and clears backup logs with 90 days expiration independent of the configured days.
In normal cases you would just use "clearlog" without parameters and specify expiration settings in the configuration.
"clearlog" uses the following logic:
- If DOMINO_CUSTOM_LOG_CLEAR_SCRIPT is configured only the custom clear script is used else the following logic applies.
- If DOMINO_LOG_CLEAR_DAYS is set the following files will be removed if they meet the expiration times specified:
- If $DOMINO_LOG_PATH is set expired files are removed from this directory and sub-directories.
Else all expired files from data_directory/IBM_TECHNICAL_SUPPORT and sub-directories are removed.
- If DOMINO_LOG_BACKUP_CLEAR_DAYS is set the following files will be removed if they meet the expiration times specified:
If $DOMINO_LOG_BACKUP_DIR is set the following expired files are removed from this directory
$DOMINO_USER_*.log.gz
(Example: notes_*.log.gz)
Else the same file pattern is used to remove files from the data-directory
- If DOMINO_CUSTOM_LOG_CLEAR_DAYS is set and also DOMINO_CUSTOM_LOG_CLEAR_PATH is set all expired files from
this directory and sub-directories are removed that meet the specified expiration days
nsd
---
Generates a full NSD including call-stacks and memcheck.
You can pass additional parameters to NSD.
nsdnomem
--------
Generates a NSD without memcheck (nsd -nomemcheck).
info
----
Generates a sysinfo style NSD (nsd -info).
kill
----
Terminates the Domino server (nsd -kill)
resources
---------
Shows the resources that the server uses.
This includes processes, shared memory, MQs, semaphores.
The resources are checked on OS level and list the same information
that is used by the "cleanup" command below.
The command is useful for a running server but also for a crashed server
to check which resources might not have been cleaned up by fault recovery.
cleanup
-------
Remove hanging resources after a server crash
(processes, shared memory, semaphores, message queues)
In contrast to the NSD -kill option this routine removes ALL resources.
This includes all message queues, shared memory, semaphores allocated by
the UNIX user used by the Domino server instance.
And also removes all processes started from the server binary directory
(e.g. /opt/hcl/domino).
NSD currently does only remove registered resources in the following files:
pid.nbf, mq.nbf, sem.nbf, shm.nbf
So this command is mainly useful if NSD cannot remove all resources due to
corruptions or add-on programs or any other odd situation.
It prevents you from having to manually remove resources and processes in
such a corrupt state.
Note: Resources allocated by add-on applications using native OS-level
operations are not registered.
memdump
-------
Generate a memory dump from the currently running server.
hang
----
Generate 3 NSDs collecting the call-stacks (nsd -stacks) and one additional full NSD.
This option is needed collecting troubleshooting data for server hang analysis.
stacks
------
Generate one NSD with call-stacks only (nsd -stacks)
compact
-------
Runs compact when server is shutdown (if the server is started an error message is displayed, you have to shutdown the server first)
Needs DOMINO_COMPACT_OPTIONS to be configured and is mainly intended for system databases.
restartcompact
--------------
Terminates the server, runs compact and restarts the server.
Needs DOMINO_COMPACT_OPTIONS to be configured and is mainly intended for system databases.
fixup
-----
Runs fixup when server is shutdown (if the server is started an error message is displayed, you have to shutdown the server first)
needs DOMINO_FIXUP_OPTIONS to be configured and is mainly intended for system databases.
restartfixup
------------
Terminates the server, runs fixup and restarts the server.
needs DOMINO_FIXUP_OPTIONS to be configured and is mainly intended for system databases.
compactnextstart on|off|status
------------------------------
Allows you to configure one time compacting databases at next startup.
This functionality controls a text file 'domino_nextstartcompact' in your data directory.
If this file is present, the compact operations specified via
DOMINO_COMPACT_TASK, DOMINO_COMPACT_OPTIONS, DOMINO_LOG_COMPACT_OPTIONS are executed at next start.
The 'domino_nextstartcompact' will be deleted at next startup.
This is for example to be intended to be used after a planned OS reboot or OS patch.
And it avoids separate steps executed by the OS level admin.
compactnextstart on --> enables the compact at next startup
compactnextstart off --> disables the compact at next startup
Specifying no or any other option will show the current settings.
The status file used by default is domino_nextstartcompact in data directory.
If this file is present the compact operations will run once and remove the file.
resetstlogs
-----------
Reset Sametime Community server logs/diags as used in the ststart script
------------------------
Configuration Parameters
------------------------
Variables can be set in the rc_domino_script per user (configuration settings)
or in the profile of the user.
Once the configuration is specified you need to set DOMINO_CONFIGURED="yes"
DOMINO_USER
-----------
(Required)
User-variable automatically set to the OS level user (indirect configuration)
LOTUS
-----
(Required)
Domino installation directory (usual /opt/hcl/domino)
This is the main variable which needs to be set for binaries
Default: /opt/hcl/domino
DOMINO_DATA_PATH
----------------
(Required)
Data-Directory
Default: /local/notesdata
DOMINO_CONFIGURED
-----------------
(Required)
Configuration variable. Needs to be set to "yes" per user to confirm
that the environment for this user is setup correctly
DOMINO_LANG
-----------
(Optional)
Language setting used to determine local settings
(e.g. decimal point and comma)
Examples: DOMINO_LANG=en_US.UTF-8
Default: not set --> uses the setting of the UNIX/Linux user
DOMINO_ENV_FILE
---------------
(Optional)
Environment file, which is particular useful for systemd environments, where the profile cannot be used to set variables, because systemd starts the process
You can source in the file into your profile for processes starting from a shell and have it included into the server running under systemd.
systemd invokes rc_domino_script which sets the parameters if the configured file exists and can be read.
DOMINO_UMASK
------------
(Optional)
umask used when creating new files and folders.
Usually this is set in the profile of the user but can be also set here for flexibility
Examples: DOMINO_UMASK=0077
Default: not set --> Uses the setting of the UNIX/Linux user
DOMINO_SHUTDOWN_TIMEOUT
-----------------------
(Optional)
Grace period in seconds (default: 600) to allow to wait until the Domino
server should shutdown. After this time nsd -kill is used to terminate
the server.
DOMINO_LOG_DIR
--------------
(Optional)
Output log file directory for domino log files.
Default: DOMINO_DATA_PATH
DOMINO_OUTPUT_LOG
-----------------
(Optional)
Output log file used to log Domino output into a OS-level log file
(used for troubleshooting and the "monitor" option).
Default: "username".log in data-directory
DOMINO_INPUT_FILE
-----------------
(Optional)
Input file for controlling the Domino server (used for "monitor" option)
Default: "username".input in data-directory
DOMINO_LOG_BACKUP_DIR
---------------------
(Optional)
Output log file backup directory for domino log files for archiving log files.
Default: DOMINO_DATA_PATH
DOMINO_ARCHIVE_LOGS_SHUTDOWN
----------------------------
(Optional)
Archive logs after Domino server is shutdown.
This operation runs after the server is shutdown and before a DOMINO_POST_SHUTDOWN_SCRIPT is executed.
Specify "yes" to enable this option.
The option could be helpful specially when the Domino output files are written to a tmpfs.
In combination with setting a different location for the DOMINO_LOG_BACKUP_DIR those files could
be saved to a normal disk while at run-time the files are still written to a normal disk.
DOMINO_USE_JAVA_CONTROLLER
--------------------------
(Optional)
Use the Java Controller to manage the Domino server.
Specify "yes" to enable this option.
When using the Java Server Controller the "monitor" command cannot be used because the
Domino Java Server Controller does handle all the console input/output and writes to separate files.