dsctlrestart
Restart an instance of Directory Server, if it is running: else start it.
dsctlstart
Start an instance of Directory Server, if it is not currently running
dsctlstop
Stop an instance of Directory Server, if it is currently running
dsctlstatus
Check running status of an instance of Directory Server
dsctlremove
Destroy an instance of Directory Server, and remove all data.
dsctldb2index
Initialise a reindex of the server database. The server must be stopped for this to proceed.
dsctldb2bak
Initialise a BDB backup of the database. The server must be stopped for this to proceed.
dsctldb2ldif
Initialise an LDIF dump of the database. The server must be stopped for this to proceed.
dsctldbverify
Perform a db verification. You should only do this at direction of support
dsctlbak2db
Restore a BDB backup of the database. The server must be stopped for this to proceed.
dsctlldif2db
Restore an LDIF dump of the database. The server must be stopped for this to proceed.
dsctlbackups
List backup's found in the server's default backup directory
dsctlldifs
List all the LDIF files located in the server's LDIF directory
dsctltls
Manage TLS certificates
dsctlhealthcheck
Run a healthcheck report on a local Directory Server instance. This is a safe and read-only
operation. Do not attempt to run this on a remote Directory Server as this tool needs access to
local resources, otherwise the report may be inaccurate.
dsctlget-nsstate
Get the replication nsState in a human readable format
Replica DN: The DN of the replication configuration entry Replica Suffix: The
replicated suffix Replica ID: The Replica identifier Gen Time The time the
CSN generator was created Gen Time String: The time string of generator Gen as CSN:
The generation CSN Local Offset: The offset due to the local clock being set back Local
Offset String: The offset in a nice human format Remote Offset: The offset due to clock
difference with remote systems Remote Offset String: The offset in a nice human format Time Skew:
The time skew between this server and its replicas Time Skew String: The time skew in a nice
human format Seq Num: The number of multiple csns within a second System Time:
The local system time Diff in Seconds: The time difference in seconds from the CSN generator
creation to now Diff in days/secs: The time difference broken up into days and seconds Endian:
Little/Big Endian
dsctlldifgen
LDIF generator to make sample LDIF files for testing
dsctldsrc
Manage the .dsrc file
dsctlcockpit
Enable the Cockpit interface/UI
dsctldblib
database library (i.e bdb/lmdb) migration
COMMAND'dsctlrestart'
usage: dsctl [-v] [-j] [instance] restart [-h]
COMMAND'dsctlstart'
usage: dsctl [-v] [-j] [instance] start [-h]
COMMAND'dsctlstop'
usage: dsctl [-v] [-j] [instance] stop [-h]
COMMAND'dsctlstatus'
usage: dsctl [-v] [-j] [instance] status [-h]
COMMAND'dsctlremove'
usage: dsctl [-v] [-j] [instance] remove [-h] [--do-it]
OPTIONS'dsctlremove'--do-it
By default we do a dry run. This actually initiates the removal of the instance.
COMMAND'dsctldb2index'
usage: dsctl [-v] [-j] [instance] db2index [-h] [--attr [ATTR ...]] [backend]
backend
The backend to reindex. IE userRoot
OPTIONS'dsctldb2index'--attr[ATTR...]
The attribute's to reindex. IE --attr aci cn givenname
COMMAND'dsctldb2bak'
usage: dsctl [-v] [-j] [instance] db2bak [-h] [archive]
archive
The destination for the archive. This will be created during the db2bak process.
COMMAND'dsctldb2ldif'
usage: dsctl [-v] [-j] [instance] db2ldif [-h] [--replication] [--encrypted]
backend [ldif]
backend
The backend to output as an LDIF. IE userRoot
ldif The path to the ldif output location.
OPTIONS'dsctldb2ldif'--replication
Export replication information, suitable for importing on a new consumer or backups.
--encrypted
Export encrypted attributes
COMMAND'dsctldbverify'
usage: dsctl [-v] [-j] [instance] dbverify [-h] backend
backend
The backend to verify. IE userRoot
COMMAND'dsctlbak2db'
usage: dsctl [-v] [-j] [instance] bak2db [-h] archive
archive
The archive to restore. This will erase all current server databases.
COMMAND'dsctlldif2db'
usage: dsctl [-v] [-j] [instance] ldif2db [-h] [--encrypted] backend ldif
backend
The backend to restore from an LDIF. IE userRoot
ldif The path to the ldif to import
OPTIONS'dsctlldif2db'--encrypted
Import encrypted attributes
COMMAND'dsctlbackups'
usage: dsctl [-v] [-j] [instance] backups [-h] [--delete DELETE]
OPTIONS'dsctlbackups'--deleteDELETE
Delete backup directory
COMMAND'dsctlldifs'
usage: dsctl [-v] [-j] [instance] ldifs [-h] [--delete DELETE]
OPTIONS'dsctlldifs'--deleteDELETE
Delete LDIF file
COMMAND'dsctltls'
usage: dsctl [-v] [-j] [instance] tls [-h]
{list-ca,list-client-ca,show-server-cert,show-cert,generate-server-cert-csr,import-client-ca,import-ca,import-server-cert,import-server-key-cert,remove-cert,export-cert}
...
POSITIONALARGUMENTS'dsctltls'dsctltlslist-ca
list server certificate authorities including intermediates
dsctltlslist-client-ca
list client certificate authorities including intermediates
dsctltlsshow-server-cert
Show the active server certificate that clients will see and verify
dsctltlsshow-cert
Show a certificate's details referenced by it's nickname. This is analogous to certutil -L -d
<path> -n <nickname>
dsctltlsgenerate-server-cert-csr
Generate a Server-Cert certificate signing request - the csr is then submitted to a CA for
verification, and when signed you import with import-ca and import-server-cert
dsctltlsimport-client-ca
Import a CA trusted to issue user (client) certificates. This is part of how client certificate
authentication functions.
dsctltlsimport-ca
Import a CA or intermediate CA for signing this servers certificates (aka Server-Cert). You should
import all the CA's in the chain as required. PEM bundles are accepted
dsctltlsimport-server-cert
Import a new Server-Cert after the csr has been signed from a CA.
dsctltlsimport-server-key-cert
Import a new key and Server-Cert after having been signed from a CA. This is used if you have an
external csr tool or a service like lets encrypt that generates PEM keys externally.
dsctltlsremove-cert
Delete a certificate from this database. This will remove it from acting as a CA, a client CA or
the Server-Cert role.
dsctltlsexport-cert
Export a certificate to PEM or DER/Binary format. PEM format is the default
COMMAND'dsctltlslist-ca'
usage: dsctl [-v] [-j] [instance] tls list-ca [-h]
COMMAND'dsctltlslist-client-ca'
usage: dsctl [-v] [-j] [instance] tls list-client-ca [-h]
COMMAND'dsctltlsshow-server-cert'
usage: dsctl [-v] [-j] [instance] tls show-server-cert [-h]
COMMAND'dsctltlsshow-cert'
usage: dsctl [-v] [-j] [instance] tls show-cert [-h] nickname
nickname
The nickname (friendly name) of the certificate to display
COMMAND'dsctltlsgenerate-server-cert-csr'
usage: dsctl [-v] [-j] [instance] tls generate-server-cert-csr
[-h] [--subject SUBJECT] [alt_names ...]
alt_names
Certificate requests subject alternative names. These are auto-detected if not provided
OPTIONS'dsctltlsgenerate-server-cert-csr'--subjectSUBJECT, -sSUBJECT
Certificate Subject field to use
COMMAND'dsctltlsimport-client-ca'
usage: dsctl [-v] [-j] [instance] tls import-client-ca [-h] cert_path nickname
cert_path
The path to the x509 cert to import as a client trust root
nickname
The name of the certificate once imported
COMMAND'dsctltlsimport-ca'
usage: dsctl [-v] [-j] [instance] tls import-ca [-h]
cert_path
nickname [nickname ...]
cert_path
The path to the x509 cert to import as a server CA
nickname
The name of the certificate once imported
COMMAND'dsctltlsimport-server-cert'
usage: dsctl [-v] [-j] [instance] tls import-server-cert [-h] cert_path
cert_path
The path to the x509 cert to import as Server-Cert
COMMAND'dsctltlsimport-server-key-cert'
usage: dsctl [-v] [-j] [instance] tls import-server-key-cert
[-h] cert_path key_path
cert_path
The path to the x509 cert to import as Server-Cert
key_path
The path to the x509 key to import associated to Server-Cert
COMMAND'dsctltlsremove-cert'
usage: dsctl [-v] [-j] [instance] tls remove-cert [-h] nickname
nickname
The name of the certificate to delete
COMMAND'dsctltlsexport-cert'
usage: dsctl [-v] [-j] [instance] tls export-cert [-h] [--binary-format]
[--output-file OUTPUT_FILE]
nickname
nickname
The name of the certificate to export
OPTIONS'dsctltlsexport-cert'--binary-format
Export certificate in DER/binary format
--output-fileOUTPUT_FILE
The name for the exported certificate. Default name is the certificate nickname with an extension
of ".pem" or ".crt"
COMMAND'dsctlhealthcheck'
usage: dsctl [instance] healthcheck [-h] [--list-checks] [--list-errors]
[--dry-run] [--check CHECK [CHECK ...]]
OPTIONS'dsctlhealthcheck'--list-checks
List of known checks
--list-errors
List of known error codes
--dry-run
Do not execute the actual check, only list what would be done
--checkCHECK[CHECK...]
Areas to check. These can be obtained by --list-checks. Every element on the left of the colon (:)
may be replaced by an asterisk if multiple options on the right are available.
COMMAND'dsctlget-nsstate'
usage: dsctl [instance] get-nsstate [-h] [--suffix SUFFIX] [--flip FLIP]
OPTIONS'dsctlget-nsstate'--suffixSUFFIX
The DN of the replication suffix to read the state from
--flipFLIP
Flip between Little/Big Endian, this might be required for certain architectures
COMMAND'dsctlldifgen'
usage: dsctl [-v] [-j] [instance] ldifgen [-h]
{users,groups,cos-def,cos-template,roles,mod-load,nested} ...
POSITIONALARGUMENTS'dsctlldifgen'dsctlldifgenusers
Generate a LDIF containing user entries
dsctlldifgengroups
Generate a LDIF containing groups and members
dsctlldifgencos-def
Generate a LDIF containing a COS definition (classic, pointer, or indirect)
dsctlldifgencos-template
Generate a LDIF containing a COS template
dsctlldifgenroles
Generate a LDIF containing a role entry (managed, filtered, or indirect)
dsctlldifgenmod-load
Generate a LDIF containing modify operations. This is intended to be consumed by ldapmodify.
dsctlldifgennested
Generate a heavily nested database LDIF in a cascading/fractal tree design
COMMAND'dsctlldifgenusers'
usage: dsctl [-v] [-j] [instance] ldifgen users [-h] [--number NUMBER]
[--suffix SUFFIX]
[--parent PARENT] [--generic]
[--start-idx START_IDX]
[--rdn-cn] [--localize]
[--ldif-file LDIF_FILE]
OPTIONS'dsctlldifgenusers'--numberNUMBER
The number of users to create.
--suffixSUFFIX
The database suffix where the entries will be created.
--parentPARENT
The parent entry that the user entries should be created under. If not specified, the entries are
stored under random Organizational Units.
--generic
Create generic entries in the format of "uid=user####". These entries are also compatible with
ldclt.
--start-idxSTART_IDX
For generic LDIF's you can choose the starting index for the user entries. The default is "0".
--rdn-cn
Use the attribute "cn" as the RDN attribute in the DN instead of "uid"
--localize
Localize the LDIF data
--ldif-fileLDIF_FILE
The LDIF file name. Default location is the server's LDIF directory using the name 'ldifgen.ldif'
COMMAND'dsctlldifgengroups'
usage: dsctl [-v] [-j] [instance] ldifgen groups [-h] [--number NUMBER]
[--suffix SUFFIX]
[--parent PARENT]
[--num-members NUM_MEMBERS]
[--create-members]
[--member-parent MEMBER_PARENT]
[--member-attr MEMBER_ATTR]
[--ldif-file LDIF_FILE]
NAME
NAME The group name.
OPTIONS'dsctlldifgengroups'--numberNUMBER
The number of groups to create.
--suffixSUFFIX
The database suffix where the groups will be created.
--parentPARENT
The parent entry that the group entries should be created under. If not specified the groups are
stored under the suffix.
--num-membersNUM_MEMBERS
The number of members in the group. Default is 10000
--create-members
Create the member user entries.
--member-parentMEMBER_PARENT
The entry DN that the members should be created under. The default is the suffix entry.
--member-attrMEMBER_ATTR
The membership attribute to use in the group. Default is "uniquemember".
--ldif-fileLDIF_FILE
The LDIF file name. Default location is the server's LDIF directory using the name 'ldifgen.ldif'
COMMAND'dsctlldifgencos-def'
usage: dsctl [-v] [-j] [instance] ldifgen cos-def [-h] [--type TYPE]
[--parent PARENT]
[--create-parent]
[--cos-specifier COS_SPECIFIER]
[--cos-template COS_TEMPLATE]
[--cos-attr [COS_ATTR ...]]
[--ldif-file LDIF_FILE]
NAME
NAME The COS definition name.
OPTIONS'dsctlldifgencos-def'--typeTYPE
The COS definition type: "classic", "pointer", or "indirect".
--parentPARENT
The parent entry that the COS definition should be created under.
--create-parent
Create the parent entry
--cos-specifierCOS_SPECIFIER
Used in a classic COS definition, this attribute located in the user entry is used to select which
COS template to use.
--cos-templateCOS_TEMPLATE
The DN of the COS template entry, only used for "classic" and "pointer" COS definitions.
--cos-attr[COS_ATTR...]
A list of attributes which defines which attribute the COS generates values for.
--ldif-fileLDIF_FILE
The LDIF file name. Default location is the server's LDIF directory using the name 'ldifgen.ldif'
COMMAND'dsctlldifgencos-template'
usage: dsctl [-v] [-j] [instance] ldifgen cos-template [-h] [--parent PARENT]
[--create-parent]
[--cos-priority COS_PRIORITY]
[--cos-attr-val COS_ATTR_VAL]
[--ldif-file LDIF_FILE]
NAME
NAME The COS template name.
OPTIONS'dsctlldifgencos-template'--parentPARENT
The DN of the entry to store the COS template entry under.
--create-parent
Create the parent entry
--cos-priorityCOS_PRIORITY
Sets the priority of this conflicting/competing COS templates.
--cos-attr-valCOS_ATTR_VAL
defines the attribute and value that the template provides.
--ldif-fileLDIF_FILE
The LDIF file name. Default location is the server's LDIF directory using the name 'ldifgen.ldif'
COMMAND'dsctlldifgenroles'
usage: dsctl [-v] [-j] [instance] ldifgen roles [-h] [--type TYPE]
[--parent PARENT]
[--create-parent]
[--filter FILTER]
[--role-dn [ROLE_DN ...]]
[--ldif-file LDIF_FILE]
NAME
NAME The Role name.
OPTIONS'dsctlldifgenroles'--typeTYPE
The Role type: "managed", "filtered", or "nested".
--parentPARENT
The DN of the entry to store the Role entry under
--create-parent
Create the parent entry
--filterFILTER
A search filter for gathering Role members. Required for a "filtered" role.
--role-dn[ROLE_DN...]
A DN of a role entry that should be included in this role. Used for "nested" roles only.
--ldif-fileLDIF_FILE
The LDIF file name. Default location is the server's LDIF directory using the name 'ldifgen.ldif'
COMMAND'dsctlldifgenmod-load'
usage: dsctl [-v] [-j] [instance] ldifgen mod-load [-h] [--create-users]
[--delete-users]
[--num-users NUM_USERS]
[--parent PARENT]
[--create-parent]
[--add-users ADD_USERS]
[--del-users DEL_USERS]
[--modrdn-users MODRDN_USERS]
[--mod-users MOD_USERS]
[--mod-attrs [MOD_ATTRS ...]]
[--randomize]
[--ldif-file LDIF_FILE]
OPTIONS'dsctlldifgenmod-load'--create-users
Create the entries that will be modified or deleted. By default the script assumes the user
entries already exist.
--delete-users
Delete all the user entries at the end of the LDIF.
--num-usersNUM_USERS
The number of user entries that will be modified or deleted
--parentPARENT
The DN of the parent entry where the user entries are located.
--create-parent
Create the parent entry
--add-usersADD_USERS
The number of additional entries to add during the load.
--del-usersDEL_USERS
The number of entries to delete during the load.
--modrdn-usersMODRDN_USERS
The number of entries to perform a modrdn operation on.
--mod-usersMOD_USERS
The number of entries to modify.
--mod-attrs[MOD_ATTRS...]
List of attributes the script will randomly choose from when modifying an entry. The default is
"description".
--randomize
Randomly perform the specified add, mod, delete, and modrdn operations
--ldif-fileLDIF_FILE
The LDIF file name. Default location is the server's LDIF directory using the name 'ldifgen.ldif'
COMMAND'dsctlldifgennested'
usage: dsctl [-v] [-j] [instance] ldifgen nested [-h] [--num-users NUM_USERS]
[--node-limit NODE_LIMIT]
[--suffix SUFFIX]
[--ldif-file LDIF_FILE]
OPTIONS'dsctlldifgennested'--num-usersNUM_USERS
The total number of user entries to create in the entire LDIF (does not include the container
entries).
--node-limitNODE_LIMIT
The total number of user entries to create under each node/subtree
--suffixSUFFIX
The suffix DN for the LDIF
--ldif-fileLDIF_FILE
The LDIF file name. Default location is the server's LDIF directory using the name 'ldifgen.ldif'
COMMAND'dsctldsrc'
usage: dsctl [-v] [-j] [instance] dsrc [-h] {create,modify,delete,display,repl-mon} ...
POSITIONALARGUMENTS'dsctldsrc'dsctldsrccreate
Generate the .dsrc file
dsctldsrcmodify
Modify the .dsrc file
dsctldsrcdelete
Delete instance configuration from the .dsrc file.
dsctldsrcdisplay
Display the contents of the .dsrc file.
dsctldsrcrepl-mon
Display the contents of the .dsrc file.
COMMAND'dsctldsrccreate'
usage: dsctl [-v] [-j] [instance] dsrc create [-h] [--uri URI]
[--basedn BASEDN]
[--people-rdn PEOPLE_RDN]
[--groups-rdn GROUPS_RDN]
[--binddn BINDDN]
[--saslmech SASLMECH]
[--tls-cacertdir TLS_CACERTDIR]
[--tls-cert TLS_CERT]
[--tls-key TLS_KEY]
[--tls-reqcert TLS_REQCERT]
[--starttls] [--pwdfile PWDFILE]
[--do-it]
OPTIONS'dsctldsrccreate'--uriURI
The URI (LDAP URL) for the Directory Server instance.
--basednBASEDN
The default database suffix.
--people-rdnPEOPLE_RDN
Set the RDN for the 'people' subtree. Default is "ou=people"
--groups-rdnGROUPS_RDN
Set the RDN for the 'groups' subtree. Default is "ou=groups"
--binddnBINDDN
The default Bind DN used or authentication.
--saslmechSASLMECH
The SASL mechanism to use: PLAIN or EXTERNAL.
--tls-cacertdirTLS_CACERTDIR
The directory containing the Trusted Certificate Authority certificate.
--tls-certTLS_CERT
The absolute file name to the server certificate.
--tls-keyTLS_KEY
The absolute file name to the server certificate key.
--tls-reqcertTLS_REQCERT
Request certificate strength: 'never', 'allow', 'hard'
--starttls
Use startTLS for connection to the server.
--pwdfilePWDFILE
The absolute path to a file containing the Bind DN's password.
--do-it
Create the file without any confirmation.
COMMAND'dsctldsrcmodify'
usage: dsctl [-v] [-j] [instance] dsrc modify [-h] [--uri [URI]]
[--basedn [BASEDN]]
[--people-rdn [PEOPLE_RDN]]
[--groups-rdn [GROUPS_RDN]]
[--binddn [BINDDN]]
[--saslmech [SASLMECH]]
[--tls-cacertdir [TLS_CACERTDIR]]
[--tls-cert [TLS_CERT]]
[--tls-key [TLS_KEY]]
[--tls-reqcert [TLS_REQCERT]]
[--starttls] [--cancel-starttls]
[--pwdfile [PWDFILE]] [--do-it]
OPTIONS'dsctldsrcmodify'--uri[URI]
The URI (LDAP URL) for the Directory Server instance.
--basedn[BASEDN]
The default database suffix.
--people-rdn[PEOPLE_RDN]
Sets the RDN used for the 'people' container
--groups-rdn[GROUPS_RDN]
Sets the RDN used for the 'groups' container
--binddn[BINDDN]
The default Bind DN used or authentication.
--saslmech[SASLMECH]
The SASL mechanism to use: PLAIN or EXTERNAL.
--tls-cacertdir[TLS_CACERTDIR]
The directory containing the Trusted Certificate Authority certificate.
--tls-cert[TLS_CERT]
The absolute file name to the server certificate.
--tls-key[TLS_KEY]
The absolute file name to the server certificate key.
--tls-reqcert[TLS_REQCERT]
Request certificate strength: 'never', 'allow', 'hard'
--starttls
Use startTLS for connection to the server.
--cancel-starttls
Do not use startTLS for connection to the server.
--pwdfile[PWDFILE]
The absolute path to a file containing the Bind DN's password.
--do-it
Update the file without any confirmation.
COMMAND'dsctldsrcdelete'
usage: dsctl [-v] [-j] [instance] dsrc delete [-h] [--do-it]
OPTIONS'dsctldsrcdelete'--do-it
Delete this instance's configuration from the .dsrc file.
COMMAND'dsctldsrcdisplay'
usage: dsctl [-v] [-j] [instance] dsrc display [-h]
COMMAND'dsctldsrcrepl-mon'
usage: dsctl [-v] [-j] [instance] dsrc repl-mon [-h]
[--add-conn ADD_CONN [ADD_CONN ...]]
[--del-conn DEL_CONN [DEL_CONN ...]]
[--add-alias ADD_ALIAS [ADD_ALIAS ...]]
[--del-alias DEL_ALIAS [DEL_ALIAS ...]]
OPTIONS'dsctldsrcrepl-mon'--add-connADD_CONN[ADD_CONN...]
Add a replica connection: 'NAME:HOST:PORT:BINDDN:CREDENTIAL'
--del-connDEL_CONN[DEL_CONN...]
delete a replica connection by its NAME
--add-aliasADD_ALIAS[ADD_ALIAS...]
Add a host/port alias: 'ALIAS_NAME:HOST:PORT'
--del-aliasDEL_ALIAS[DEL_ALIAS...]
delete a host/port alias by its ALIAS_NAME
COMMAND'dsctlcockpit'
usage: dsctl [-v] [-j] [instance] cockpit [-h]
{enable,open-firewall,disable,close-firewall} ...
POSITIONALARGUMENTS'dsctlcockpit'dsctlcockpitenable
Enable the Cockpit socket
dsctlcockpitopen-firewall
Open the firewall for the "cockpit" service
dsctlcockpitdisable
Disable the Cockpit socket
dsctlcockpitclose-firewall
Remove the "cockpit" service from the firewall settings
COMMAND'dsctlcockpitenable'
usage: dsctl [-v] [-j] [instance] cockpit enable [-h]
COMMAND'dsctlcockpitopen-firewall'
usage: dsctl [-v] [-j] [instance] cockpit open-firewall [-h] [--zone ZONE]
OPTIONS'dsctlcockpitopen-firewall'--zoneZONE
The firewall zone
COMMAND'dsctlcockpitdisable'
usage: dsctl [-v] [-j] [instance] cockpit disable [-h]
COMMAND'dsctlcockpitclose-firewall'
usage: dsctl [-v] [-j] [instance] cockpit close-firewall [-h]
COMMAND'dsctldblib'
usage: dsctl [-v] [-j] [instance] dblib [-h] {bdb2mdb,mdb2bdb,cleanup} ...
POSITIONALARGUMENTS'dsctldblib'dsctldblibbdb2mdb
Migrate bdb databases to lmdb
dsctldblibmdb2bdb
Migrate lmdb databases to bdb
dsctldblibcleanup
Remove migration ldif file and old database
COMMAND'dsctldblibbdb2mdb'
usage: dsctl [-v] [-j] [instance] dblib bdb2mdb [-h] [--tmpdir TMPDIR]
OPTIONS'dsctldblibbdb2mdb'--tmpdirTMPDIR
ldif migration files directory path.
COMMAND'dsctldblibmdb2bdb'
usage: dsctl [-v] [-j] [instance] dblib mdb2bdb [-h] [--tmpdir TMPDIR]
OPTIONS'dsctldblibmdb2bdb'--tmpdirTMPDIR
ldif migration files directory path.
COMMAND'dsctldblibcleanup'
usage: dsctl [-v] [-j] [instance] dblib cleanup [-h]