UNIADDNODE
uniaddnode - Creates a new Calendar node or re-initializes an existing one.
SYNTAX
uniaddnode -n node-ID -w DmPsw [-p sysOpPsw] [-t timezone] [-a nodealias] [-r] [-y]
DESCRIPTION
This utility creates and initializes a new Calendar node. It can also be used to re-initialize an existing node.
uniaddnode can only be run if the Calendar Server is down.
OPTIONS
-a
nodealias
Specify an alias for the node. nodealias is a descriptive word (it cannot contain spaces).
-n
node-ID
Specify the node-ID.
-p
sysOpPsw
Provide the SYSOP password for the node. If the password is not provided on
the command line, prompting for it will occur.
-r
Re-initialize the node.
Note that all users and resources must be removed from the node before it can be re-initialized.
-t
timezone
Specify a time zone for the node. The default is the time zone set during
installation of the Calendar Server. Time zones can be obtained from Appendix
E, "Time Zone Table" in the Administrator's Guide, the unitzinfo utility, or
the /users/unison/misc/timezone.ini file.
-w
DmPsw
Provide the directory server password for unrestricted access (i.e. the value of
the "mgrdn" parameter in the [LDAP] section of the unison.ini file). If the
password is not specified on the command line, prompting for it will occur.
-y
Used with the -r option to auto-confirm the re-initialization.
-v
Print the current version number of uniaddnode.
-h
Print a usage message explaining how to run uniaddnode.
EXAMPLES
Create a node with node-ID "44", an alias of "admin", and the time zone of New York City for a Calendar Server:
% uniaddnode -n 44 -a admin -t EST5EDT -w DmPsw -p sysOpPsw
unidsndini: working, please wait ...
Creation of reserved users successful.
Creation of Administrators group successful.
uniaddnode: unidsndini done
uniaddnode: unidbi done
The following entry will now appear in the [<YOURNODEID>] section of the /users/unison/misc/unison.ini file.
[44]name = <internally-assigned value>version = A.02.50aliases = admintimezone = EST5EDT
/users/unison/misc/unison.iniThis is the Calendar Server configuration file. For each new node, a node entry is created in this file by the uniaddnode utility.
uniadmrights - A utility to manage the administration rights of users.
-ls] [[[-hday] [-pgrp] [-opgrp] ] | -all] [-n node-ID] [-host hostname] [-p sysOpPsw]
DESCRIPTION
This utility allows the SYSOP to grant certain administration rights to users as well as to revoke these rights. It can also be used to determine the rights held by each user. Note that an initial set of rights may be granted at user creation using the user.ini file.
The existing rights are granted on a per-node basis and apply to:
uniadmrights will list ALL rights that have been granted by the SYSOP. Note that the -ls option is mutually exclusive with the -add option, and with the -del option.
The Calendar Server must be up to run uniadmrights.
uniadmrights.
-h
uniadmrights.
"S=Hoopla/OU1=R\\/D".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they may need to be escaped (i.e. preceded by the escape character "\") to prevent the shell from interpreting them.
Some example specifications are: "S=Kilpi/G=Eeva", "S=B*/G=Nicole/O=Acme", "O=Acme/ID=1111/OU1=authors"
EXAMPLES
List all users with administration right(s) (where only one node exists so the node-ID need not be specified):
% uniadmrights
% uniadmrights -ls -hday -n 80
% uniadmrights -pgrp -host gravel
% uniadmrights -e "S=Martin/G=Don/OU1=r&d" -add -hday -n 80
% uniadmrights -default -add -pgrp -n 80Remove all rights from Joan Bean on remote host montreal (only one node exists on montreal, so node-ID is not specified):
% uniadmrights -e "S=Bean/G=Joan" -del -all -host montreal
uniarch - A utility to create a tar archive of the Calendar Server.
-d] [-y] [-t | -f filename]
DESCRIPTION
uniarch creates a backup of the Calendar Server. By default, the entire /users/unison directory is archived.
uniarch can only be run if the Calendar Server is down.
Warning
uniarch backs up the Calendar Server internal database. The directory server database should also be backed up.
OPTIONS
-d
Force a backup of the contents of /users/unison/db/nodes, the Calendar Server database.
-f
filename
Specify the name of the archive file. If this option is not used, prompting for the filename will occur.
-t
Force the tar default device to be used for the archive destination file.
-y
By default, uniarch asks for confirmation before proceeding with the creation of the archive. This option tells uniarch to automatically proceed, without prompting for confirmation. Default if there is no tty associated with the calling process.
-v
Print the current version number of uniarch.
-h
Print a usage message explaining how to run uniarch.
EXAMPLES
Archive the entire /users/unison directory:
% uniarch uniarch: working, please wait ... uniarch: input tar archive destination file name: jan07-99.bkup uniarch: archive "/users/unison" and redirect to "jan07-99.bkup"? (y/n) uniarch: archive completed
% uniarch -d -f jan07-99-db.bkup uniarch: working, please wait ... uniarch: archive "/users/unison/db/nodes" and redirect to "jan07-99-db.bkup"? (y/n) uniarch: archive completed
unib2lendian - A utility to convert a Calendar node database from a format for big-endian processors to a format for little-endian processors.
[-n node-ID ]
DESCRIPTION
unib2lendian is used when migrating a node database from a Calendar Server running on a big-endian machine to one running on a little-endian machine. (HP-UX, SunOS, AIX, and IRIX usually run on big-endian processors while UnixWare and Windows NT usually run on little-endian processors.)
This utility converts the *.dat files of the node database from a big-endian to a little-endian format. The conversion is executed on a COPY of the files, leaving the original database untouched. The *.dat files are the only ones that must be converted; the remaining files are built on the destination machine.
unil2bendian is the complementary utility which converts *.dat files from a little-endian format to a big-endian format.
unib2lendian can only be run if the Calendar Server is down.
OPTIONS
-n
node-ID
Specify the node. Required if more than one exists.
-v
Print the current version number of unib2lendian.
-h
Print a usage message explaining how to run unib2lendian.
EXAMPLES
In the following example, node 45 is being converted and moved from a Calendar Server running on a big-endian system to one running on a little-endian system.
Warning
Do not restart the Calendar Server on either of the machines until you are certain that all steps in this process have been completed. In particular, ensure that the node entries in the unison.ini file on each machine have been updated, and if a node network is in place, that the information about the network has been properly updated.
unib2lendian on the target node.
The converted copy of the node will be found in the
/users/unison/db/nodes/N#/perm_conv directory where N# is the "name" value (from unison.ini) of the target node. /users/unison/misc/unison.ini files:
a. Remove the node entry for this node in the
unison.ini file on the target machine. unison.ini file on the destination machine (the "name" value used in this example is "N1").
Copy all
*.dat files in the perm_conv directory to the \users\unison\db\nodes\N1\perm directory on the little-endian system.perm directory.
C> cd \users\unison\db\nodes\N1\perm
C> copy \users\unison\db\nodes\nempty\perm\unison.dbd
C> copy \users\unison\db\nodes\nempty\perm\vista.ctb
tmp directory for the node:
C> cd \users\unison\db\nodes\N
C> copy \users\unison\db\nodes\nempty\tmp\set.dat
C> copy \users\unison\db\nodes\nempty\tmp\set.key
C> copy \users\unison\db\nodes\nempty\tmp\unitmp.dbd
Warning
Failure to carry out this step may result in data loss and/or corruption of the database.
a. Export the information in the remotenode.dat file to the remotenode.ini file for EACH node in the node network. Thus, if the node network consists of nodes 30, 35, 40, 45 and 50, we would perform the following:
Remember that
unidbfix must be run on the machine on which the node resides. remotenode.ini file for each node in the network and change the host name associated with node 45. This file is found in the node's perm directory. remotenode.dat file with the information in the new remotenode.ini file.
Running
unidbfix in import mode also rebuilds the key files. Thus, the key files here will be rebuilt from the updated remotenode.dat file. /users/unison/misc/nodes.ini file on the hub Calendar Server to reflect the change in host name for this node.
EXIT STATUS
Exit values are:
0 Success
1 Failed to convert the database
2 Usage error
SEE ALSO
unidbfix, unistart, unistop, uninode
unicheck - A utility for verifying the Calendar Server file system.
-nowarn] [-nodb] [-c]
DESCRIPTION
unicheck verifies the Calendar Server file system. The utility first checks that the version of the Calendar Server is intended to run on the local operating system. If this is not the case, unicheck prompts the user to determine whether or not they wish to continue. If the version will run on the local operating system, unicheck then verifies:
Any discrepancies are reported. Unless an entire file or directory is missing, any problems found are fixed running uniclean.
unicheck should be run periodically to ensure that the file system is in good order.
unicheck can be run whether the Calendar Server is up or down.
OPTIONS
-nowarn
Do not print warning messages (error messages will still be printed).
-nodb
Do not check database files.
-c
Computes a system-independent checksum for each static file. If this option is used, output should be redirected to a file for future use.
-v
Print the current version number of unicheck.
-h
Print a usage message explaining how to run unicheck.
EXAMPLES
Run unicheck (for brevity, sections of the output have been replaced by [...]):
% unicheck unicheck: checking all directories unicheck: checking directory "/users/unison" unicheck: checking directory "/users/unison/tmp" [...] unicheck: checking files in directory "/users/unison/bin" unicheck: checking files in directory "/users/unison/misc" [...] unicheck: checking versions of files in directory "/users/unison/bin" unicheck: check completed
unicheck, suppressing any warning messages and computing a checksum for each file (for brevity, sections of the output have been replaced by [...]):
% unicheck -nowarn -c unicheck: checking all directories unicheck: checking directory "/users/unison" unicheck: checking directory "/users/unison/tmp" [...] unicheck: checking files in directory "/users/unison/bin" unicheck: checking files in directory "/users/unison/misc" unicheck: checking files in directory "/users/unison/man" [...] unicheck: checking versions of files in directory "/users/unison/bin" unicheck: computing checksums unicksum: checksum of the file "/users/unison/misc/timezone.ini" is 17289 unicksum: checksum of the file "/users/unison/bin/addme" is 33775 [...] unicheck: check completed
unicksum - Generates a checksum for a file.
DESCRIPTION
unicksum generates a checksum for a file that is used to determine whether or not differences exist between two instances of the same file.
unicksum will run whether the Calendar Server is up or down.
OPTIONS
-v
Print the version number of unicksum.
-h
Print a usage message explaining how to run unicksum.
EXAMPLES
Generate a checksum for the unitzinfo executable:
% unicksum unitzinfo unicksum: checksum of the file "unitzinfo" is 18187
uniclean - A utility to clean up the Calendar Server file system.
DESCRIPTION
uniclean is used to clean up the Calendar Server file system by removing some transient files and ensuring file/directory and owner/group permissions are properly set.
uniclean can be run when the Calendar Server is up or down.
OPTIONS
-v
Print the current version number of uniclean.
-h
Print a usage message explaining how to run uniclean.
EXIT STATUS
Exit values are:
0 Success
1 Failure
2 Usage error
3 User interrupt
unicheck
uniclr_ipc - A utility to clear IPC resources consumed by the Calendar Server.
-s] [-q]
DESCRIPTION
uniclr_ipc clears IPC (Inter-Process Communication) resources consumed by the Calendar Server. By default, all IPC resources are freed. The -s and -q options are available to selectively clear only semaphore or message-queue resources respectively.
uniclr_ipc can only be run if the Calendar Server is down.
OPTIONS
-s
Clear semaphore-related resources only.
-q
Clear message-queue related resources only.
-v
Print the version number of uniclr_ipc.
-h
Print a usage message explaining how to run uniclr_ipc.
EXAMPLES
In all of the following examples, the Calendar Server is down.
Clear all IPC resources:
% uniclr_ipc uniclr_ipc: working, please wait... uniclr_ipc: ipc resources cleared
% uniclr_ipc -s uniclr_ipc: working, please wait... uniclr_ipc: ipc semaphore-related resources cleared
% uniclr_ipc -q uniclr_ipc: working, please wait... uniclr_ipc: ipc message-queue related resources cleared
unicpinr - copy resource data from a file created by unicpoutr to a Calendar Server node.
-add ] [-f filename] [-start day month year] [-end day month year] [-host hostname] node-ID [-p sysOpPsw]
DESCRIPTION
Copies a file containing resource data (created with the unicpoutr utility) into a Calendar Server node. The utility can be used in conjunction with unicpoutr to move a resource from one node to another, or to add the calendar of one resource to that of another (see EXAMPLES).
By default, the resource specified in the file must already exist in the destination Calendar node. If this is not the case, the -add option is used to add it.
unicpinr can only be run if the Calendar Server is up.
It is important to understand how unicpinr handles the information in the file during the copy into the destination node.
These are the key-value pairs for the keys R, N, CA, S, G, ID, LOC, PHONE, EXT, FAX (see FORMAT OF THE RESOURCE NAME ARGUMENT below for details on these keys). Only key-value pairs with non-null values are output to the file by
unicpoutr so not all pairs may be present. The ID key-value pair is not output to the file.unicpinr uses these keys to uniquely identify an existing resource in the destination node.
Where the resource already exists in the destination node, these values will already be set and
unicpinr will NOT overwrite them with those in the input file.
Where a resource already exists in the destination node,
unicpinr will simply add the calendar information in the input file to the existing calendar .
OPTIONS
-add
Add the resource to the database before copying in the file. It is an error to specify this option if the resource already exists in the node. The resource is created under the baseDN.
-end
\day\month\year
Set the end dates of the events to be processed. By default, all events in the file will be created; this option and the -start option allow you to exclude certain events. Dates must be expressed in the form "day month year". Years must be specified using four digits. Some legal dates are "12 mar 1995", "15 october 1994", "25 12 1995" (for December 25, 1995). Variations such as "mar 12 1995" or "12 dec" are illegal and will produce an error message.
-f
filename
Specify the input file name. The file must have been created with the unicpoutr utility. By default, standard input is used.
-host
hostname
Specify the host on which the specified node can be found. The default is the local host.
-ls
List the file name followed by the name of the resource it contains for each specified file name. Files not created with the unicpoutr command are not listed. If no file names are specified, the files of the current directory (.) are examined.
-p
sysOpPsw
Provide the SYSOP password. If this option is not used, prompting for the password will occur.
-start
\day\ month\ year
Set the start date of the events to be processed. By default, all events in the file will be created; this option and the -end option allow you to exclude certain events. Dates must be expressed in the form "day month year". Years must be specified using four digits. Some legal dates are "12 mar 1995", "15 october 1994", "25 12 1995" (for December 25, 1995). Variations such as "mar 12 1995" or "12 dec" are illegal and will produce an error message.
-v
Print the current version number of unicpinr.
-h
Print a usage message explaining how to run unicpinr.
FORMATS
FORMAT OF THE RESOURCE NAME ARGUMENT
The resource name is a string of the form "key=value/key=value/...", where "key" is one of R, N, CA, S, G, PHONE, EXT or FAX listed below (the ID key may NOT be specified), and "value" is any string. Both "key" and "value" are case insensitive. The "value" string may be terminated by a wild card symbol (*). If a forward slash "/" is to be included in a string, it should be escaped with the character "\" to prevent it from being interpreted as a key-value pair delimiter - i.e. "R=betacam\/loaner/S=Khupfer".
| Key | Field |
|---|---|
| R | Resource name |
| N | Resource number |
| CA | Capacity |
| S | Contact's surname |
| G | Contact's given name |
| ID | Identifier |
| LOC | Location |
| PHONE | Phone number |
| EXT | Phone extension |
| FAX | Fax phone number |
EXAMPLES
MOVE A RESOURCE FROM ONE NODE TO ANOTHER
unicpinr is used in conjunction with unicpoutr and unires to move a resource from one node to another. In the following example, the resource "betacam" will be moved from node 30 to 35.
1. Verify that the resource to be moved exists in node 30:
% unires -ls "R=Betacam" 30
2. Copy out the resource data to a file: % unicpoutr "R=Betacam" -f betacam.dat 30
3. Delete the resource from the node. This is normal practice as you do not usually want the same resource to exist in two different nodes.
% unires -del "R=Betacam" 30
4. Add the resource to the destination node:
% unicpinr -f betacam.dat 35
ADD THE CALENDAR OF ONE RESOURCE TO THAT OF ANOTHER RESOURCE
unicpinr can be used in conjunction with unicpoutr to add the calendar of one resource to that of another resource. This example will add the calendar for "PineNook" to the calendar for "OakCranny" and at the same time change the capacity of "OakCranny" to 5.
1. Copy out the resource data for PineNook (from node 30) to a file:
% unicpoutr "R=PineNook" -f pinenook.dat 30
2. Edit the file and modify the resource identifier to match that for OakCranny
% vi pinenook.dat
3. Copy in the file to OakCranny in node 30. Since this resource exists, the password, and calendar -specific preferences are not overwritten.
% unicpinr -f pinenook.dat 30
The calendar information for PineNook has been added to the existing calendar information for OakCranny.
EXIT STATUS
Exit values are:
0 Success
1 Failure
2 Usage error
3 User interrupt
WARNINGS
Depending on the size of the calendar in the file, unicpinr may take some time to complete.
Limitations of this utility
The unicp family of utilities have the following limitations that must be considered.
Events
From the perspective of a moved user (or resource), each of the moved events in the new calendar is a personal event with enough data in the description to determine who created the event and who the attendees are. All links are broken but there is sufficient information in the description to allow the links to be rebuilt.
Note also that where the calendar of one user (or resource) is being added to that of another, double-booking may occur.
Deletion of a user (or resource)
When a user (or resource) is moved to a new node, that user (or resource) should be deleted from the old node (using uniuser -del (or unires -del)).
When a resource is deleted, all traces of that resource are removed. Thus, that resource is no longer an invitee to events.
When a user is deleted, all traces of that user are removed. Thus, that user is no longer an invitee to events created by other users. Furthermore, and most importantly, all events created by the user are deleted. As a consequence, any user in the old node who was invited to an event by the moved user, will no longer be able to view the event.
Moving several users (and/or resources) at a time
If several users (and/or resources) are to be moved, it is best to perform the move in three phases:
unicpoutu and/or unicpoutr).
This ensures that information on any links among the users (and/or resources) being moved is not lost (see "Deletion of a resource" above).
Directory Server Warning
It is important to understand the implications of the directory server configuration for Calendar utilities. In a supplier-consumer configuration, the scheduling of updates between the consumer and supplier may result in temporary differences between the two. This may mean that a Calendar utility is reading from a consumer directory server that has not yet been synchronized with its supplier.
SEE ALSO
unicpoutr,unicpr
unicpinu - copy the contents of a file of user data created by unicpoutu to a Calendar node.
add ] [-f filename] [-start day month year] [-end day month year] [-host hostname] node-ID [-p sysOpPsw]
DESCRIPTION
unicpinu copies a file containing user data (created by unicpoutu) into a Calendar node. The utility can be used in conjunction with unicpoutu to move a user from one node to another as well as to add the calendar of one user to that of another user (see EXAMPLES).
By default, the user specified in the file must already exist in the destination Calendar node. If this is not the case, they can be added using the -add option.
unicpinu can only be run if the Calendar Server is up.
It is important to understand how unicpinu handles the information in the input file during the copy into the destination node:
These are the key-value pairs for the keys S, G, I, and X, and the keys OU1, OU2, OU3, OU4, O, C, A and P respectively (see FORMAT OF THE name, AND address ARGUMENTS below for details on these keys). Only key-value pairs with non-null values are output to the file by
unicpoutu so not all pairs may be present.unicpinu uses the key-value pairs in the file to uniquely identify an existing user in the destination node.
Personal information includes employee number, phone number, extension, fax number, job title and office mailing address.
unicpinu will NOT overwrite them with those in the input file.
Where a user already exists in the destination node,
unicpinu will simply add the calendar information in the input file to the existing calendar .
Warning
Holidays are output by unicpoutu as meetings, and therefore input by unicpinu as meetings. Only the existing holidays in the destination node will appear as holidays in the user's calendar .
OPTIONS
-add
Add the user to the database and then copy in the user's calendar . It is an error to specify this option if the user already exists. Note that the user must already exist in the directory server (all of the X.400 key-value pairs specified in the input file must match), and must not already be a Calendar user.
-end
\ day\ month\ year
Set the end date for the events and tasks to be processed. By default, all events and tasks in the file will be created; this option and the -start option allow you to exclude certain events and tasks. Dates must be expressed in the form "day month year". Years must be expressed using four digits. Some legal dates are "12 mar 1995", "15 october 1994", "25 12 1995" (for December 25, 1995). Variations such as "mar 12 1995" or "12 dec" are illegal and will produce an error message.
-f
filename
Specify the input file name. The file must be created with the unicpoutu utility. If this option is not specified, standard input is used.
-host
hostname
Specify the host on which the specified node is found. The default is the local host.
-ls
[filename(s)]
Print the filename followed by the X.400 name and address of the user contained in the file, for each specified file name. Files not created by the unicpoutu command are not listed. If no file names are specified, the files in the current directory (.) are examined.
-p
sysOpPsw
Provide the SYSOP password. If this option is not used, prompting for the password will occur.
-start
\ day\ month\ year
Set the start date for the events and tasks to be processed. By default, all events and tasks in the file will be created; this option and the -end option allow you to exclude certain events and tasks. Dates must be expressed in the form "day month year". Years must be expressed using four digits. Some legal dates are "12 mar 1995", "15 october 1994", "25 12 1995" (for December 25, 1995). Variations such as "mar 12 1995" or "12 dec" are illegal and will produce an error message.
-v
Print the current version number of unicpinu.
-h
Print a usage message explaining how to run unicpinu.
FORMATS
FORMAT OF THE name AND address ARGUMENTS
Each of these arguments is a string of the form "key=value/key=value/...", where "key" is one of those listed below, and "value" is any string. Both "key" and "value" are case insensitive. The "value" string may be terminated by a wild card symbol (*). If a forward slash "/" is to be included in a string, it should be escaped with the character "\" to prevent it from being interpreted as a key-value pair delimiter - i.e. "S=Hoopla/OU1=R\/D".
EXAMPLES
MOVE A USER FROM ONE NODE TO ANOTHER
unicpinu is used in conjunction with unicpoutu and uniuser to move a user from one node to another. In this example the user "Sarah Herman" will be moved from node 20 to 44, and one of her organizational units changed from "Sales" to "R&D".
% uniuser -ls "S=Herman/G=S*" 20
S=Herman/G=Sarah/OU1=Dallas/OU2=Sales/ID=1234
% unicpoutu "G=Sara*/S=Herman" -f sherman.dat 20
% uniuser -del "G=Sara*/S=Herman" -n 20
% unicpinu -add -f sherman.dat 44
% uniuser -ls "S=Herman/G=S*" 44
. S=Herman/G=Sarah/OU1=Dallas/OU2=Sales/ID=1234
ADD THE CALENDAR OF ONE USER TO THAT OF ANOTHER USER
unicpinu can be used in conjunction with unicpoutu to add one user's calendar to that of another user. This example will add Sarah Herman's calendar to Yannick Olafsen's calendar .
EXIT STATUS
Exit values are:
0 Success
1 Failure
2 Usage error
3 User interrupt
WARNINGS
Depending on the size of the calendar in the file, unicpinu may take some time to complete.
Limitations of this utility
The unicp family of utilities have the following limitations that must be considered.
Events
From the perspective of a moved user (or resource), each of the moved events in the new calendar is a personal event with enough data in the description to determine who created the event and who the attendees are. All links are broken but there is sufficient information in the description to allow the links to be rebuilt.
Note also that where the calendar of one user (or resource) is being added to that of another, double-booking may occur.
Deletion of a user (or resource)
When a user (or resource) is moved to a new node, that user (or resource) should be deleted from the old node (using uniuser -del (or unires -del)).
When a resource is deleted, all traces of that resource are removed. Thus, that resource is no longer an invitee to events.
When a user is deleted, all traces of that user are removed. Thus, that user is no longer an invitee to events created by other users. Furthermore, and most importantly, all events created by the user are deleted. As a consequence, any user in the old node who was invited to an event by the moved user, will no longer be able to view the event.
Moving several users (and/or resources) at a time
If several users (and/or resources) are to be moved, it is best to perform the move in three phases:
unicpoutu and/or unicpoutr).
This ensures that information on any links among the users (and/or resources) being moved is not lost (see "Deletion of a resource" above).
Directory Server Warning
It is important to understand the implications of the directory server configuration for Calendar utilities. In a supplier-consumer configuration, the scheduling of updates between the consumer and supplier may result in temporary differences between the two. This may mean that a Calendar utility is reading from a consumer directory server that has not yet been synchronized with its supplier.
SEE ALSO
unicpoutu,unicpu
unicpoutr - copy resource data from a Calendar Server node into a file.
[-f filename] [-host hostname] [-start day month year] [-end day month year] [-holiday] node-ID [-p sysOpPsw ]
DESCRIPTION
unicpoutr copies a resource's data from a Calendar node to a file. It can be used in conjunction with the unicpinr utility to move a resource from one node to another as well as to copy the resource calendar from one resource to another.
unicpoutr can only be run if the Calendar Server is up.
The res argument must match a single resource or an error will be reported. See FORMAT OF THE res ARGUMENT below for details on how to specify this argument.
unicpoutr copies the following information to the file (see unicpr for more information concerning the format and content of the output file):
unicpoutr.
-h
unicpoutr.
| Key | Field |
|---|---|
| R | Resource name |
| N | Resource number |
| CA | Capacity |
| S | Contact's surname |
| G | Contact's given name |
| ID | Identifier |
| LOC | Location |
| PHONE | Phone number |
| EXT | Phone extension |
| FAX | Fax phone number |
EXAMPLES
To copy the resource data for the resource "Kitchen" from node 20 to the file kitchen.dat:
% unicpoutr "R=Kitchen" -f kitchen.dat 20
% unicpoutr "R=Kitchen" -f kitchen.dat -start 10 1 1998 20
unicpoutr may take some time to complete.
unicp family of utilities have the following limitations that must be considered.
Note also that where the calendar of one user (or resource) is being added to that of another, double-booking may occur.
uniuser -del (or unires -del)).When a resource is deleted, all traces of that resource are removed. Thus, that resource is no longer an invitee to events.
When a user is deleted, all traces of that user are removed. Thus, that user is no longer an invitee to events created by other users. Furthermore, and most importantly, all events created by the user are deleted. As a consequence, any user in the old node who was invited to an event by the moved user will no longer be able to view the event.
unicpoutu and/or unicpoutr).
unicpinr,unicpr
unicpoutu - copy user data from a Calendar Server node to a file.
[-f filename] [-host hostname] [-start day month year] [-end day month year] [-holiday] node-ID [-p sysOpPsw ]
DESCRIPTION
unicpoutu copies a user's data from a Calendar node to a file. It can be used in conjunction with the unicpinu utility to move a user from one node to another as well as to copy an calendar from one user to another.
unicpoutu can only be run if the Calendar Server is up.
The user argument must match a single user or an error will be reported. See FORMAT OF THE user ARGUMENT below for details on how to specify this argument.
unicpoutu copies the following information to the file (see unicpu for more information concerning the format and content of the output file):
unicpinu, only the existing holidays in the new node will appear as holidays in the user's calendar ; the holidays from the old node will be meetings.
-host
unicpoutu.
-h
unicpoutu.
"S=Hoopla/OU1=R\/D".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they should be escaped (i.e. preceded by the escape character "\") to prevent the shell from interpreting them.
EXAMPLES
To copy the user data for "Herman, Sarah" from node 20 to the file "sherman.dat":
% unicpoutu "S=Herman/G=Sa*" -f sherman.dat 20
unicpoutu "S=Herman/G=Sa*" -f sherman.dat -start 10 1 1998 20
unicpoutu may take some time to complete.
unicp family of utilities have the following limitations that must be considered.
uniuser -del (or unires -del)).
When a resource is deleted, all traces of that resource are removed. Thus, that resource is no longer an invitee to events.
When a user is deleted, all traces of that user are removed. Thus, that user is no longer an invitee to events created by other users. Furthermore, and most importantly, all events created by the user are deleted. As a consequence, any user in the old node who was invited to an event by the moved user will no longer be able to view the event.
unicpoutu and/or unicpoutr).
This ensures that information on any links among the users (and/or resources) being moved is not lost (see "Deletion of a resource" above).
Directory Server Warning
It is important to understand the implications of the directory server configuration for Calendar utilities. In a supplier-consumer configuration, the scheduling of updates between the consumer and supplier may result in temporary differences between the two. This may mean that a Calendar utility is reading from a consumer directory server that has not yet been synchronized with its supplier.
SEE ALSO
unicpinu,unicpu
unidb50to60conv - Convert a 5.0 Calendar node database to a 6.0 Calendar node database.
-n node-ID | -n all
DESCRIPTION
unidb50to60conv converts a 5.0 Calendar node database to a 6.0 Calendar node database. In general this utility should not be invoked directly (a conversion is done automatically during the upgrade to a newer Calendar Server). The last two digits of the "version" key in the [<YOURNODEID>] section of the unison.ini file indicate whether the Calendar database is 5.0 or 6.0.
Warning
Back up the Calendar Server before invoking unidb50to60conv as this utility overwrites the 5.0 database
The Calendar Server must be down to run unidb50to60conv.
OPTIONS
-n
node-ID | all
Perform the conversion only on the specified node (if node-ID is used) or on all nodes (if all is used).
-v
Print the version number of unidb50to60conv.
-h
Print a usage message explaining how to run unidb50to60conv.
EXAMPLES
Convert all Calendar Server node databases from 5.0 to 6.0:
% unidb50to60conv -n all
unidbbackup - A utility to create an archive of a Calendar Server node and related configuration information.
-d dst
DESCRIPTION
unidbbackup creates a backup of a Calendar Server node and its related configuration information. More specifically, it creates a backup of the /users/unison/misc directory and the /users/unison/db directory. As the information in these two directories is interrelated, it is important to ensure they are backed up at the same time.
unidbrestore is the complementary utility to unidbbackup. By default, these utilities perform a copy of the source to the destination. If behavior other than a straight copy is needed, an alternate backup/restore command can be specified using the "external_backup"/"external_restore" key in the [UTL] section of the unison.ini file. See FILES below for details on how to specify an alternate backup command.
Warning
The backup and restore commands are inverse operations so if alternate commands are used, it is of critical importance to ensure they do in fact perform the inverse operation of each other. The integrity of the database is at stake.
unidbbackup can be run when the Calendar Server is either up or down.
Warning
unidbbackup backs up the Calendar Server internal database. The directory server database should also be backed up.
OPTIONS
-d
dst
Specify the destination for the archive, where dst is a directory name.
-v
Print the current version number of unidbbackup.
-h
Print a usage message explaining how to run unidbbackup.
EXAMPLES
Back up the Calendar Server to the directory /backups/cserver/jan.7.99:
% unidbbackup -d /backups/cserver/jan.7.99
/users/unison/misc/unison.ini
The following keys in the [UTL] section of this file are of relevance to this utility:
lock_timeoutThis key sets the timeout, in seconds, for the lock operation on the database.
backup_timeoutThis key sets the timeout, in seconds, for the backup operation on the database.
external_backupThis key provides a way for an alternate backup utility to be invoked by
unidbbackup. unidbbackup uses the value of this key, along with the arguments supplied to unidbbackup on the command line, to construct (and subsequently invoke) the following command line:
value_of_external_backup [-f] -s src -d dst
where
-d dst
specifies the destination for the backup (unidbbackup constructs this from the dst argument specified by the user on the unidbbackup command line)
-s srcspecifies the source to be backed up (
unidbbackup constructs this argument based on the information it finds in the /users/unison/misc/unison.ini file)
-findicates that the source is a file (absence of this flag indicates the source is a directory)
unidbbackup iteratively invokes the generated command line until all of the required database files are backed up, locking and unlocking the database for each iteration.
The administrator must ensure that the generated command line is in fact a valid one for the alternate utility. It may be that an intermediate utility is required to take this command line, create one which is valid, and then invoke it. In this case, "external_backup" would be set to invoke the intermediate utility.
The accepted value for "external_backup" is any command line. There is no assigned default value for this key.
unidbrestore
unidbfix - A utility to check, repair, defragment, and maintain Calendar Server node databases.
-c [-pix] -n node-ID [-r] [-sfgn]
unidbfix -f [-pix] -n node-ID [-r] [-y] [-sfgn]
unidbfix -d [-pix] -n node-ID [-r] [-y] [-sfgn]
unidbfix -export [-pix] -n node-ID [-r]
unidbfix -import [-pix] -n node-ID [-r] [-y]
unidbfix -ck -n node-ID [-r] [-y]
unidbfix -k -n node-ID [-r] [-y]
unidbfix -i [-pix] -n node-ID [-r]
DESCRIPTION
unidbfix is run to check for and repair database corruptions, inconsistences, and/or to defragment and compress the database. It is also run as part of a regular database maintenance program.
Important!
Before invoking this utility with one of the -f, -d, or -import options it is highly
recommended that a backup of the database be made. Only the data (*.dat)
files need to be backed up as the key (*.key) files can be reconstructed from
the data files.
unidbfix carries out checks/repairs on the following parts of the database at the specified node:
unidbfix can be run in one of eight different modes as listed below. If a fix is made in any mode, it is reported. The scan phases for each mode are listed in the order in which they occur. See NOTES section for additional information on the Remote Nodes, Bins, and File Fragmentation scan phases.
unidbfix can only be run if the Calendar Server is down.
OPTIONS
-c
Run in check mode. All database corruptions and inconsistencies are reported, although no action is taken to correct them (fix mode is used to do this). If an error is detected, checking stops after the scan phase in which the errors were found. For instance, if an error is discovered during the File Sizes scan phase, unidbfix will terminate on completion of this scan phase. It will not proceed to the Nodes scan phase.
-ck
Run in check key mode. Checks only the key files of the database.
-d
Run in defragment mode. This mode frees space occupied by deleted records and then compresses the database. To ensure database consistency, the database is first checked for errors (see the list of scan phases for this mode), and only if no errors are detected will defragmentation proceed.
Warning
While it is possible to interrupt unidbfix during the defragmentation phase using a kill -9, this will cause irreversible damage.
-export
Run in export mode. Export mode writes remote node information from the database to the remotenode.ini file. Note that only the non-null fields for each remote node are written to the file. See the REMOTE NODES SCAN PHASE note for an example of how to use the -export mode.
-f
Run in fix mode. Fix and clean up the database. This fixes all errors detected in check mode. In some circumstances unidbfix may be forced to delete data (e.g. where corruption to the data is such that unidbfix is unable to repair it, or where orphan data cannot be safely re-integrated).
-i
Run in info mode. This mode outputs various database statistics to the dbfix.log file.
-import
Run in import mode. Import mode writes remote node information from the remotenode.ini file to the database. See the REMOTE NODES SCAN PHASE note for an example of how to use the -import mode.
-k
Run in fix key mode. Rebuilds only the key files of the database.
-n
node-ID
Specify the node to be checked/fixed/defragmented. Without this option, the node used is N1. To scan all the nodes on a computer use -n all.
-pix
Turn off the progress indicator. By default a progress indicator, for each utility called by unidbfix, is output to standard error.
-r
Overwrite the log file /users/unison/log/dbfix.log, rather than appending output to it.
-sfgn
Turn on foreign node checking and fixing. Use only if you have foreign nodes and items.
-y
Turn fix and defragmentation confirmation message off.
-v
Print the current version number of unidbfix.
-h
Print a usage message, and a short description of each option.
EXAMPLES
Check the consistency of node 35:
% unidbfix -c -n 35Fix node 12:
% unidbfix -f -n 12Defragment and compress node 10 and overwrite the log file:
% unidbfix -d -n 10 -rFILES
/users/unison/log/dbfix.log
The errors found and/or the fixes made are written to this file. Each error is listed as a DATABASE ERROR, while each repair is listed as a FIX. All database errors found by unidbfix, can be repaired by it. Totals of all errors found, fixes made, and records deleted during fixing, appear at the end of the file. Note that the total number of database errors and the total number of fixes need not be equal. Normally this file is not consulted.
/users/unison/log/unison.ini
This file can be consulted for a listing of all local nodes, with their corresponding directory names and node-IDs.
remotenode.ini
This file is used by unidbfix in import and export modes. It is created in a node's perm directory the first time unidbfix is run on the node and contains a listing of all the remote node records and their data fields. The information for each remote node is as follows:
[Node-ID] RN_NUMCONNECT: any number zero and above RN_ACCESSMETHOD: must be 2 RN_SERVICENAME: must be "unieng" RN_HOSTNAME: name of the remote hostNode-ID is the remote node identification number. It must be enclosed in square brackets and it must start a line. A field can have a null value. If any field has an invalid value,
unidbfix will return an error message, and will not make the change for the remote node with the error.
The following sample remotenode.ini file contains two remote nodes: the first has the node-ID 730 and the name "NewYork"; the second has the node-ID 631 and the name "LosAngeles".
[730]
RN_NUMCONNECT = 2
RN_ACCESSMETHOD = 2
RN_SERVICENAME = "unieng"
RN_HOSTNAME = "NewYork"
[631]
RN_NUMCONNECT = 2
RN_ACCESSMETHOD = 2
RN_SERVICENAME = "unieng"
RN_HOSTNAME = "LosAngeles"
unidbfix.lck
This is a lock file which prevents multiple instances of unidbfix from running on the same node at the same time. It is created in the perm directory of the node on which unidbfix is running. In the event that a kill -9 or a system crash prevents unidbfix from running to completion, this file will remain. It may be manually deleted.
1 Errors Found Errors were found (check mode).
2 Usage error 3 User interrupt 4 Aborted Another instance of
unidbfix was currently running on the node.5 Stopped Errors were found in the remote node records while in fix or check mode, or the
remotenode.ini file is missing. unidbfix needed more information to be able to continue checking or fixing.
unidbfix is interrupted during any of these modes, the key files may have been deleted. For this reason, it is highly recommended that unidbfix be run again after an interruption.
remotenode.ini must exist, and its contents must agree with the list of remote nodes contained in the database. When one of these conditions is not met, the -export and -import modes can be used to rectify the situation. In the explanations that follow, the node-ID used is "43".
remotenode.ini file does not exist for node 43. In this case, we can generate one from the remote node list contained in the database:
remotenode.ini file for node 43. In this case, the discrepancy can be rectified as follows. remotenode.ini file for node 43:
unidbfix in -import mode.
The modified file is used to update the database:
% unidbfix -import -n 43
unistart,unistop,unidbmkeys,unidbchk
unidbrestore - A utility to restore a Calendar Server node and configuration information from a backup created by unidbbackup.
-s src [-d dst]
DESCRIPTION
unidbrestore - restores the node and configuration information of a Calendar Server from a backup created by unidbbackup.
Warning
By default, the destination directory for the restore is /users/unison. This means that the restore will overwrite the existing files of the Calendar database. Thus, this utility should be used with extreme care to ensure the Calendar Server database is not inadvertently corrupted. A more careful approach would be to use the -d option to specify a different directory for the restore and then copy the individual files from the restored directory into the /users/unison directory.
unidbbackup is the complementary utility to unidbrestore. By default, these utilities perform a copy of the source to the destination. If behavior other than a straight copy is needed, an alternate backup/restore command can be specified using the "external_backup"/"external_restore" key in the [UTL] section of the unison.ini file. See FILES below for details on how to specify an alternate restore command.
Warning
The backup and restore commands are inverse operations so if alternate commands are used, it is of critical importance to ensure they do in fact perform the inverse operation of each other. The integrity of the database is at stake.
unidbrestore can only be run when the Calendar Server is down.
Warning
unidbrestore restores the Calendar Server internal database. The directory server database is untouched by unidbrestore.
OPTIONS
-d
dst
Specify the destination for the restore. By default this is the /users/unison directory.
-s
src
Specify the backup source, where src is a directory name.
-v
Print the current version number of unidbrestore.
-h
Print a usage message explaining how to run unidbrestore.
EXAMPLES
Restore the Calendar Server backup /backups/cserver/jan.7.99 to the directory /users/unison:
% unidbrestore -s /backups/cserver/jan.7.99
[UTL] section are of relevance to this utility:
lock_timeoutThis key sets the timeout, in seconds, for the lock operation on the database.
restore_timeoutThis key sets the timeout, in seconds, for the restore operation on the database.
external_restoreThis key provides a way for an alternate restore utility to be invoked by unidbrestore.
unidbrestore uses the value of this key, along with the arguments supplied to unidbrestore on the command line, to construct (and subsequently invoke) the following command line:
value_of_external_restore [-f] -s src -d dstwhere
-d dstspecifies the destination for the restore (
unidbrestore constructs this from the dst argument supplied on the unidbrestore command or if no argument was supplied, uses the default)
-s src
specifies the source to be restored (unidbrestore constructs this from the src argument supplied on the unidbrestore command line)
-f
indicates that the source is a file (absence of this flag indicates the source is a directory)
unidbrestore iteratively invokes the generated command line until all of the required database files are restored, locking and unlocking the database for each iteration.
It is up to the user to ensure that the generated command line is in fact a valid one for the alternate utility. It may be that an intermediate utility is required to take this command line, create one which is valid, and then invoke it. In this case, "external_restore" would be set to invoke the intermediate utility.
The accepted value for "external_restore" is any command line. There is no assigned default value for this key.
unidbbackup
unidsdiff - Finds and deletes differences between a Calendar node and a directory server.
[-d] [-noprompt] [-n node-ID] [-host hostname] [-p sysOpPsw] [-verbose]
DESCRIPTION
This utility will find all users and resources in a Calendar node without a match in the directory server and vice versa. By default, any discrepancies are simply reported. The -d option may be used to delete the discrepancies.
Calendar assigns each user and resource a unique identifier called an xItemId. unidsdiff first checks that each xItemId (for the specified node) in the directory server:
If
unidsdiff detects an xItemId which does not pass one of these checks, it will abort; directory server utilities must be used to correct the problem. Otherwise unidsdiff proceeds to verify that:
The Calendar Server must be up to run unidsdiff.
OPTIONS
-d
Delete the differences found. The user will be prompted to confirm each deletion. Without the -d option, unidsdiff simply lists the differences.
-host
hostname
Specify the host to connect to. Required if host is remote.
-n
node-ID
Specify a node. Required if more than one exists.
-noprompt
Disable prompting when used with the -d option.
-p
sysOpPsw
Provide the SYSOP password.
-verbose
Display all Distinguished Names in the directory associated with the node.
-v
Print the current version number of unidsdiff.
-h
Print a usage message explaining how to run unidsdiff.
EXAMPLES
Run unidsdiff on node 10:
% unidsdiff -n 10 -host inkpen Enter SYSOP password: unidsdiff: detected 0 duplicate "nsCalXItemId" attributes in directory unidsdiff: detected 0 multi-valued "nsCalXItemId" attributes in directory unidsdiff: detected 0 badly-formed "nsCalXItemId" attributes in directory unidsdiff: detected 0 calendar-stores without a matching directory entry unidsdiff: detected 0 calendar directory entries without a matching calendar-storeIn this case, no discrepancies were found between the directory server and the Calendar Server. A verbose version of the same command would result in the following output:
% unidsdiff -n 10 -host inkpen -verbose Enter SYSOP password: DN="uid=Lorde Audre,o=Acme,c=us"<nsCalXItemID010:00346> DN="uid=Kilpi Eeva,o=Acme,c=us"<nsCalXItemID010:00347> : : DN="uid=Cohen Leonard,o=Acme,c=us"<nsCalXItemID010:00484> DN="uid=Atwood Margaret,o=Acme,c=us"<nsCalXItemID010:00485> DN="uid=Brossard Nicole,o=Acme,c=us"<nsCalXItemID010:00486> unidsdiff: detected 0 duplicate "nsCalXItemId" attributes in directory unidsdiff: detected 0 multi-valued "nsCalXItemId" attributes in directory unidsdiff: detected 0 badly-formed "nsCalXItemId" attributes in directory unidsdiff: detected 0 calendar-stores without a matching directory entry unidsdiff: detected 0 calendar directory entries without a matching calendar-store
unidssearch - Lists all users in a directory server who are not Calendar users.
[-f LDAPfilter] [-c #ofDNs]
DESCRIPTION
unidssearch outputs a list of all users in the directory server who are not Calendar users. The output of this command may be redirected to a file, modified as needed, and subsequently used as input to uniuser (using the -ex option). See OUTPUT FORMAT for information on the format of the file output by unidssearch.
The Calendar Server must be up to run unidssearch.
OPTIONS
-f
LDAPfilter
A raw LDAP filter that may be combined ("ANDed") with the default filter to retrieve users from an LDAP directory. Refer to your directory server documentation for exact attributes that can be specified in the LDAP filter. The values specified in the filter must be in the configured character set of the directory server (e.g. UTF-8, T.61). The default filter is:
[&(objectClass=organizationalPerson)(|(!(nsCalXItemId=*)) (!(nsCalXItemId=*:*)))]
-c
#ofDNs
Limit the number of results returned to #ofDNs.
-v
Print the current version number of unidssearch.
-h
Print a usage message explaining how to run unidssearch.
FORMATS
OUTPUT FORMAT
The content of the file output by unidssearch has the following format:
A did=uid=jdoe, o=Acme, c=US A did=uid=confroom4, o=Acme, c=USEach entry has an initial "A" character, followed by a "did". The "A" flags the user as one to be added to the directory server as a Calendar user. The "did" is the Directory ID or Distinguished Name of the user, uniquely identifying that user to the Directory Server. The format of this file is the same as that required for the input file to the
uniuser -ex command. If this is the intended use of the file, additional user data may be appended to the "did", in X.400 format. For example:
A did=uid=jdoe, o=Acme, c=US/G=John/OU=Sales
% unidssearch > dsonly.txt
% unidssearch -c 50
% unidssearch -f "(sn=Smith*)"
uniuser
unidssync - Synchronizes the information in a Calendar node with that in a directory server.
[-n node-ID] [-host hostname] [-p sysOpPsw]
DESCRIPTION
unidssync synchronizes the information in a Calendar node with that in the directory server.
unidssync should be run when other applications using the directory server have changed directory server entries without the knowledge of the Calendar Server, AND at least one of the following conditions is true:
the "dac_itemget" key in the [ENG] section of the unison.ini file is set to "FALSE" to enhance performance (in this case, Calendar retrieves its information from the internal store rather than from the directory server);
the "dac_dirdownfailover" key in the [ENG] section of the unison.ini file is set to "TRUE", to allow Calendar to continue running even if the directory server is down.
These conditions might allow discrepancies to arise between the information in the internal store of the Calendar node and that in the directory server. unidssync eliminates discrepancies, using the directory server as the authority. It should be run as part of a regular maintenance program.
The Calendar Server must be up to run unidssync.
OPTIONS
-host
host
Specify the host. Required if connecting to a remote host.
-n
node-ID
Specify the node. Required if more than one node exists.
-p
sysOpPsw
Provide the SYSOP password. If it is not provided on the command line, prompting for it will occur.
-v
Print the current version number of unidssync.
-h
Print a usage message explaining how to run unidssync.
EXAMPLES
Synchronize the contents of node 10 on host "fergus" with the directory server information for that node:
% unidssync -n 10 -host fergus unidssync: 152 internal calendar directory entries to synchronize SYNCHRONIZING <10,234> <S="Okeefe",G=Georgia)<U> DONE SYNCHRONIZING <10,235> <S="Whittome",G=Irene)<U> DONE SYNCHRONIZING <10,236> <S="Cornell",G=Joseph)<U> DONE : : SYNCHRONIZING <10,383> <S="Goodwin",G=Betty)<U> DONE SYNCHRONIZING <10,384> <S="Dickson",G=Jennifer) <U> DONE SYNCHRONIZING <10,385> <S="Wagschal",G=Marian) <U> DONE SYNCHRONIZING <10,386> <S="Giacometti",G=Alberto) <U> DONE unidssync: 152 internal calendar directory entries synchronized
unidsup - Report the status of the directory server.
[-q] [-host hostname]
DESCRIPTION
unidsup reports whether the directory server is up or down.
The Calendar Server must be up to run unidsup.
OPTIONS
-host
hostname
Provide the name of the machine hosting the Calendar Server. This option is required if the host is remote.
-q
Operate in quiet mode.
-v
Print the version number of unidsup.
-h
Print a usage message explaining how to run unidsup.
EXIT STATUS
Exit values are:
0 Success
1 Failure
2 Usage error
3 User interrupt
UNIGRPLS
unigrpls - Display both the public and administrative groups in a Calendar Server database.
SYNTAX
unigrpls [-grp groupname] [-members] [-host hostname] [-n node-ID] [-p sysOpPsw]
DESCRIPTION
unigrpls prints both the public and administrative groups in the specified Calendar node. By default, all groups are displayed along with the total number of members in each. The -members option is used to display each member in the group.
Note that any groups created in the directory server are also included in the output of unigrpls. If members are listed, only the members of the directory server group who are also Calendar users are output.
unigrpls can only be run if the Calendar Server is up.
OPTIONS
-grp
groupname
Specify a group.
-members
Print the individual members for each group output.
-host
hostname
Specify the host on which the operation is to be performed. The default is the local host.
-n
node-ID
Specify the node on which the group is located. Required if more than one node is configured.
-p
sysOpPsw
Specify the SYSOP password. Without this option, prompting for the password will occur.
-v
Print the current version number of unigrpls.
-h
Print a usage message explaining how to run unigrpls.
EXAMPLES
To display all groups in node 20 on the remote host "jupiter":
% unigrpls -host jupiter -n 20
% unigrpls -grp "Managers" -members -n 10
% unigrpls -members
unil2bendian converts a CorporateTime node database from a format for little-endian processors to a format for big-endian processors.
[-n node-ID ]
DESCRIPTION
unil2bendian is used when migrating a node database from a CorporateTime Server running on a little-endian machine to one running on a big-endian machine. (HP-UX, SunOS, AIX, and IRIX usually run on big-endian processors while UnixWare, and Win NT usually run on little-endian processors.)
This utility converts the *.dat files of the node database from a little-endian to a big-endian format. It performs the conversion on a COPY of the files, so the original database remains untouched. The *.dat files are the only ones that must be converted; the remaining files are built on the destination machine.
unib2lendian is a complementary utility which converts *.dat files from a big-endian format to a little-endian format.
unil2bendian can only be run if the CorporateTime Server is down.
OPTIONS
-n
node-ID
Specify the node. Required if more than one node exist.
-v
Display the current version number of unil2bendian.
-h
Prints a usage message explaining how to run unil2bendian.
EXAMPLES
In the following example, the database for node 345 is being converted and moved from a CorporateTime Server running on a little-endian machine to one running on a big-endian machine.
Warning
Do not restart the CorporateTime Server on either of the machines until you
are certain that all steps in this process have been completed. In particular
ensure that the node entries in the unison.ini file on each machine
have been updated, and if a node network is in place, that the information
about the network has been properly updated.
unil2bendian on the target node.
The converted copy of the node will be found in the
\users\unison\db\nodes\N#\perm_conv directory where N# is the
"name" value (from unison.ini) of the target node.
/users/unison/misc/unison.ini files:
a. Remove the node entry for this node in the
unison.ini file on the
target machine.
unison.ini file on the destination
machine (the "name" value used in this example is "N1").
% cd /users/unison/db/nodes/N1/perm
% cp /users/unison/db/nodes/nempty/perm/unison.dbd .
% cp /users/unison/db/nodes/nempty/perm/vista.ctb .
tmp directory for the node.
% cd /users/unison/db/nodes/N1
% cp /users/unison/db/nodes/nempty/tmp/set.dat .
% cp /users/unison/db/nodes/nempty/tmp/set.key .
% cp /users/unison/db/nodes/nempty/tmp/unitmp.dbd .
Warning
Failure to carry out this step may result in data loss and/or corruption of the
data base.
remotenode.dat file to the remotenode.ini file. So, if the node
network consists of nodes 330, 335, 340, 345 and 350, wewould perform the
following:
Remember that
unidbfix must be run on the machineon which the node
resides.
remotenode.ini file for each node in the network and
change the hostname associated with node 345. This file is found in the
node's perm directory.
Running
unidbfix in import mode also rebuilds the key files. So the key
files here will have been rebuilt from the updated remotenode.dat file.
/users/unison/misc/nodes.ini file on the hub
CorporateTime Server to reflect the change in hostname for this node.
EXIT STATUS
Exit values are:
0 Success
1 Failed to convert the database
2 Usage error
SEE ALSO
unidbfix, unistart, unistop, uninode
unilogons - A utility to display Calendar SIGNON/SIGNOFF statistics.
[-s starttime] [-e endtime] [-i interval] [-f filename]
unilogons -t -s starttime -e endtime -i interval [-f filename]
unilogons -t [time] [-f filename]
DESCRIPTION
unilogons displays the signon and signoff activity of users on a Calendar Server at a specific time or during a specific time period. By default it uses the information in the /users/unison/log/act.log file. The -f option may be used to specify another input file.
The -t option displays activity at a precise moment, while the -s and -e options display activity during a defined period. The -i option specifies a regular time interval (e.g. every 15 minutes) within a specified period.
By default, all activity between the default start-time (the first minute of the current day) and the default end-time (the current system time) is displayed.
The Calendar Server must be up to run unilogons.
OPTIONS
-e
endtime
Specify an end time for the statistics. Without this option, the default end time is the current time of the current day. See TIME ARGUMENT FORMAT below for details on how to specify endtime.
-f
filename
Specify the name of the input file. By default the input file is /users/unison/log/act.log. The input file specified with the -f option must be in the same format as the act.log file.
-i
interval
Specify a time interval. The default interval is endtime less starttime. See INTERVAL ARGUMENT FORMAT below for details on how to specify interval.
-s
starttime
Specify a start time for the statistics. Without this option, the default start time is the first minute of the current day. See TIME ARGUMENT FORMAT below for details on how to specify starttime.
-t
[time]
If used without the -s, e, and -i options, this will display statistics for the current time (-t) or for a given time (-t time). When used together with all of the -s, -e, and -i options, the -t (without a time argument) restricts output to activity at only the precise times determined by the interval (-i) argument. See the last two EXAMPLES for sample output of the -s, -e, -i options both with and without the -t option. See TIME ARGUMENT FORMAT below for details on how to specify time.
-v
Print the current version number of unilogons.
-h
Print a usage message explaining how to run unilogons.
TIME ARGUMENT FORMAT
The starttime, endtime, and time arguments may each be expressed as either:
day month [year] [time]
or
[month day] time [year]
where
day
is a number between 1 and 31;
month
is either the full name of the month or the first three letters of the full name (e.g. jan, feb, mar, etc.) (month is case-insensitive);
year
must be 1991 or higher and must be specified using four digits; and
time
is in the form HH:MM or HH:MM:SS (HH is an integer between 0 and 23, MM is an integer between 0 and 59, and SS is an integer between 0 and 59).
The order of the individual elements in the argument is unimportant. What is important is that either day and month be specified, or time be specified. For example, the following are all valid:
Feb 22 1996 10:00:00 22 february 10:00:00 10:00:00 february 22 1996 1996 feb 22 feb 22 10:00:00Default values for day, month, year and time are current day, current month, current year and current system time respectively. Any missing field in time (HH, MM, or SS) will be replaced with the current HH, MM, or SS value. Thus, if the current date and time is March 12 1998 10:12:34, and only HH:MM are specified in the argument, the SS will become "34": -e 12:41 -> March 12 1998 12:41:34 -s 12:41 -> March 12 1998 12:41:34 If none of the time fields are specified, starttime defaults to the first minute of the day, and endtime defaults to the last minute of the day: -s feb 22 -> feb 22 1998 00:00:00 -e feb 22 -> feb 22 1998 23:59:59
minutes: 1m, 2m, etc. up to 999999999m (9 digits) hours: 1h, 2h, etc. up to 9999999h (7 digits) days: 1d, 2d, etc. up to 99999d (5 digits)
unilogons -t
unilogons -t oct 6 1998 15:00This would produce the following output:
Display the number of users logged-on at 3:00 p.m. on October 6, 1998, and at each 15-minute interval, up to 5:00 p.m. on October 6, 1998.
unilogons -t -s oct 6 1998 15:00:00 -e oct 6 1998 17:00:00 -i 15mA sample section of the output from this command shows the form of what will be output for each of the times 15:00:00, 15:15:00, 15:30:00, etc., up to 17:00:00. (Compare this with the output of the next example, where the -t is removed from the command line.)
Output the signon/signoff statistics for a defined period of time (from 3:00 p.m. to 5:00 p.m. on October 6, 1998), providing cumulative statistics for each of the 15-minute intervals in the period. Note how the output from this command line differs from that of the previous example where the -t was included.
unilogons -s oct 6 1998 15:00:00 -e oct 6 1998 17:00:00 -i 15mFor each of the 15-minute time intervals within the entire time period, output similar to the following will be displayed:
FILES
/users/unison/log/act.log
By default unilogons obtains its information from this file. Note that this file is only created if the "activity" parameter of the [ENG] section of the unison.ini file is set to "TRUE".
EXIT STATUS
Exit values are:
0 Success
1 Failure
WARNINGS
unilogons may take some time to finish depending on the size of the input file.
The disk space requirement to run unilogons is one and a half times the input file. Thus, if the size of the input file is 8M, approximately 12M of free disk space will be required to run unilogons. unilogons creates its temporary files in the /users/unison/tmp directory so sufficient free space must exist in that directory.
UNIMVUSER
unimvuser - A utility to move a Calendar user from one Calendar node to another.
SYNTAX
unimvuser -u user -host1 hostname1 -host2 hostname2 -n1 node-ID1 -n2 node-ID2 [-p1 sysOpPsw1] [-UIDpreserve] [-p2 sysOpPsw2] [-verbose]
DESCRIPTION
unimvuser is used to move a Calendar user from one Calendar node to another.
The move operation makes the following changes to the user information:
unimvuser logs these changes, along with the rest of its activity, in the /users/unison/log/unimvuser.log file.
It is important to understand that the move operation may still be in progress even after unimvuser has successfully completed. In particular, work is being done by the destination node (the node to which the user has moved) and by remote nodes (where other users reside who may have invited the user). Until the work is complete, the moved user will see an incomplete calendar .
The time required to complete the move operation depends on the number of requests waiting in the request queue of the Corporate-Wide Services daemon/service. For this reason, it is advisable to run unimvuser during off-peak hours for the Calendar Server.
The Calendar Server must be up to run unimvuser.
OPTIONS
-host1
hostname1
Specify the host name of the source node.
-host2
hostname2
Specify the host name of the destination node.
-n1
node-ID1
Specify the source node. This is required if more than one node exists on the host.
-n2
node-ID2
Specify the destination node. This is required if more than one node exists on the host.
-p1
sysOpPsw1
Provide the SYSOP password for the source node. If this option is not used, prompting for the password will occur.
-p2
sysOpPsw2
Provide the SYSOP password for the destination node. If this option is not used, prompting for the password will occur.
-u
user
Specify the user to be moved. See FORMAT OF THE user ARGUMENT below for details on the proper specification of the user argument. The user must already exist in the directory server used by the destination node.
-verbose
Use verbose mode.
-v
Print the current version number of unimvuser.
-h
Print a usage message explaining how to run unimvuser.
-UIDpreserve
Preserve original CAPI event UIDs. This option is required if CAPI is used on both the source and the destination node.
FORMATS
FORMAT OF THE user ARGUMENT
The user argument is a string of the form "key=value/key=value/...", where "key" is one of those listed below, and "value" is any string. Both "key" and "value" are case insensitive. For all keys except the ID key, the "value" string may be terminated by a wild card symbol (*). If a forward slash "/" is to be included in a string, it should be escaped with the character "\" to prevent it from being interpreted as a key-value pair delimiter - i.e. "S=Hoopla/OU1=R\\/D".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they should be escaped (i.e. preceded by the escape character "\\") to prevent the shell from interpreting them.
Note that if the ID key-value pair is specified in the user argument, all other key-value pairs specified along with it are ignored. Further note that the ID key-value pair may be specified without using the ID key, i.e. "-u 256" is a valid specification and is equivalent to "-u ID=256".
EXAMPLES
Move the user with ID 354 from node 12 on host "horus" to node 25 on host "nut":
% unimvuser -u "ID=354" -host1 horus -host2 nut -n1 12 -n2 25
/users/unison/log/unimvuser.log
unimvuser logs its activity in this file.
uniuser
uninode - A utility to administer a Calendar Server node network.
-add hostname
uninode -apply [-y | -n] node-ID | hostname | group [sysOpPsw]
uninode -cws node-ID | hostname | group
uninode -edit [-e editor] [sysOpPsw]
uninode -import node-ID | hostname | group [sysOpPsw]
uninode -reset node-ID | hostname | group [sysOpPsw]
uninode -retry node-ID | hostname | group [sysOpPsw]
uninode -snc node-ID | hostname | group
uninode -test node-ID | hostname | group
DESCRIPTION
uninode serves as a centralized administration tool for a network of Calendar Server nodes. Through the nodes.ini file, this utility adds and deletes nodes and the connections between them. It also reports on the network configuration as well as on the status of remote connections.
Important! Only one nodes.ini file should exist for a node network, regardless of how many Calendar Servers are linked. Furthermore, the node network must be configured and managed from the Calendar Server where this file is found.
The sysOpPsw is the SYSOP password for the node in the Calendar network with the lowest node-ID on the machine hosting the nodes.ini file.
node-ID, hostname and group each restrict uninode's actions to certain nodes in the nodes.ini file. node-ID restricts uninode to the specified node, hostname to the nodes on the specified host, and group to the nodes in the specified group. The group argument may be one of the following values:
allall included (+) nodes
ALLall included (+) and all excluded (-) nodes
outall excluded (-) nodes The group argument may also be a customized group name. Consult the
uninodes.ini man page for further details on the meaning of each of these values.
unidssync should be run on each node before running uninode to ensure that the local information in each node is synchronized with what is in the directory server. Note also that all nodes in a Calendar network must use the same directory server.
uninode can only be run if the Calendar Server is up.
nodes.ini file, and finally adds a line for each node found on the host. Nodes are added as excluded members of the network.
-apply
nodes.ini file. The node-ID, group, and hostname arguments restrict the application to specified nodes in the nodes.ini file. The remote node information in each of the nodes involved is checked, and if it is found to be missing entries, the user is prompted to confirm the addition of the missing entries. The -y or -n option is used to automatically provide a response. The -test option should always be used before invoking the -apply option.
-cws
EX
Configured connections: the number of TCP/IP connections configured or "M" for a mail connection, as per the information in the nodes.ini file.
COActual connections: the number of actual TCP/IP connections, or "M" for a mail connection.
Q-SIZEThe number of CWS requests currently in the CWS queue.
IN-PROCESSThe number of CWS requests processed.
IMPORT-DIRThe number of items (users and resources) in the local copy of the remote directory. -edit
nodes.ini file using the specified text editor. On exit from the editor, the edited file is parsed, and, if no errors are found, the original nodes.ini file is updated. If errors are found in the edited file, the user is prompted to either re-edit the file or abort the operation altogether. The -test option should always be used before invoking the -edit option.
-import
nodes.ini file from the currently running node network configuration. The node with the lowest node-ID on the machine hosting the nodes.ini file is the one from which uninode will begin construction of the file. If a nodes.ini file exists, uninode will prompt for confirmation before overwriting it.
-n
uninode -reset all. Resetting the statistics will allow the administrator to compare the statistics for different nodes at a later time.
-retry
uninode -retry all after a network-related problem is solved.
-snc
EXConfigured connections: the number of TCP/IP connections configured, as per the information in the
nodes.ini file.
COActual connections: the number of TCP/IP connections.
AVThe number of connections currently available.
USThe number of connections currently in use.
LOSTThe number of times the SNC daemon lost a connection to the remote node.
RETRYIf a connection is currently lost, RETRY is the time (expressed in "mm:ss" format) before the next attempt to reconnect.
QUEUEThe number of requests currently in the queue.
CANCELThe number of cancelled requests. A request is cancelled when it takes too much time to borrow a connection.
CHECKThe number of checks for queued requests. Checks are performed when a connection is waiting in the queue.
GRANTEDThe number of connections granted since the Calendar Server was started. -test
nodes.ini file is correct
uniengd and unisncd servers are up
uniengd is greater than A.01.15
nodes.ini file exists only on the host currently running uninode
uninode.
-h
uninode.
nodes.ini file.
% uninode -initSince no node network currently exists, an empty
nodes.ini file will be created with sample lines included as comments.
Add the nodes from each of the three Calendar Servers.
% uninode -add gravalax % uninode -add gnocchi % uninode -add biryaniExamine the contents of the
nodes.ini file.
% cat nodes.ini - H=biryani/N=32 - H=biryani/N=31 - H=gnocchi/N=25 - H=gnocchi/N=24 - H=gnocchi/N=23 - H=gnocchi/N=22 - H=gnocchi/N=21 - H=gravalax/N=13 - H=gravalax/N=12 - H=gravalax/N=11Edit the file to configure the connections between the nodes.
% vi /users/unison/misc/nodes.iniExamine the
nodes.ini file again.
% cat /users/unison/misc/nodes.ini + H=biryani/N=32/ALIAS=salesIndia/GR=india + H=biryani/N=31/ALIAS=adminIndia/GR=india - H=gnocchi/N=26/ALIAS=tempItaly/GR=italy + H=gnocchi/N=25/ALIAS=supportItaly/GR=italy + H=gnocchi/N=24/ALIAS=financeItaly/GR=italy + H=gnocchi/N=23/ALIAS=r&dItaly/GR=italy + H=gnocchi/N=22/ALIAS=salesItaly/GR=italy + H=gnocchi/N=21/ALIAS=adminItaly/GR=italy - H=gravalax/N=16/ALIAS=tempSweden/GR=sweden + H=gravalax/N=13/ALIAS=r&dSweden/GR=sweden + H=gravalax/N=12/ALIAS=salesSweden/GR=sweden + H=gravalax/N=11/ALIAS=adminSweden/GR=sweden all:2 india:+2 italy:+3 sweden:+2There are now two connections between each node. Two connections go from node 32 on biryani to node 13 on gravalax, and two go from node 13 on gravalax to node 32 on biryani. The "italy" group of nodes has three additional connections from each node in the group to each of the other nodes in the group. There are two excluded nodes. Consult the
uninode.ini man page for rules on configuring connections between nodes.
Apply the configuration. Since this is the first time that nodes on each machine will "see" nodes on the other machines, inconsistencies can be expected in their remote node directories. The -import option will automatically update all of the remote node directories for the nodes in the network.
Run uninode -test to ensure node accessibility before running the -import option.
% uninode -test gravalax % uninode -test gnocchi % uninode -test biryaniProceed with the -import option if the tests succeed.
% uninode -import gravalaxDuring execution of this command, uninode will print out information on the work it is performing.
uninode: connected to gravalax, node 11 uninode: added 11->12, TCP/IP connection uninode: placed a request in the CWS queue to get node 12 user directory The node network is now in place.
/users/unison/misc/nodes.ini
Contains the list of nodes and the rules that describe the Calendar node network configuration.
/users/unison/man/man4/uninode.ini(4) explains the format of the nodes.ini file.
unipasswd - Change a user password on a Calendar database.
[-e entry | -sysop | -cwsop] [-n node-ID] [-host hostname] [-p sysOpPsw]
DESCRIPTION
unipasswd changes the password of the SYSOP, the CWSOP, or a specific user on a given node. By default, the SYSOP password is changed. Note that the -e, -sysop and -cwsop options are all mutually exclusive.
unipasswd can only be run if the Calendar Server is up.
OPTIONS
-cwsop
Change the password of the CWSOP.
-e
entry
Change a user password (search filter). See FORMAT OF THE entry ARGUMENT for details on how to specify entry.
-host
hostname
Specify the host on which the operation is to be performed. The default is the local host.
-n
node-ID
Specify the node on which the password is to be changed. Required if more than one node exists.
-p
sysOpPsw
Provide the SYSOP password. Required if -e option is used and a SYSOP password is set. If this is required and it is not supplied on the command line, prompting for it will occur.
-sysop
Change the password of the SYSOP.
-v
Print the current version number of unipasswd.
-h
Print a usage message explaining how to run unipasswd.
FORMATS
FORMAT OF THE entry ARGUMENT
The entry argument is a string of the form "key=value/key=value/...", where "key" is one of those listed below, and "value" is any string. Both "key" and "value" are case insensitive. The "value" string may be terminated by a wild card symbol (*). If a forward slash "/" is to be included in a string, it should be escaped with the character "\" to prevent it from being interpreted as a key-value pair delimiter - i.e. "S=Hoopla/OU1=R\/D".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they should be escaped (i.e. preceded by the escape character "\") to prevent the shell from interpreting them.
EXAMPLES
Change the SYSOP password on node 20 on the remote host "jupiter":
% unipasswd -host jupiter -n 20
% unipasswd -e "S=Leblanc/G=Jean" -n 10
% unipasswd -cwsop
[UTL] section of the unison.ini file to determine whether or not it can modify the user password. If this value is set to FALSE, then the user password cannot be modified by this utility. If this key-value pair does not appear in the file, the utility assumes it CAN modify the password.
unireqdump - View, and optionally delete, requests in the queue of the Corporate-Wide Services (CWS) daemon.
[-chunk n] [-delete] [-excl filter] [-incl filter] [-item itemnum] [-remotenode node-ID] [-prompt] [-reqid ID] [-trcode code] [-n node-ID] [-p sysOpPsw]
DESCRIPTION
unireqdump outputs the set of requests currently in the queue of the Corporate-Wide Services daemon/service, unicwsd. The utility is also used to delete requests from the queue (using the -delete option).
By default, all requests in the queue are output. The -excl, -incl, -item, -remotenode, -reqid, and -trcode options allow you to select requests satisfying specific criteria. These options are applied successively so each of the requests in the output must meet the combined criteria for all of the options specified.
Numeric arguments can be either decimal or hexadecimal values (where hexadecimal values are prefixed by "0x"). The single exception is the ID argument to the -reqid option, where a hexadecimal value is always assumed, even if the "0x" prefix is not present.
unireqdump can only be run if the Calendar Server is up.
OPTIONS
-chunk
n
Transfer selected requests from unicwsd to unireqdump in chunks of at most n requests. As the chunk size is increased, fewer network transactions (i.e. communications between unicwsd and unireqdump) are required, but more memory (for buffers) is needed by both unicwsd and unireqdump. The default value is 50, and should not need to be changed.
-delete
Enable the deletion option. After each request is output, the user will be prompted to confirm whether or not they wish to delete it. The -prompt option may be used along with this option to tell unireqdump to automatically delete ALL of the requests in the output, without prompting for confirmation.
-excl
filter
Set an exclusion filter; requests matching this filter are excluded from the output. The possible filters are:
| serviced | Requests already serviced |
| notserviced | Requests not yet serviced |
| unserviced | Synonym for "notserviced" |
| cantservice | Requests that cannot be serviced |
-incl
filter
Set an inclusion filter; requests matching this filter are included in the output. The possible filters are listed under the -excl option.
-item
itemnum
Select only requests matching the specified item number. itemnum is the numeric ID of the item; it can be obtained by using a client to log onto the Calendar Server as the item, and then displaying the 'About Connection' box.
-n
node-ID
Specify the node from which the request originated. Required if more than one node exists on the server running unireqdump. The SYSOP password unireqdump requires is the one for this node.
-p
sysOpPsw
Provide the SYSOP password. If the password is not supplied on the command line, prompting for it will occur.
-prompt
Used with the -delete option to tell unireqdump to automatically delete all of the requests in the output, without prompting for confirmation. Use this option with care!
-remotenode
node-ID
Select only requests destined for the specified remote node.
-reqid
ID
Select the request with the specified ID. ID is a hexadecimal value (it is not necessary to prefix the value with "0x", though doing so causes no harm).
-trcode
code
Select requests with the specified transaction code. The transaction code may be expressed numerically (the numeric values are available in the documentation for the calendar programming interface), or as one of the following strings:
agendaget attendadd echo eventattend eventcreated eventdeleted eventmodified foreignerdeleted instanceadded instancemodified itemdeleted itemmodified mailmessagepost nodeitemsget notifynewevent notifynewinstance securityadd securitydeleted securitymodified-v
unireqdump.
-h
unireqdump.
unireqdump -n 10 -p sysOpPsw
unireqdump -delete -n 10 -p sysOpPsw
unireqdump -excl serviced -p sysOpPsw
unireqdump -delete -excl serviced -remotenode 20 -trcode eventattend -n 10 -p sysOpPsw
unires - A utility to list, add, or delete Calendar resources, or to modify the information associated with them.
-ls [res] [-format format] -n node-ID [-p sysOpPsw]
unires -format format -n node-ID [-p sysOpPsw]
Addition
unires -add res [-s sections] -n node-ID [-p sysOpPsw]
Deletion
unires -del res [-y] -n node-ID [-p sysOpPsw]
unires -desdel res -n node-ID [-p sysOpPsw]
unires -grpdel res -n node-ID [-p sysOpPsw]
Modification
unires -mod res -s sections | -m modifier -n node-ID [-p sysOpPsw]
Multiple additions, deletions, modifications
unires -ex filename [-s sections] [-k] -n node-ID [-p sysOpPsw]
Other
unires -s [sections] -n node-ID [-p sysOpPsw]
DESCRIPTION
unires is used to list, add, or delete Calendar resources, and to modify the information associated with them. Resources are identified by their names so each must be unique. Details on how to specify the res argument are given in the FORMAT OF THE res ARGUMENT section below. Note that the -ls, -add, -del, and -mod options are all mutually exclusive.
The information associated with a resource is a combination of the key-value pairs described in the FORMAT OF THE res ARGUMENT below and that contained in the resource.ini file (which includes the resource preferences, security, personal group, admin group membership, and the list of users permitted to work as a designate for the resource).
uniuser is the complementary utility for users.
unires can only be run if the Calendar Server is up.
OPTIONS
-add
res
Create a new resource. If the resource already exists, an error is reported. The information associated with the new resource is a combination of what is specified in the res argument, and the default values contained in the GEN section of the resource.ini file. The -s sections option may be used to apply default values from particular sections of the resource.ini file. If more than one resource is to be created, the -ex option must be used.
The DID (Directory ID) must be specified in the res argument.
See EXAMPLES.
-del
res
Delete the specified resource. unires will prompt for confirmation before actually performing the deletion unless the -y option is used. If more than one resource is to be deleted, the -ex option must be used.
-desdel
res
Delete the list of designates for the specified resource. If more than one resource matches res, the command will fail.
-edit
This option exists only under UNIX. It allows you to first output the list of existing Calendar resources to a file, then edit the file to make desired modifications, and finally input the changes back into the node. The following sequence of commands is performed:
% unires -ls -n node-ID > file % vi file % unires -ex file -n node-ID % rm file-ex
resource.ini
The initial character must be followed by a space and a resource specification. The DID must be specified in the resource specification and can be followed by data in X.400 format. In the case of a modification, the ID for the resource must be supplied; it is used to identify the resource, while the other key-value pairs specified along with it are applied as the modifications. See EXAMPLES.
For each deletion specified in the file, unires will prompt for confirmation before performing the deletion. The -y option may be used to automatically provide confirmation.
One way to create this file is to save the output of unires -ls to a file. This can then be edited and input to unires -ex.
The -s sections option may be used with -ex to set the corresponding resource information to the default values contained in the specified sections of the resource.ini file.
Note that the ability to modify the name of a resource (the R key) depends on the directory server.
-format
unires to process all lines in the file even if it encounters an error. Errors are sent to standard output; file redirection may be used to capture these to a file.
-ls
resource.ini file. When used with the -m modifier option, modifications are made to the key-value pairs listed in the FORMAT OF THE res ARGUMENT. The ability to modify the name of a resource (the R key) may depend on the directory server.
-n
resource.ini file and output information from it to standard output. By default, all sections of the resource.ini file are evaluated, and all section names along with their respective "info" key-value pairs are listed.
The sections argument restricts the evaluation to only the specified sections. In this case all key-value pairs of the specified sections are output, along with any errors. The sections argument is a list of one or more section names, each separated by a forward slash (e.g. "GEN/GR1/GR2" specifies the sections GEN, GR1 and GR2). Evaluation is done from right to left. Thus, in the above example, GR2 would be evaluated first, GR1 second, and GEN last. Where the same key appears in more than one section, the value of the first instance evaluated takes precedence.
-y
unires.
-h
unires.
"S=Hoopla/G=James\/Jim".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they should be escaped (i.e. preceded by the escape character "\") to prevent the shell from interpreting them.
Note that if the ID key-value pair is specified in the res argument, all other key-value pairs specified along with it are ignored. Also note that the PSW key may not be specified in the res argument.
The format parameters listed in the third column below are used with the -format option to configure the presentation of a listing (see EXAMPLES).
EXAMPLES
LISTINGS
List all resources in node 12 with "HPLaser" in their name:
% unires -ls "R=HPLaser*" -n 12Enter SysOp password:
. R=HPLASER dorian/S=Wilde/G=Oscar/ID=438 . R=HPLASER sula/S=Morrison/G=Toni/ID=512List all resources in node 12 with "HPLaser" in their name; output the resource name, the name and surname of the contact person, and separate each field by a colon:
% unires -ls "R=HPLaser*" -format "%r Contact: %g %s" -n 12 Enter SysOp password: HPLASER dorian Contact: Oscar Wilde HPLASER sula Contact: Toni MorrisonList all resources in node 12; output the resource name, the name and surname of the contact person, and separate each field by a colon:
% unires -format "%r: %g %s" -n 12Enter SysOp password:
HPLASER dorian: Oscar Wilde HPLASER sula: Toni Morrison RedRoom: Jeannette Winterson BlueRoom: James Thurber Apple Laptop: Audre Lorde SGI Indy: Milan Kundera Olivetti Typewriter: Dashiell Hammett
% unires -add "DID=uid=oakroom,o=Acme,c=US" -n 12
% unires -del "R=Olivetti Typewriter" -n 12
% unires -mod "R=oakroom" -m "CA=15" -n 12
% vi multiple.dat % cat multiple.dat A DID=uid=betacam,o=Acme,c=US/S=Fellini/G=Fred A DID=uid=vcr1,o=Acme,c=US M R=RedRoom/CA=25/ID=441 D R=BlueRoomNote that in the case of the modification, the resource is the one which has ID=441; the capacity of the resource will be modified to "25". Input the file to
unires:
% unires -ex multiple.dat -n 12Enter SYSOP password:
unires: added "uid=betacam,o=Acme,c=US" unires: added "uid=vcr1,o=Acme,c=US" unires: modified "RedRoom" unires: deleted "BlueRoom"
unires.iniThis file specifies possible Calendar resource configurations. See
/users/unison/man/man4/unires.ini(4) for details.
[UTL] section of the unison.ini file to determine whether or not it can modify the corresponding resource key-value pairs. For example, if "adm_modrescapacity" is set to FALSE, then the value associated with the CA key cannot be modified by this utility.
If no corresponding "adm_modres<field>" for a particular key appears in the file, the utility assumes it CAN modify it.
unires.ini explains the format of the resource.ini file; uniuser uniuseris the complementary utility for users
unirmold - A utility to remove old events and tasks from calendars in a Calendar database.
-event | -task] [-n numOfDays] [-y] node-ID [-p sysOpPsw]
unirmold -res [-n numOfDays] [-y] node-ID [-p sysOpPsw]
DESCRIPTION
unirmold removes events and tasks that are more than a specified number of days old from calendars in a Calendar database.
By default, unirmold deletes all tasks and events from user calendars, and all events from resource calendars. The -res option restricts the deletion to all events in resource calendars. The user argument restricts the deletion to all events and tasks in the calendars of specified users. For details on how to specify user, see FORMAT OF THE user ARGUMENT below.
unirmold can only be run if the Calendar Server is up.
OPTIONS
-event
Delete only old events. By default both events and tasks are deleted from the user calendar .
-n
numOfDays
Delete events and tasks that are more than numOfDays days old from the calendar . The default value is 90 days; the minimum value allowed is 30 days.
-p
sysOpPsw
Provide the SYSOP password for the node. If this option is not used, prompting for the password will occur.
-res
Remove all events in resource calendars only.
-task
Delete only old tasks from the user calendar . By default both events and tasks are deleted.
-y
Eliminate prompting for confirmation of any deletions.
-v
Print the current version number of unirmold.
-h
Print a usage message explaining how to run unirmold.
FORMATS
FORMAT OF THE user ARGUMENT
The user argument is a string of the form "key=value/key=value/...", where "key" is one of those listed below, and "value" is any string. Both "key" and "value" are case insensitive. The "value" string may be terminated by a wild card symbol (*). If a forward slash "/" is to be included in a string, it should be escaped with the character "\" to prevent it from being interpreted as a key-value pair delimiter - i.e. "S=Hoopla/OU1=R\\/D".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they should be escaped (i.e. preceded by the escape character "\") to prevent the shell from interpreting them.
EXAMPLES
Delete all events more than 30 days old from the calendar of the user with surname "Wembley" in node 10:
% unirmold "s=wembley" -event -n 30 10Delete all events more than 30 days old from all resource calendars in the node 10:
% unirmold -res -n 30 10
unirnsynch - A utility to propagate deletions in the local information of one node to another node in the network.
-rn node-ID [-rhost hostname] [-rp remote-sysop-password] -n node-ID [-host hostname] [-p sysop-password]
DESCRIPTION
unirnsynch is used to propagate deletions in the local information of one node to another node in the network. Each node in a node network contains both local information and remote node information, where:
local information is a list of the users and resources belonging to that node
remote node information is a list of the users and resources belonging to each of the other nodes in the node network.
The remote node information of a given node is constructed from the local information of each of the other nodes in the node network.
Changes to the local information of a node are normally automatically propagated to the remote node information of all other nodes in the network. However, if for any reason discrepancies do occur, the remote node information can be updated using unirnsynch and/or uninode. uninode (using the -apply option) may be used to add missing entries while unirnsynch is used to delete entries which no longer exist in the local information.
uninode -cws all may be used to determine whether or not discrepancies exist (see the IMPORT-DIR field of the output).
The Calendar Server must be up to run unirnsynch.
OPTIONS
-host
hostname
Specify the host where the node that has had deletions to local information resides.
-n
node-ID
Specify the node-ID of the node that has had deletions to its local information.
-p
sysop-password
Provide the SYSOP password of the node that has had deletions to its local information.
-rhost
hostname
Specify the host where the node that is to have its remote node information updated resides. Default is the local host.
-rn
node-ID
Specify the node-ID of the node that is to have its remote node information updated.
-rp
remote-sysop-password
Provide the SYSOP password of the node that is to have its remote node information updated.
-v
Print the current version number of unirnsynch.
-h
Print a usage message explaining how to run unirnsynch.
EXAMPLES
Propagate deletions to entries in node 30 on host "pepper" to the remote node information of node 20 on host "salt":
% unirnsynch -rn 20 -rhost salt -rp <remote-sysop-password> -n 30 -host pepper -p <sysop-password>
uninode
unisizeof - a utility to compute the size of the Calendar Server installation.
[-db | -n node-ID]
DESCRIPTION
unisizeof computes the size of a Calendar Server installation. The default action is to determine the size of the contents of the /users/unison directory, including all database nodes and the Calendar Server (executables, *.ini files, etc.). The -db and -n options can be used to determine the size of a single database node.
unisizeof can be run if the Calendar Server is up or down.
OPTIONS
-db
Compute the size of the default database, (i.e. the node for which "name = N1" in the /users/unison/misc/unison.ini file).
-n
nodeid
Compute the database size of the specified node.
-v
Print the version number of unisizeof.
-h
Print a usage message explaining how to run unisizeof.
EXAMPLES
Determine the size of the Calendar Server installation:
% unisizeof unisizeof: total size of the calendar server 44216K
% unisizeof -db unisizeof: database size for nodeid [10] is 940K
% unisizeof -n 10 unisizeof: database size for nodeid [10] is 760K
/users/unison/misc/unison.ini
Used to determine the default node (i.e. the node for which "name = N1" in this file) when unisizeof is used with the -db option.
unislice - A utility for extracting information from Calendar Server log files.
[-s starttime] [-e endtime]
DESCRIPTION
unislice extracts information from the specified log file(s) and sends it to standard output. This utility is used by unisnapshot to gather information contained in log files. The logFile(s) argument is a list of one or more log files; each must be a fully-specified pathname separated from the others by a space.
unislice can be run whether the Calendar Server is up or down.
OPTIONS
-e
endtime
Set an end time. Only log file information with time stamps prior to this time will be included in the output. Thus, if an end time of January 1 is set, no information from the 1st of January will be included. See FORMAT OF starttime, endtime ARGUMENTS below for details on how to specify these arguments.
-s
starttime
Set a start time. Only log file information with time stamps on or after this time will be included in the output. See FORMAT OF starttime, endtime ARGUMENTS below for details on how to specify these arguments.
-v
Print the current version number of unislice.
-h
Print a usage message explaining how to run unislice.
FORMATS
FORMAT OF starttime, endtime ARGUMENTS
Each of these arguments can take one of the forms:
"day month [year] [time]"
"day month [time] [year]"
"month day [year] [time]"
"month day [time] [year]"
where
day
is a number between 1 and 31;
month
is either the full name of the month or one of the following abbreviations: jan, feb, mar, apr, aug, sep, sept, oct, nov, dec (month is case-insensitive);
year
is specified using four digits; and
time
is in the form HH:MM or HH:MM:SS (HH is an integer between 0 and 23).
EXAMPLES
Output the full contents of the uniengd log file:
% unislice /users/unison/log/eng.log
uniengd messages logged on February 7th 1995:
% unislice /users/unison/log/eng.log -s 7 feb 1995 -e feb 8 1995
eng.log messages after 1 PM, July 7:
% unislice /users/unison/log/eng.log -s july 7 13:00
eng.log messages before 9 AM, October 15, 1995:
% unislice /users/unison/log/eng.log -e oct 15 9:00 1995
eng.log messages logged in a 45-second period starting at 10 AM, January 30:
% unislice /users/unison/log/eng.log -s jan 30 10:00:00 -e jan 30 10:00:46
unisnapshot - A utility to compile Calendar Server information for diagnostic purposes.
[date] [-nolog]
unisnapshot [-s starttime] [-e endtime] [-nolog]
DESCRIPTION
unisnapshot assembles information used by support staff to diagnose most Calendar Server problems. Should a problem ever arise, only this file need be supplied to support staff.
Output is written to the snapshot.log file in the /users/unison/log directory. unisnapshot can be restricted to include log file information logged during a single day, or during a specified time period. This reduces the amount of irrelevant information in the output.
See FORMAT OF THE date ARGUMENT below for details on how to specify date.
unisnapshot can be run whether the Calendar Server is up or down.
OPTIONS
-e
endtime
Set an end time. Only log file information with time stamps prior to this time will be included in the output of unisnapshot. Thus, if an end time of January 1 is set, no information from the 1st of January will be included. endtime is a string of the same format as date.
-nolog
Prevents unisnapshot from including log file information in its output.
-s
starttime
Sets a start time. Only log file information with time stamps on or after this time will be included in the output of unisnapshot. starttime is a string of the same format as date.
-v
Print the current version number of unisnapshot.
-h
Print a usage message explaining how to run unisnapshot.
FORMATS
FORMAT OF THE date ARGUMENT
The date argument takes one of the forms:
"day month [year] [time]"
"day month [time] [year]"
"month day [year] [time]"
"month day [time] [year]"
where
day
is a number between 1 and 31;
month
is either the full name of the month or one of the following abbreviations: jan, feb, mar, apr, aug, sep, sept, oct, nov, dec (month is case-insensitive);
year
is specified using four digits; and
time
is in the form HH:MM or HH:MM:SS (HH is an integer between 0 and 23).
If no year is specified, the default is the current year.
EXAMPLES
Assemble all information:
% unisnapshot
% unisnapshot -nolog
% unisnapshot 7 feb 1998
% unisnapshot -s july 7 13:00
% unisnapshot -e oct 15 9:00 1998Assemble all information about the 45-second period starting at 10 AM, January 30:
% unisnapshot -s jan 30 10:00:00 -e jan 30 10:00:46
/users/unison/log/snapshot.logThis is the file where
unisnapshot writes its output. If a previous file exists at the time unisnapshot is invoked, it will be overwritten.
Exit values are: 0 Success 1 Failure 2 Usage error 3 User interrupt
unisnapshot may take some time to complete.
unisncdump - Retrieve statistics from the Calendar Server's unisncd daemon/service.
[-host hostname] [-n node-ID] [-p sysOpPsw] [-screen]
DESCRIPTION
unisncdump retrieves statistics from the unisncd daemon and writes them to the /users/unison/log/unisncdump.log file. Included are the number of configured and available connections for each service.
OPTIONS
-host
hostname
Specify the host on which the unisncd is located.
-n
node-ID
Specify the Calendar node. Required if more than one node exists.
-p
sysOpPsw
Provide the SYSOP password. If this option is not used, prompting for the password will occur.
-screen
Display the output on the screen instead of writing it to the log file.
-v
Print the version number of unisncdump.
-h
Print a usage message explaining how to run unisncdump.
EXAMPLES
Dump the unisncd statistics for node 11 on host oregano to the screen (the node network contains two nodes: 11 and 12).
% unisncdump -screen -n 11 -host oregano Enter SysOp password: ----------------------------------------------- DATE = Mon Sep 28 14:50:08 1998 PID = 1314 Host = oregano Service = unieng,12 Transactions: Request = 0 Check Request = 0 Cancel Request = 0 Free = 0 Connections: Configured = 2 Available = 2 Granted = 0 Request queue = 0 Failed = 0 Last failure = 0 Next attempt = 0 Attempt timeout = 0 Max wait before retry = 3840
/users/unison/log/unisncdump.logThe file
unisncdump writes to by default.
unistart - A utility to start up the Calendar Server.
[-bypass] [-nocws | -cws] [-nosnc | -snc] [-das ][-r] [-w secs] [-c] [-n] [-s]
DESCRIPTION
unistart starts the Calendar Server. The default action is to start all 5 Calendar Server daemons/services: uniengd, unilckd, unicwsd, unisncd and unidasd.
Note: -bypass, -c, -cws, -das, -n, -nosnc, -s, -snc and -w are all UNIX-only options.
OPTIONS
-bypass
By default, unicheck is run before the daemons/services are started. This option causes unistart to execute without running unicheck.
-c
Same as -cws. Included for backwards compatibility.
-cws
Starts only unicwsd, the corporate-wide services daemon/service, provided that the unilckd and uniengd daemons/services are up.
-das
Starts only unidasd, provided that the other daemons/services are up.
-n
Same as -nocws. Included for backwards compatibility.
-nocws
By default, unicwsd is started if the "enable" keyword in the [CWS] section of the unison.ini file is set to "TRUE". This option overrides this setting and prevents unicwsd from being started. If this option is used under NT, unicwsd can be brought up later by simply running unistart again without this option.
-nosnc
By default, unisncd is started if the "enable" keyword in the [SNC] section of the unison.ini file is set to "TRUE". This option overrides this setting and prevents unisncd from being started.
-r
Removes the log files act.log, cws.log, das.log, dbv.log, eng.log, lck.log, and snc.log from the /users/unison/log directory. Note that new log files are immediately created for cws.log, das.log, eng.log, lck.log, and snc.log.
-s
Same as -w. Included for backwards compatibility.
-snc
Starts only unisncd, provided that the unilckd and uniengd daemons/services are up.
-w
secs
When a process is started there is a short delay before a ps(1) command will acknowledge the existence of the process. It is therefore appropriate to sleep until a ps(1) will verify that the process is running. The default period is 2 seconds. This option can be used to override this default; the secs parameter specifies the number of seconds to sleep.
-v
Print the current version number of unistart.
-h
Print a usage message explaining how to run unistart.
EXAMPLES
Start the Calendar Server without running unicheck; remove the old log files at the same time:
% unistart -bypass -r
% unistart -nocwsStart the Corporate-Wide Services daemon/service at some later point:
% unistart -cws
unistat - A utility to produce a report on a Calendar node.
[-l | -p] [-s | -g] [-m] [-sn] node-ID
NT
unistat [-l | -p] [-s | -g] [-m] [-sn] -n node-ID
DESCRIPTION
unistat produces a report for the specified node and sends it to standard output. The user will be prompted to supply the SYSOP password for the node. The following information is included in the report:
unistat to run.
Note
unistat.
-h
unistat.
unistats - A utility to display summary statistics of the data in a Calendar stats file.
[-s starttime] [-e endtime] [-f filename] [-server version] [-client entry] [-n node-ID] [-user name | -res resource | -ruser] [-all]
DESCRIPTION
A utility to display summary statistics of the data in a Calendar Server stats file. By default the /users/unison/log/unistats.log file is used. Filters (i.e. the -server, -client, -n, -user, -res, -ruser options) may be used to compile statistics from a subset of the information in the stats file.
The default output is a summary for each unique Calendar client. Different versions of the same client are treated as separate clients, and a summary is output for each. The -all option will display a summary incorporating all clients. All output is displayed in 122-character-wide format. A complete list of all output fields is given in the OUTPUT section below.
OPTIONS
-all
Display summary incorporating all interface clients.
-client
entry
Display summary statistics on a specific Calendar client. entry is the name and version of that client. See FORMAT OF THE entry, name, AND resource ARGUMENTS below for details on how to specify entry.
-e
endtime
Specify end time for statistics. If this option is not used, the default is the current time of the current day of the current month of the current year. See TIME ARGUMENT FORMAT below for details on how to specify endtime.
-f
filename
Specify the file to be used. This file must be in the same format as the default file used by unistats, /users/unison/log/unistats.log. This option is commonly used where a file has been created from an existing unistats.log file and will be supplied as input to unistats.
-n
node-ID
Display summary statistics on a specific node. node-ID is a Calendar Server node-ID.
-res
resource
Display summary statistics on a specific resource. resource is the name and/or identification number of the resource. See FORMAT OF THE entry, name, AND resource ARGUMENTS for details on how to specify resource.
-ruser
Display summary statistics on all reserved users (ex.: SYSOP).
-s
starttime
Specify start time for statistics. If this option is not used, the default start time is "Jan 1 1991 00:00:00". See TIME ARGUMENT FORMAT below for details on how to specify starttime.
-server
version
Display summary statistics on a specific Calendar Server. version is the version number of that server (e.g. A.02.80).
-user
name
Display summary statistics on a specific user. name is some combination of the surname, given name, and organizational units of the user. See FORMAT OF THE entry, name, AND resource ARGUMENTS below for details on how to specify name.
-v
Print the current version number of unistats.
-h
Print a usage message explaining how to run unistats.
FORMATS
FORMAT OF THE entry, name, AND resource ARGUMENTS
Each of the arguments entry, name, and resource is a string of the form "key=value/key=value/...", where "key" is one of those listed below, and "value" is any string. Both "key" and "value" are case insensitive. The "value" string may be terminated by a wild card symbol (*). If a forward slash "/" is to be included in a string, it should be escaped with the character "\" to prevent it from being interpreted as a key-value pair delimiter - i.e. "S=Hoopla/OU1=R\\/D".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they should be escaped (i.e. preceded by the escape character "\") to prevent the shell from interpreting them.
Some example specifications are:
-client "N=Windows Calendar - 32 Bit/V=version 4.1"
-user "S=Carter/G=Angela"
-res "R=laptop/ID=328"
TIME ARGUMENT FORMAT
The starttime and endtime arguments may be expressed as either:
"day month [year] [time]"
or
"[month day] time [year]"
where
day
is a number between 1 and 31;
month
is either the full name of the month or the first three letters (e.g. jan, feb, mar, etc.) (month is case-insensitive);
year
must be 1991 or higher and must be specified using four digits; and
time
is in the form HH:MM or HH:MM:SS (HH is an integer between 0 and 23, MM is an integer between 0 and 59, and SS is a number between 0 and 59).
The order of the individual elements in the argument is unimportant. What is important is that either day and month be specified, or time be specified. The following are all valid examples:
Feb 22 1996 10:00:00
22 february 10:00:00
10:00:00 february 22 1996
1996 feb 22
feb 22
10:00:00
Default values for day, month, year, and time are current day, current month, current year and current system time respectively.
Any missing field in time (HH, MM, or SS) will be replaced with the current HH, MM, or SS value. E.g. if the current date and time is March 12 1998 10:41:34, and only HH:MM are specified in the argument, the SS will become "34":
-e 12:41 -> March 12 1998 12:41:34
-s 12:41 -> March 12 1998 12:41:34
If none of the time fields are specified, starttime defaults to the first minute of the day, and endtime defaults to the last minute of the day:
-s feb 22 -> feb 22 1998 00:00:00
-e feb 22 -> feb 22 1998 23:59:59
OUTPUT
All output fields displayed by unistats are explained here, in the order in which they will be seen:
EXAMPLES
Get the summary statistics of the data from the default file (/users/unison/log/unistats.log):
% unistatsGet the summary statistics of all "window" clients from the file
myfile.log:
% unistats -client "N=window*" -f myfile.logGet the summary statistics of user "Don Martin" from server "A.02.80" only:
% unistats -user "s=martin/g=don" -server "A.02.80"Get summary statistics of the resource "projector" from "motif" clients only:
% unistats -res "R=projector/ID=901" -client "N=Motif"Get summary statistics for July 19:
% unistats -s jul 19 -e jul 19Get summary statistics for all users of all clients:
% unistats -all -user "S=*"Get summary statistics of all reserved users in node 70:
% unistats -ruser -n 70
/users/unison/log/unistats.logBy default,
unistats obtains its information from this file. The "stats" parameter in the [ENG] section of the unison.ini file must be set to "TRUE" to enable logging to this file.
unistatus - A utility to determine the status of the Calendar Server.
[-f] [-d] [-s] [-q] [-n] [-e]
DESCRIPTION
By default unistatus determines which of the Calendar Server daemons/services are running and prints their current status to standard output. The -d, -f, -n, -q, and -s options do not currently function under NT.
unistatus will run whether the Calendar Server is up or down.
OPTIONS
-d
Under UNIX, this produces a report for daemon processes only.
-e
This option alters the default exit status values as described in EXIT STATUS below.
-f
Under UNIX, this option produces an extensive ps-like report, taking into account the distinction between daemons and servers. The Calendar Server may have the following daemons and servers running:
-n
Suppress the printing of the messages "CORPORATE-WIDE SERVICES are down" or "REMOTE-NODE SERVICES are down" when the unilckd and uniengd daemons/services are running but the unicwsd or unisncd daemons/services are not.
-q
Force the quiet version of the command which does not produce the usual status message.
-s
Produce a report for server processes (UNIX only).
-v
Print the current version number of unistatus.
-h
Print a usage message explaining how to run unistatus.
EXAMPLES
Run unistatus under NT.
% unistatus unistatus: unicwsd is running unistatus: unisncd is running unistatus: unidasd is running unistatus: uniengd is running unistatus: unilckd is running
Produce a report on Calendar Server processes under UNIX.
Produce a report on Calendar daemon processes under UNIX.
EXIT STATUS
The default exit values are:
0 Success
1 Failure
2 Usage error
3 User interrupt
The default exit status is:
253 interrupted
254 usage error
255 failure
0 ... 127 success with the sum of the following values:
1 if any uniengd servers are running
2 if the unicws daemon is running
4 if the uniengd daemon is running
8 if the unilckd daemon is running
16 if the unisncd daemon is running
32 if the unidasd servers are running
UNISTOP
unistop - A utility to shut down the Calendar Server.
SYNTAX
unistop [-y] [-bypass] [-ser] [-cws] [-snc] [-das] [-dass] [-w secs] [-l level] [-cl level]
DESCRIPTION
unistop will shut down all or part of a running Calendar Server. By default, all daemons/services are shut down: unicwsd, unisncd, unidasd, uniengd, and unilckd. If any users are currently signed-on, unistop will prompt for confirmation before proceeding with the shutdown.
The -bypass, -cl, -das, -dass, -l, -ser, -snc, -w, and -y options are all UNIX-only. The -l and -cl options are mutually exclusive.
unistop can only be run if the Calendar Server is at least partially up (i.e. one or more daemons/services are running).
OPTIONS
-bypass
Allow unistop to execute even if another unistart or unistop process is running.
-cl
level
Allow cycling of shutdown levels from 0 up to the specified level, when the current level fails. Thus, levels 0, 1, 2, & 3 are tried until either the specified level is reached or the shutdown is successful. The user is NOT prompted for any confirmation. Warning: a shutdown at level 3 may corrupt the Calendar Server database. See the -l option for more information.
-cws
Shut down only the corporate-wide services daemon/service (unicwsd). The unilckd and uniengd daemons/services must be running for this option to succeed.
-das
Stop only the unidasd daemons and servers.
-dass
Stop only the unidasd servers.
-l level
The shutdown levels are 0, 1, 2 and 3, with the normal level (and the default) being 0. The higher the number, the more severe the shutdown. You should always begin with 0 and only in the rare event that this fails should you proceed to 1, then 2 and finally 3.
Warning
A level 3 shutdown is guaranteed to succeed but it may corrupt the Calendar database. Contact qualified support staff before performing a shutdown at this level. unistop prompts for confirmation before proceeding with a level 3 shutdown.
-ser
Shut down only the uniengd servers. The unilckd and uniengd daemons must be running for this option to succeed. Each uniengd server is associated with a signed-on Calendar user; the uniengd daemon is always present when the Calendar Server is running. If this option is not used, both uniengd daemons and servers are shut down.
-snc
Shut down only the unisncd daemon. The unilckd and uniengd daemons must be running for this option to succeed.
-w
secs
When a process is stopped there is a short delay during which the ps(1) command continues to acknowledge the existence of the process. It is therefore necessary to sleep for a short period of time until a ps will verify that the process is no longer running. The default delay is 4 seconds. This option overrides the default; the secs parameter specifies the number of seconds to sleep.
-y
By default, if there are any users signed onto the Calendar Server, a prompt is issued to confirm that a shutdown is desired. This option causes unistop to automatically proceed with the shutdown even if there are users signed on. The shutdown of each of the active uniengd servers proceeds in such a way as to ensure the integrity of the database.
-v
Print the current version number of unistop.
-h
Print a usage message explaining how to run unistop.
EXAMPLES
Shut down the Calendar Server.
% unistop
% unistop -cws
% unistop -das
% unistop -l 1
unitzinfo - print information about a Calendar Server time zone.
[-c] [-l] [-t timezone] [-node node-ID] [-y year]
DESCRIPTION
Extracts information from the Calendar Server time zone table found in the /users/unison/misc/timezone.ini file. By default, only the information for the configured time zone and the current year used by the Calendar Server is printed in an 80-character-wide format.
unitzinfo can be run whether the Calendar Server is up or down.
OPTIONS
-c
List the time zone information by country. Time zones within a country are listed in sequence. The printed fields are:
-l
Print the information in 132-character-wide ("large") output format.
-node
node-ID
Specify the node. This option causes the information for the time zone configured for the node to be output.
-t
timezone
Specify the name of the time zone to print. If timezone has the value "all", the complete list of time zones will be printed.
-y
year
Specify the year for which the time zone information will be output (e.g. to view the DST period for that year). year must be specified using four digits. The default is the current year.
-v
Print the current version number of unitzinfo.
-h
Print a usage message explaining how to run unitzinfo.
EXAMPLES
Display the time zone information associated with node 20:
% unitzinfo -node 20 EST5EDT Eastern Standard Time, Eastern Daylight Time U.S.A. (Eastern), Canada (Eastern), Bahamas, Haiti, Turks & Caicos Hours from GMT: -5h Daylight Saving Time : -4h (Apr 4,1999 - Oct 30,1999)
/users/unison/misc/timezone.iniThis file contains the time zone descriptions used by the Calendar Server.
uniuser - A utility to list, add, or delete Calendar users, or to modify the information associated with them.
-ls [user] [-format format] -n node-ID [-p sysOpPsw]
uniuser -format format -n node-ID [-p sysOpPsw]
Addition
uniuser -add user [-s sections] -n node-ID [-p sysOpPsw]
Deletion
uniuser -del user [-y] -n node-ID [-p sysOpPsw]
uniuser -desdel user -n node-ID [-p sysOpPsw]
uniuser -grpdel user -n node-ID [-p sysOpPsw]
Modification
uniuser -mod user -s sections | -m modifier -n node-ID [-p sysOpPsw]
Multiple additions, deletions, modifications
uniuser -ex filename [-s sections] [-k] -n node-ID [-p sysOpPsw]
uniuser -edit -n node-ID [-p sysOpPsw]
Other
uniuser -s [sections] -n node-ID [-p sysOpPsw]
DESCRIPTION
uniuser is used to list, add, or delete Calendar users, and to modify the information associated with them. Details on how to specify the user argument are given in the FORMAT OF THE user ARGUMENT section below. Note that the -ls, -add, -del, and -mod options are all mutually exclusive.
The information associated with a Calendar user is a combination of the key-value pairs described in the FORMAT OF THE user ARGUMENT below, and that contained in the user.ini file. This includes user preferences, security, administrative rights, X.400 information, personal group, admin group membership and the list of persons permitted to work as a designate for the user.
The Calendar Server must be up to run uniuser.
unires is the complementary utility for resources.
OPTIONS
-add
user
Create a new Calendar user. The information associated with the new user is a combination of what is specified in the user argument and the default values contained in the [GEN] section of the user.ini file. The -s sections option may be used to apply default values only from particular sections of the user.ini file. If more than one user is added, the -ex option must be used.
The user must already exist in the directory server. The DID (Directory ID) for the user must be specified, and it must be in DN (Distinguished Name) format. This can be followed by data in X.400 format. See EXAMPLES.
-del
user
Delete the specified Calendar user. uniuser will prompt for confirmation before performing the deletion unless the -y option is used. If more than one user is to be deleted, the -ex option must used.
-desdel
user
Delete the list of designates for the specified user. If more than one user matches user, the command will fail.
-edit
This option only exists under UNIX. It allows you to first output the list of existing Calendar users to a file, then edit the file to make desired modifications, and finally to input the changes back into the node. The following sequence of commands is performed:
% uniuser -ls -n node-ID > file % vi file % uniuser -ex file -n node-ID % rm file -ex filenamePerform the additions, deletions, and/or modifications specified in the file filename. Each line of the file must begin with one of the characters '.', '#', 'A', 'a', 'D', 'd', 'M', 'm', 'S' or 's'. This initial character specifies the action to take, as follows: `.' or `#' | the line is ignored `A' or `a' | the user is added `D' or `d' | the user is deleted `M' or `m' | the user is modified 'S' or 's' | the user settings are updated from
user.ini
The initial character must be followed by a space and a user specification. In the case of a modification, the ID must be specified; it alone is used to identify the user, while the other key-value pairs specified along with it are applied as the modifications. See EXAMPLES.
For each deletion specified in the file, uniuser will prompt for confirmation before performing the deletion. The -y option is used to automatically provide confirmation.
One way to create this file is to save the output of uniuser -ls to a file. This can then be edited and input to uniuser -ex.
The -s sections option may be used with -ex to set the corresponding user information to the default values contained in the specified sections of the user.ini file.
The most common way of adding many Calendar users is to first use unidssearch to output the list of all non- Calendar users to a file. This file can then be modified (if necessary), and input to uniuser using the -ex option. unidssearch outputs in the same "key=value/key=value/...." format that uniuser requires for input. See EXAMPLES.
-format
uniuser to continue processing all lines in the file even if it encounters an error. Errors are sent to standard output; file redirection may be used to capture these to a file.
-ls
user.ini file. When used with the -m modifier option, modifications are made to the user's X.400 information.
-n
user.ini file and output information from it to standard output. By default, all sections of the user.ini file are evaluated, and all section names along with their respective "info" key-value pairs are listed.
The sections argument restricts the evaluation to only the specified sections. In this case all key-value pairs of the specified sections are output, along with any errors. The sections argument is a list of one or more section names, each separated by a forward slash (e.g. "GEN/GR1/GR2" specifies the sections GEN, GR1, and GR2). Evaluation is done from right to left, so in the above example, GR2 would be evaluated first, GR1 second, and GEN last. Where the same key appears in more than one section, the value of the first instance evaluated will take precedence.
-y
uniuser.
-h
uniuser.
"S=Hoopla/OU1=R\\/D".
If, in a UNIX environment, a shell will be processing the string (e.g. the string is provided on the command line or is passed as an argument to the utility), the string should be enclosed in quotation marks. Furthermore, if characters meaningful to the shell are included in the string, they should be escaped (i.e. preceded by the escape character "\") to prevent the shell from interpreting them.
Note
EXAMPLES
LISTINGS
List all users in node 23 whose last names begin with "W":
% uniuser -ls "s=W*" -n 23Enter SysOp password:
. S=Whitman/G=Walt/ID=154/C=US . S=Winterson/G=Jeannette/ID=114/C=EnglandList all users in node 23 whose last names begin with "W"; output only their surname and given name, separated by a colon:
% uniuser -ls "s=W*" -format "%s:%g" -n 23Enter SysOp password:
Whitman:Walt Winterson:JeannetteList all users in node 23; output their surname and given name, separated by a colon:
% uniuser -format "%s:%g" -n 23Enter SysOp password:
Brossard:Nicole Dillard:Annie Jansson:Tove Kilpi:Eeva Kundera:Milan Lorde:Audre Morrison:Toni Sanchez:Sonia Whitman:Walt Winterson:Jeannette
% uniuser -add "DID=uid=Maya Angelou, o=Acme, c=US" -n 24
% uniuser -del "S=Kilpi/G=Eeva" -n 24
[GEN] section of the user.ini file (Milan Kundera exists in node 23). Look at the values in the GEN section of the user.ini file and ensure they are all valid:
% uniuser -s "GEN" -n 23 StartDay = 08h00 EndDay = 18h00 TimeInc = 30 ShowSunday = FALSE ShowSaturday = FALSE TimeFormat = 2 RefreshFrequency = 60 DefaultReminder = 0 TimeBeforeReminder = 10 MailNotification = TRUE OU1 = OU2 = OU3 = OU4 = O = C = A = P = TimeZone = ViewNormalEvent = TIME ViewPersonalEvent = TIME ViewConfidentialEvent = TIME ViewNormalTask = NO ViewPersonalTask = NO ViewConfidentialTask = NO CanBookMe = TRUE Proceed with the modification: % uniuser -mod "S=Kundera/G=Milan" -s "GEN" -n 23 Modify Milan Kundera's OU1 value to "authors": % uniuser -mod "S=Kundera/G=Milan" -m "ou1=authors" -n 23
% unidssearch > multiple.dat % cat multiple.dat A DID=uid=Italo Calvino,o=Acme, c=US A DID=uid=Herman Hesse,o=Acme, c=US A DID=uid=Doris Lessing,o=Acme, c=US A DID=uid=Anja Kauranen,o=Acme, c=USModify the data in the file: change the country for Italo Calvino to Italy; add the modification to Walt Whitman's first name; add the deletion of Nicole Brossard.
% vi multiple.dat % cat multiple.dat A DID=uid=Italo Calvino,o=Acme, c=US/C=Italy A DID=uid=Herman Hesse,o=Acme, c=US A DID=uid=Doris Lessing,o=Acme, c=US A DID=Anja Kauranen,o=Acme, c=US M G=Walter/ID=154 D G=Nicole/S=BrossardIn the case of the modification, the ID will be used to find the user, and the given name will be modified to "Walter". Input the file to
uniuser:
% uniuser -ex multiple.dat 23 Enter SYSOP password: uniuser: added "uid=Italo Calvino,o=Acme, c=US" uniuser: added "uid=Herman Hesse,o=Acme, c=US" uniuser: added "uid=Doris Lessing,o=Acme, c=US" uniuser: added "uid=Anja Kauranen,o=Acme, c=US" uniuser: modified "Whitman,Walt" uniuser: deleted "Brossard,Nicole"
user.iniThe
/users/unison/misc/user.ini file specifies possible Calendar user configurations. See uniuser.ini for details.
[UTL] section of the unison.ini file to determine whether or not it can modify the corresponding key-value pairs for the user. For example, if "adm_modusersurname" is set to FALSE, then the value associated with the S key cannot be modified by this utility.
If no corresponding "adm_moduser<field>" for a particular key appears in the file, the utility assumes it CAN modify it.
uniuser.ini explains the format of the user.ini file and how to make modifications to it; unires unires is the complementary utility for resources.
universion - A utility to verify the version of the Calendar Server.
[-all] [-nowarn]
DESCRIPTION
universion displays the version number of the Calendar Server and checks all scripts and binaries to see if their versions are up to date.
universion can be run whether the Calendar Server is up or down.
OPTIONS
-all
Display version number for each component of the Calendar Server.
-nowarn
Suppress warning messages.
-v
Print the current version number of the Calendar Server.
-h
Print a usage message explaining how to run universion.
EXAMPLES
Display the version number of the Calendar Server and check that all of its components are up to date:
% universionDisplay the version number of the Calendar Server and each of its components; check that all components are up to date:
% universion -all
uniwhatos - A utility to determine whether the Calendar Server package will run under the current operating system.
DESCRIPTION
uniwhatos determines whether the current operating system is the one the Calendar Server package is intended to run under. If a discrepancy exists, uniwhatos outputs the operating system(s) the package will run under.
uniwhatos can be run whether the Calendar Server is up or down.
OPTIONS
-v
Print the current version number of uniwhatos.
-h
Print a usage message explaining how to run uniwhatos.
EXAMPLES
An example of uniwhatos finding no discrepancy between the actual and expected operating systems:
% uniwhatos
uniwhatos finding a discrepancy between the actual and expected operating systems:
% uniwhatos uniwhatos: package for wrong OS installed expect: HP-UX B.10.x actual: HP-UX B.9.01
uniwho - A utility to display information on signed-on Calendar users.
[-a] [-t] [-j] [-x] [-f] [-p pattern]
DESCRIPTION
This utility allows the system manager to determine who is using the Calendar Server, where they are signed-on from, and the process-ID associated with their session. The options allow the display of various combinations of process-id, network address, node-ID, and user information.
This information is essential in certain situations. For example, when a user has done an abnormal shutdown of a client (say a powerdown while their client is active) the associated server process for that client will continue to remain active for a fixed period of time. If the Calendar Server was configured (via the "max_userlogons" parameter of the [ENG] section of the unison.ini file) to limit the number of sessions per user to 1, this user would not be able to log on again until their server process had terminated. uniwho allows the system manager to find the process-ID of the session and terminate it.
uniwho can only be run if the Calendar Server is up.
OPTIONS
-a
Display the alias associated with the default network address.
-f
Display telephone, job-title and X.400-address when available.
-j
Display job-title when available.
-p
pattern
Display information for sessions which contain pattern in their information. For example, the pattern "128.192.64.96" would result in the display of session information for those logged on from this Internet address. Matching is performed on all fields (network address/alias, telephone number, job-title, X.400 address), regardless of which of these may have been specified on the command line.
-t
Display telephone number when available.
-x
Display X.400 address when available.
-v
Print the current version number of uniwho.
-h
Print a usage message explaining how to run uniwho.
EXAMPLES
Display the list of all signed-on Calendar Server users; display the machine alias rather than the network address in the output:
% uniwho -a | ||||
PID | ALIAS | NODEID | XITEMID | USER |
2120 | ark.boat.com | 12 | 12,2 | CWSOP,na |
24091 | sail.boat.com | 12 | 112,316 | Barnes,Pat,B |
24298 | row.boat.com | 12 | 12,311 | Beck,Tom,V |
Display the list of all signed-on Calendar Server users in "Quality Assurance":
% uniwho -p Quality | ||||
PID | ADDRESS | NODEID | XITEMID | USER |
24298 | 199.88.48.81 | 12 | 2,311 | Beck,Tom,V |
Display full information for all of the signed-on Calendar Server users:
EXIT STATUS
Exit values are:
0 Success
1 Failure
2 Usage error
3 User interrupt
NOTES
uniwho starts a Calendar Server process. If activity logging has been enabled (via the "activity" parameter of the [ENG] section of the unison.ini file), the start-up and shutdown of this process will be logged.