DSIDM(8)

πŸ¦‹ DSIDM(8) πŸ¦‹

okay bestie, welcome to dsidm β€” straight out of the Generated Python Manual, section 8. This is the tool that lets you boss around a 389 Directory Server instance from the command line like the main character you are. πŸ’… Grab a snack, we're going through literally everything.


✨ NAME ✨

dsidm β€” yeah. That's the name. Short, iconic, no notes. πŸ‘‘


🌸 SYNOPSIS 🌸

dsidm [-h] [-v] [-j] [-b BASEDN] [-D BINDDN] [-w BINDPW] [-W] [-y
PWDFILE] [-Z] instance
{account,group,initialise,init,organizationalunit,ou,posixgroup,user,client_config,role,service,uniquegroup}
...

like. look at all those curly braces. it's giving "choose your own adventure". 🌈


πŸŽ€ POSITIONAL ARGUMENTS πŸŽ€

so there are a bunch of subcommands you can hand to dsidm, and each one is its own little world. ranking them for you (no ranking, they're all valid, that's just vibes):

  • dsidm account β€” manage generic accounts, with tasks like modify, locking and unlocking. πŸ’œ Heads up though: this one does not create accounts. If you wanna make one, go see the user subcommand instead.
  • dsidm group β€” manage groups. The organizationalUnit (by default "ou=groups") needs to exist prior to managing groups. Groups uses the objectclass "groupOfNames" and the grouping attribute "member".
  • dsidm initialise β€” initialise a backend with domain information and sample entries. ✨
  • dsidm organizationalunit β€” manage organizational units.
  • dsidm posixgroup β€” manage posix groups. The organizationalUnit (by default ou=groups") needs to exist prior to managing posix groups.
  • dsidm user β€” manage posix users. The organizationalUnit (by default "ou=people") needs to exist prior to managing users.
  • dsidm client_config β€” display and generate client example configs for this LDAP server. πŸ–₯️
  • dsidm role β€” manage roles.
  • dsidm service β€” manage service accounts. The organizationalUnit (by default "ou=Services") needs to exist prior to managing service accounts.
  • dsidm uniquegroup β€” manage groups. The organizationalUnit (by default "ou=groups") needs to exist prior to managing groups. Unique groups uses the objectclass "groupOfUniqueNames" and the grouping attribute "uniquemember".
fr fr, that "the ou has to exist first" thing is not a suggestion. it's a vibe check you will fail otherwise. 😭

πŸ’– COMMAND 'dsidm account' πŸ’–

🌟 usage

usage: dsidm instance account [-h]
                             {list,get-by-dn,modify-by-dn,rename-by-dn,delete,lock,unlock,entry-status,subtree-status,reset_password,change_password,bulk_update}
...

okay so the account command has eleven little sub-subcommands and they're all listed up there in the curly braces. let's go one by one, bestie.


πŸ“ POSITIONAL ARGUMENTS 'dsidm account' πŸ“

  • dsidm account list β€” list accounts that could login to the directory (returns the full DN of the entry).
  • dsidm account get-by-dn β€” get-by-dn <dn>.
  • dsidm account modify-by-dn β€” modify-by-dn <dn> <add|delete|replace>:<attribute>:<value> ....
  • dsidm account rename-by-dn β€” rename the object.
  • dsidm account delete β€” deletes the account. 😬
  • dsidm account lock β€” lock.
  • dsidm account unlock β€” unlock.
  • dsidm account entry-status β€” status of a single entry.
  • dsidm account subtree-status β€” status of a subtree.
  • dsidm account reset_password β€” reset the password of an account. This should be performed by a directory admin. πŸ‘‘
  • dsidm account change_password β€” change the password of an account. This can be performed by any user (with correct rights). 🫢
  • dsidm account bulk_update β€” perform a common operation to a set of entries.

🌈 COMMAND 'dsidm account list' 🌈

🌟 usage

usage: dsidm [-v] [-j] instance account list [-h]

πŸ¦‹ COMMAND 'dsidm account get-by-dn' πŸ¦‹

🌟 usage

usage: dsidm [-v] [-j] instance account get-by-dn [-h] [dn]

🌟 arguments

  • dn β€” the dn to get and display.

πŸ’œ COMMAND 'dsidm account modify-by-dn' πŸ’œ

🌟 usage

usage: dsidm [-v] [-j] instance account modify-by-dn [-h] dn changes
[changes ...]

🌟 arguments

  • dn β€” the dn to get and display.
  • changes β€” a list of changes to apply in format: <add|delete|replace>:<attribute>:<value>.

🧚 COMMAND 'dsidm account rename-by-dn' 🧚

🌟 usage

usage: dsidm [-v] [-j] instance account rename-by-dn [-h]
[--keep-old-rdn] dn new_dn

🌟 arguments

  • dn β€” the dn to rename.
  • new_dn β€” a new role dn.

πŸ’… OPTIONS 'dsidm account rename-by-dn' πŸ’…

  • --keep-old-rdn β€” specify whether the old RDN (i.e. cn: old_role) should be kept as an attribute of the entry or not.

πŸŽ€ COMMAND 'dsidm account delete' πŸŽ€

🌟 usage

usage: dsidm [-v] [-j] instance account delete [-h] [dn]

🌟 arguments

  • dn β€” the dn of the account to delete.

πŸ”’ COMMAND 'dsidm account lock' πŸ”’

🌟 usage

usage: dsidm [-v] [-j] instance account lock [-h] [dn]

🌟 arguments

  • dn β€” the dn to lock.

πŸ”“ COMMAND 'dsidm account unlock' πŸ”“

🌟 usage

usage: dsidm [-v] [-j] instance account unlock [-h] [dn]

🌟 arguments

  • dn β€” the dn to unlock.

⭐ COMMAND 'dsidm account entry-status' ⭐

🌟 usage

usage: dsidm [-v] [-j] instance account entry-status [-h] [-V] [dn]

🌟 arguments

  • dn β€” the single entry dn to check.

πŸ’« OPTIONS 'dsidm account entry-status' πŸ’«

  • -V, --details β€” print more account policy details about the entry. more tea, more lore. 🍡

🌸 COMMAND 'dsidm account subtree-status' 🌸

🌟 usage

usage: dsidm [-v] [-j] instance account subtree-status [-h] [-V] [-f
FILTER]
                                            [-s {one,sub}] [-i]
                                            [-o BECOME_INACTIVE_ON]
                                            basedn

🌟 arguments

  • basedn β€” search base for finding entries.

🫢 OPTIONS 'dsidm account subtree-status' 🫢

  • -V, --details β€” print more account policy details about the entries.
  • -f FILTER, --filter FILTER β€” search filter for finding entries.
  • -s {one,sub}, --scope {one,sub} β€” search scope (one, sub - default is sub.
  • -i, --inactive-only β€” only display inactivated entries.
  • -o BECOME_INACTIVE_ON, --become-inactive-on BECOME_INACTIVE_ON β€” only display entries that will become inactive before specified date (in a format 2007-04-25T14:30).
note the tiny missing closing paren in "default is sub" up there β€” that's the original, we keep it, we don't touch it. 😌

πŸ”‘ COMMAND 'dsidm account reset_password' πŸ”‘

🌟 usage

usage: dsidm [-v] [-j] instance account reset_password [-h] [dn]
[new_password]

🌟 arguments

  • dn β€” the dn to reset the password for.
  • new_password β€” the new password to set.

πŸ—οΈ COMMAND 'dsidm account change_password' πŸ—οΈ

🌟 usage

usage: dsidm [-v] [-j] instance account change_password [-h]
                                                     [dn] [new_password]
                                                     [current_password]

🌟 arguments

  • dn β€” the dn to change the password for.
  • new_password β€” the new password to set.
  • current_password β€” the accounts current password.

πŸ’₯ COMMAND 'dsidm account bulk_update' πŸ’₯

🌟 usage

usage: dsidm [-v] [-j] instance account bulk_update [-h] [-f FILTER] [-s
{one,sub}] [-x]
                                                 basedn changes [changes ...]

🌟 arguments

  • basedn β€” search base for finding entries, only the children of this DN are processed.
  • changes β€” a list of changes to apply in format: <add|delete|replace>:<attribute>:<value>.

🌟 OPTIONS 'dsidm account bulk_update' 🌟

  • -f FILTER, --filter FILTER β€” search filter for finding entries, default is '(objectclass=*)'.
  • -s {one,sub}, --scope {one,sub} β€” search scope (one, sub - default is sub.
  • -x, --stop β€” stop processing updates when an error occurs. Default is False.

πŸ‘‘ COMMAND 'dsidm group' πŸ‘‘

🌟 usage

usage: dsidm instance group [-h]
                           {list,get,get_dn,create,delete,modify,rename,members,add_member,remove_member}
...

πŸŽ€ POSITIONAL ARGUMENTS 'dsidm group' πŸŽ€

  • dsidm group list β€” list.
  • dsidm group get β€” get.
  • dsidm group get_dn β€” get_dn.
  • dsidm group create β€” create.
  • dsidm group delete β€” deletes the object.
  • dsidm group modify β€” modify <add|delete|replace>:<attribute>:<value> ....
  • dsidm group rename β€” rename the object.
  • dsidm group members β€” list member dns of a group.
  • dsidm group add_member β€” add a member to a group.
  • dsidm group remove_member β€” remove a member from a group.

πŸ¦‹ COMMAND 'dsidm group list' πŸ¦‹

🌟 usage

usage: dsidm [-v] [-j] instance group list [-h] [--full-dn]

πŸ’– OPTIONS 'dsidm group list' πŸ’–

  • --full-dn β€” return the full DN of the entry instead of the RDN value.

πŸ’œ COMMAND 'dsidm group get' πŸ’œ

🌟 usage

usage: dsidm [-v] [-j] instance group get [-h] [selector]

🌟 arguments

  • selector β€” the term to search for.

🌈 COMMAND 'dsidm group get_dn' 🌈

🌟 usage

usage: dsidm [-v] [-j] instance group get_dn [-h] [dn]

🌟 arguments

  • dn β€” the dn to get.

✨ COMMAND 'dsidm group create' ✨

🌟 usage

usage: dsidm [-v] [-j] instance group create [-h] [--cn [CN]]
                                      [--description [DESCRIPTION]]

🌸 OPTIONS 'dsidm group create' 🌸

  • --cn [CN] β€” value of cn.
  • --description [DESCRIPTION] β€” value of description.

πŸ“ COMMAND 'dsidm group delete' πŸ“

🌟 usage

usage: dsidm [-v] [-j] instance group delete [-h] [dn]

🌟 arguments

  • dn β€” the dn to delete.

🧚 COMMAND 'dsidm group modify' 🧚

🌟 usage

usage: dsidm [-v] [-j] instance group modify [-h] selector changes
[changes ...]

🌟 arguments

  • selector β€” the cn to modify.
  • changes β€” a list of changes to apply in format: <add|delete|replace>:<attribute>:<value>.

πŸ’« COMMAND 'dsidm group rename' πŸ’«

🌟 usage

usage: dsidm [-v] [-j] instance group rename [-h] [--keep-old-rdn]
selector new_name

🌟 arguments

  • selector β€” the cn to rename.
  • new_name β€” a new group name.

πŸ’… OPTIONS 'dsidm group rename' πŸ’…

  • --keep-old-rdn β€” specify whether the old RDN (i.e. cn: old_group) should be kept as an attribute of the entry or not.

🫢 COMMAND 'dsidm group members' 🫢

🌟 usage

usage: dsidm [-v] [-j] instance group members [-h] [cn]

🌟 arguments

  • cn β€” cn of group to list members of.

⭐ COMMAND 'dsidm group add_member' ⭐

🌟 usage

usage: dsidm [-v] [-j] instance group add_member [-h] [cn] [dn]

🌟 arguments

  • cn β€” cn of group to add member to.
  • dn β€” dn of object to add to group as member.

πŸŽ€ COMMAND 'dsidm group remove_member' πŸŽ€

🌟 usage

usage: dsidm [-v] [-j] instance group remove_member [-h] [cn] [dn]

🌟 arguments

  • cn β€” cn of group to remove member from.
  • dn β€” dn of object to remove from group as member.

πŸ”₯ COMMAND 'dsidm initialise' πŸ”₯

🌟 usage

usage: dsidm [-v] [-j] instance initialise [-h] [--version VERSION]

✨ OPTIONS 'dsidm initialise' ✨

  • --version VERSION β€” the version of entries to create.

🌟 COMMAND 'dsidm organizationalunit' 🌟

🌟 usage

usage: dsidm [-v] [-j] instance organizationalunit [-h]
                                        {list,get,get_dn,create,delete,modify,rename}
...

πŸ’œ POSITIONAL ARGUMENTS 'dsidm organizationalunit' πŸ’œ

  • dsidm organizationalunit list β€” list.
  • dsidm organizationalunit get β€” get.
  • dsidm organizationalunit get_dn β€” get_dn.
  • dsidm organizationalunit create β€” create.
  • dsidm organizationalunit delete β€” deletes the object.
  • dsidm organizationalunit modify β€” modify <add|delete|replace>:<attribute>:<value> ....
  • dsidm organizationalunit rename β€” rename the object.

🌈 COMMAND 'dsidm organizationalunit list' 🌈

🌟 usage

usage: dsidm [-v] [-j] instance organizationalunit list [-h] [--full-dn]

πŸ’– OPTIONS 'dsidm organizationalunit list' πŸ’–

  • --full-dn β€” return the full DN of the entry instead of the RDN value.

πŸ¦‹ COMMAND 'dsidm organizationalunit get' πŸ¦‹

🌟 usage

usage: dsidm [-v] [-j] instance organizationalunit get [-h] [selector]

🌟 arguments

  • selector β€” the term to search for.

πŸ“ COMMAND 'dsidm organizationalunit get_dn' πŸ“

🌟 usage

usage: dsidm [-v] [-j] instance organizationalunit get_dn [-h] [dn]

🌟 arguments

  • dn β€” the dn to get.

🧚 COMMAND 'dsidm organizationalunit create' 🧚

🌟 usage

usage: dsidm [-v] [-j] instance organizationalunit create [-h] [--ou
[OU]]

πŸ’… OPTIONS 'dsidm organizationalunit create' πŸ’…

  • --ou [OU] β€” the value of ou, bestie. that's the whole thing, that's the option πŸ’–

🫢 COMMAND 'dsidm organizationalunit delete' 🫢

usage: dsidm [-v] [-j] instance organizationalunit delete [-h] [dn]
  • dn β€” the dn to delete. yes, that dn. say bye πŸ‘‹

✨ COMMAND 'dsidm organizationalunit modify' ✨

usage: dsidm [-v] [-j] instance organizationalunit modify [-h]
                                                          selector
                                                          changes
       [changes ...]
  • selector β€” the ou to modify, iykyk
  • changes β€” a list of changes to apply, in the format: <add|delete|replace>:<attribute>:<value> β€” literally that exact shape, don't freestyle it πŸ’…

πŸ¦‹ COMMAND 'dsidm organizationalunit rename' πŸ¦‹

usage: dsidm [-v] [-j] instance organizationalunit rename [-h]
                                                          [--keep-old-rdn]
                                                          selector
       new_name
  • selector β€” the ou to rename
  • new_name β€” a new organizational unit name ✨ fresh identity, we love a glow up

🌸 OPTIONS 'dsidm organizationalunit rename' 🌸

  • --keep-old-rdn β€” specify whether the old RDN (i.e. ou: old_ou) should be kept as an attribute of the entry or not

πŸ‘‘ COMMAND 'dsidm posixgroup' πŸ‘‘

usage: dsidm instance posixgroup [-h]
                                 {list,get,get_dn,create,delete,modify,rename}
       ...

🌈 POSITIONAL ARGUMENTS 'dsidm posixgroup' 🌈

  • dsidm posixgroup list β€” list
  • dsidm posixgroup get β€” get
  • dsidm posixgroup get_dn β€” get_dn
  • dsidm posixgroup create β€” create
  • dsidm posixgroup delete β€” deletes the object πŸ’€
  • dsidm posixgroup modify β€” modify <add|delete|replace>:<attribute>:<value> ...
  • dsidm posixgroup rename β€” rename the object

πŸ“ COMMAND 'dsidm posixgroup list' πŸ“

usage: dsidm [-v] [-j] instance posixgroup list [-h] [--full-dn]

πŸ’œ OPTIONS 'dsidm posixgroup list' πŸ’œ

  • --full-dn β€” return the full DN of the entry instead of the RDN value. the whole thing, not the lil nickname πŸŽ€

🧚 COMMAND 'dsidm posixgroup get' 🧚

usage: dsidm [-v] [-j] instance posixgroup get [-h] [selector]
  • selector β€” the term to search for πŸ”

πŸ’– COMMAND 'dsidm posixgroup get_dn' πŸ’–

usage: dsidm [-v] [-j] instance posixgroup get_dn [-h] [dn]
  • dn β€” the dn to get

⭐ COMMAND 'dsidm posixgroup create' ⭐

usage: dsidm [-v] [-j] instance posixgroup create [-h] [--cn [CN]]
                                                  [--gidNumber [GIDNUMBER]]

πŸŽ€ OPTIONS 'dsidm posixgroup create' πŸŽ€

  • --cn [CN] β€” value of cn
  • --gidNumber [GIDNUMBER] β€” value of gidNumber

πŸ’€ COMMAND 'dsidm posixgroup delete' πŸ’€

usage: dsidm [-v] [-j] instance posixgroup delete [-h] [dn]
  • dn β€” the dn to delete. gone. reduced to atoms 🫠

πŸ”₯ COMMAND 'dsidm posixgroup modify' πŸ”₯

usage: dsidm [-v] [-j] instance posixgroup modify [-h] selector changes
[changes ...]
  • selector β€” the cn to modify
  • changes β€” a list of changes to apply in format: <add|delete|replace>:<attribute>:<value>

🌸 COMMAND 'dsidm posixgroup rename' 🌸

usage: dsidm [-v] [-j] instance posixgroup rename [-h] [--keep-old-rdn]
                                                  selector new_name
  • selector β€” the cn to rename
  • new_name β€” a new posix group name

πŸ¦‹ OPTIONS 'dsidm posixgroup rename' πŸ¦‹

  • --keep-old-rdn β€” specify whether the old RDN (i.e. cn: old_group) should be kept as an attribute of the entry or not

πŸ‘‘ COMMAND 'dsidm user' πŸ‘‘

usage: dsidm instance user [-h]
                           [--user-type
       {basic,posix,service,traditional}]
                           {list,get,get-pwp,get_dn,create,modify,rename,delete}
       ...

🌈 POSITIONAL ARGUMENTS 'dsidm user' 🌈

  • dsidm user list β€” list
  • dsidm user get β€” get
  • dsidm user get-pwp β€” show the effective password policy for a user πŸ”
  • dsidm user get_dn β€” get_dn
  • dsidm user create β€” create
  • dsidm user modify β€” modify <add|delete|replace>:<attribute>:<value> ...
  • dsidm user rename β€” rename the object
  • dsidm user delete β€” deletes the object πŸ’€

✨ COMMAND 'dsidm user list' ✨

usage: dsidm [-v] [-j] instance user list [-h] [--full-dn]

πŸ’œ OPTIONS 'dsidm user list' πŸ’œ

  • --full-dn β€” return the full DN of the entry instead of the RDN value

πŸ“ COMMAND 'dsidm user get' πŸ“

usage: dsidm [-v] [-j] instance user get [-h] [selector]
  • selector β€” the term to search for

πŸ” COMMAND 'dsidm user get-pwp' πŸ”

usage: dsidm [-v] [-j] instance user get-pwp [-h] [--parent-dn
PARENT_DN] [selector]

Resolve and display the password policy (global, user local, or subtree local) that applies to the user, including all effective settings. so like, which rules are actually coming for you, no cap πŸ’…

  • selector β€” the user identifier to look up (same as user get, typically uid)

πŸŽ€ OPTIONS 'dsidm user get-pwp' πŸŽ€

  • --parent-dn PARENT_DN β€” a base DN to use for user lookups. default is "ou=people,$SUFFIX" for users, or "ou=services,$SUFFIX" for service accounts

🧚 COMMAND 'dsidm user get_dn' 🧚

usage: dsidm [-v] [-j] instance user get_dn [-h] [dn]
  • dn β€” the dn to get

⭐ COMMAND 'dsidm user create' ⭐

usage: dsidm [-v] [-j] instance user create [-h] [--uid [UID]] [--cn
[CN]]
                                    [--displayName [DISPLAYNAME]]
                                    [--uidNumber [UIDNUMBER]]
                                    [--gidNumber [GIDNUMBER]]
                                    [--homeDirectory [HOMEDIRECTORY]]

πŸ¦‹ OPTIONS 'dsidm user create' πŸ¦‹

  • --uid [UID] β€” value of uid
  • --cn [CN] β€” value of cn
  • --displayName [DISPLAYNAME] β€” value of displayName
  • --uidNumber [UIDNUMBER] β€” value of uidNumber
  • --gidNumber [GIDNUMBER] β€” value of gidNumber
  • --homeDirectory [HOMEDIRECTORY] β€” value of homeDirectory

πŸ”₯ COMMAND 'dsidm user modify' πŸ”₯

usage: dsidm [-v] [-j] instance user modify [-h] selector changes
[changes ...]
  • selector β€” the uid to modify
  • changes β€” a list of changes to apply in format: <add|delete|replace>:<attribute>:<value>

πŸ’– COMMAND 'dsidm user rename' πŸ’–

usage: dsidm [-v] [-j] instance user rename [-h] [--keep-old-rdn]
selector new_name
  • selector β€” the uid to modify
  • new_name β€” a new user name

πŸ’œ OPTIONS 'dsidm user rename' πŸ’œ

  • --keep-old-rdn β€” specify whether the old RDN (i.e. cn: old_user) should be kept as an attribute of the entry or not

πŸ’€ COMMAND 'dsidm user delete' πŸ’€

usage: dsidm [-v] [-j] instance user delete [-h] [dn]
  • dn β€” the dn to delete

🌸 OPTIONS 'dsidm user' 🌸

  • --user-type {basic,posix,service,traditional} β€” the type of user to manage. "basic" is an entry based off of objectclasses: nsPerson, nsAccount, and nsOrgPerson. "posix" is based off of objectclasses: nsPerson, nsAccount, nsOrgPerson, and posixAccount. "service" is based off of objectclasses: nsAccount and applicationProcess. "traditional", aka legacy, is based off of objectclasses: person, organizationalPerson, and inetOrgPerson. The default user type is "posix" 🫢

πŸŽ€ COMMAND 'dsidm client_config' πŸŽ€

usage: dsidm instance client_config [-h] {sssd.conf,ldap.conf,display}
...

🌈 POSITIONAL ARGUMENTS 'dsidm client_config' 🌈

  • dsidm client_config sssd.conf β€” generate a SSSD configuration for this LDAP server
  • dsidm client_config ldap.conf β€” generate an OpenLDAP ldap.conf configuration for this LDAP server
  • dsidm client_config display β€” display generic application parameters for LDAP connection

⭐ COMMAND 'dsidm client_config sssd.conf' ⭐

usage: dsidm instance client_config sssd.conf [-h] [allowed_group]
  • allowed_group β€” the name of the group allowed access to this system πŸ”

🧚 COMMAND 'dsidm client_config ldap.conf' 🧚

usage: dsidm instance client_config ldap.conf [-h]

πŸ“ COMMAND 'dsidm client_config display' πŸ“

usage: dsidm instance client_config display [-h]

πŸ‘‘ COMMAND 'dsidm role' πŸ‘‘

usage: dsidm [-v] [-j] instance role [-h]
                           {list,get,get-by-dn,create-managed,create-filtered,create-nested,modify-by-dn,rename-by-dn,delete,lock,unlock,entry-status,subtree-status}
...

🌈 POSITIONAL ARGUMENTS 'dsidm role' 🌈

  • dsidm role list β€” list roles that could login to the directory
  • dsidm role get β€” get
  • dsidm role get-by-dn β€” get-by-dn <dn>
  • dsidm role create-managed β€” create
  • dsidm role create-filtered β€” create
  • dsidm role create-nested β€” create
  • dsidm role modify-by-dn β€” modify-by-dn <dn> <add|delete|replace>:<attribute>:<value> ...
  • dsidm role rename-by-dn β€” rename the object
  • dsidm role delete β€” deletes the role πŸ’€
  • dsidm role lock β€” lock
  • dsidm role unlock β€” unlock
  • dsidm role entry-status β€” status of a single entry
  • dsidm role subtree-status β€” status of a subtree

✨ COMMAND 'dsidm role list' ✨

usage: dsidm [-v] [-j] instance role list [-h] [--full-dn]

πŸ’œ OPTIONS 'dsidm role list' πŸ’œ

  • --full-dn β€” return the full DN of the entry instead of the RDN value

πŸ” COMMAND 'dsidm role get' πŸ”

usage: dsidm [-v] [-j] instance role get [-h] [selector]
  • selector β€” the term to search for

πŸ¦‹ COMMAND 'dsidm role get-by-dn' πŸ¦‹

usage: dsidm [-v] [-j] instance role get-by-dn [-h] [dn]
  • dn β€” the dn to get and display

πŸŽ€ COMMAND 'dsidm role create-managed' πŸŽ€

usage: dsidm [-v] [-j] instance role create-managed [-h] [--cn [CN]]

🌸 OPTIONS 'dsidm role create-managed' 🌸

  • --cn [CN] β€” value of cn

πŸ¦‹ COMMAND 'dsidm role create-filtered' πŸ¦‹

usage: dsidm [-v] [-j] instance role create-filtered [-h] [--cn [CN]]

🌸 OPTIONS 'dsidm role create-filtered' 🌸

  • --cn [CN] β€” value of cn

πŸͺ† COMMAND 'dsidm role create-nested' πŸͺ†

usage: dsidm [-v] [-j] instance role create-nested [-h] [--cn [CN]]
                                                   [--nsroledn
[NSROLEDN]]

🌸 OPTIONS 'dsidm role create-nested' 🌸

  • --cn [CN] β€” value of cn
  • --nsroledn [NSROLEDN] β€” value of nsroledn

πŸ”₯ COMMAND 'dsidm role modify-by-dn' πŸ”₯

usage: dsidm [-v] [-j] instance role modify-by-dn [-h]
                                                  dn changes [changes
...
  • dn β€” the dn to modify
  • changes β€” a list of changes to apply in format: <add|delete|replace>:<attribute>:<value>

πŸ’– COMMAND 'dsidm role rename-by-dn' πŸ’–

usage: dsidm [-v] [-j] instance role rename-by-dn [-h] [--keep-old-rdn]
                                                  dn new_dn
  • dn β€” the dn to rename
  • new_dn β€” a new account dn

πŸ’œ OPTIONS 'dsidm role rename-by-dn' πŸ’œ

  • --keep-old-rdn β€” specify whether the old RDN (i.e. cn: old_account) should be kept as an attribute of the entry or not

πŸ’€ COMMAND 'dsidm role delete' πŸ’€

usage: dsidm [-v] [-j] instance role delete [-h] [dn]
  • dn β€” the dn of the role to delete

πŸ”’ COMMAND 'dsidm role lock' πŸ”’

usage: dsidm [-v] [-j] instance role lock [-h] [dn]
  • dn β€” the dn to lock

πŸ’– COMMAND 'dsidm role unlock' πŸ’–

usage: dsidm [-v] [-j] instance role unlock [-h] [dn]
  • dn β€” the dn you wanna unlock πŸ”“

πŸ” COMMAND 'dsidm role entry-status' πŸ”

usage: dsidm [-v] [-j] instance role entry-status [-h] [dn]
  • dn β€” the single entry dn to check, okay? just the one, no sneaking in a whole subtree πŸ‘€

🌳 COMMAND 'dsidm role subtree-status' 🌳

usage: dsidm [-v] [-j] instance role subtree-status [-h] [-f FILTER]
                                                    [-s {base,one,sub}]
                                                    basedn
  • basedn β€” search base for finding entries, like the little home base for your search 🏠

πŸŽ€ OPTIONS 'dsidm role subtree-status' πŸŽ€

  • -f FILTER, --filter FILTER β€” search filter for finding entries πŸ•΅οΈβ€β™€οΈ
  • -s {base,one,sub}, --scope {base,one,sub} β€” search scope (base, one, sub - default is sub 😌

πŸ› οΈ COMMAND 'dsidm service' πŸ› οΈ

usage: dsidm [-v] [-j] instance service [-h]
                             {list,get,get_dn,create,modify,rename,delete}
...

✨ POSITIONAL ARGUMENTS 'dsidm service' ✨

  • dsidm service list β€” list πŸ“‹
  • dsidm service get β€” get 🎯
  • dsidm service get_dn β€” get_dn 🧭
  • dsidm service create β€” create 🌱
  • dsidm service modify β€” modify <add|delete|replace>:<attribute>:<value> ... πŸ”§
  • dsidm service rename β€” rename the object ✏️
  • dsidm service delete β€” deletes the object πŸ—‘οΈ

πŸ“‹ COMMAND 'dsidm service list' πŸ“‹

usage: dsidm [-v] [-j] instance service list [-h] [--full-dn]

πŸ’… OPTIONS 'dsidm service list' πŸ’…

  • --full-dn β€” return the full DN of the entry instead of the RDN value, like give me the WHOLE address not just the name bestie 🏑

🎯 COMMAND 'dsidm service get' 🎯

usage: dsidm [-v] [-j] instance service get [-h] [selector]
  • selector β€” the term to search for πŸ”Ž

🧭 COMMAND 'dsidm service get_dn' 🧭

usage: dsidm [-v] [-j] instance service get_dn [-h] [dn]
  • dn β€” the dn to get, hand it over πŸ“¬

🌱 COMMAND 'dsidm service create' 🌱

usage: dsidm [-v] [-j] instance service create [-h] [--cn [CN]]
                                               [--description
[DESCRIPTION]]

πŸ“ OPTIONS 'dsidm service create' πŸ“

  • --cn [CN] β€” value of cn 🏷️
  • --description [DESCRIPTION] β€” value of description πŸ“

πŸ”§ COMMAND 'dsidm service modify' πŸ”§

usage: dsidm [-v] [-j] instance service modify [-h]
                                               selector changes [changes
...]
  • selector β€” the cn to modify 🎯
  • changes β€” a list of changes to apply, in this format: <add|delete|replace>:<attribute>:<value> 🧾

✏️ COMMAND 'dsidm service rename' ✏️

usage: dsidm [-v] [-j] instance service rename [-h] [--keep-old-rdn]
                                               selector new_name
  • selector β€” the cn to modify πŸ‘ˆ
  • new_name β€” a new service name ✨

🌸 OPTIONS 'dsidm service rename' 🌸

  • --keep-old-rdn β€” specify whether the old RDN (i.e. cn: old_service) should be kept as an attribute of the entry or not πŸ€”

πŸ—‘οΈ COMMAND 'dsidm service delete' πŸ—‘οΈ

usage: dsidm [-v] [-j] instance service delete [-h] [dn]
  • dn β€” the dn to delete, bye bye πŸ’€

πŸ‘‘ COMMAND 'dsidm uniquegroup' πŸ‘‘

usage: dsidm instance uniquegroup [-h]
                                  {list,get,get_dn,create,delete,modify,rename,members,add_member,remove_member}
...

🌈 POSITIONAL ARGUMENTS 'dsidm uniquegroup' 🌈

  • dsidm uniquegroup list β€” list πŸ“‹
  • dsidm uniquegroup get β€” get 🎯
  • dsidm uniquegroup get_dn β€” get_dn 🧭
  • dsidm uniquegroup create β€” create 🌱
  • dsidm uniquegroup delete β€” deletes the object πŸ—‘οΈ
  • dsidm uniquegroup modify β€” modify <add|delete|replace>:<attribute>:<value> ... πŸ”§
  • dsidm uniquegroup rename β€” rename the object ✏️
  • dsidm uniquegroup members β€” list member dns of a group πŸ‘―β€β™€οΈ
  • dsidm uniquegroup add_member β€” add a member to a group βž•
  • dsidm uniquegroup remove_member β€” remove a member from a group βž–

πŸ“‹ COMMAND 'dsidm uniquegroup list' πŸ“‹

usage: dsidm [-v] [-j] instance uniquegroup list [-h] [--full-dn]

πŸ’… OPTIONS 'dsidm uniquegroup list' πŸ’…

  • --full-dn β€” return the full DN of the entry instead of the RDN value, the full ✨luxury✨ version of the address 🏑

🎯 COMMAND 'dsidm uniquegroup get' 🎯

usage: dsidm [-v] [-j] instance uniquegroup get [-h] [selector]
  • selector β€” the term to search for πŸ”Ž

🧭 COMMAND 'dsidm uniquegroup get_dn' 🧭

usage: dsidm [-v] [-j] instance uniquegroup get_dn [-h] [dn]
  • dn β€” the dn to get πŸ“¬

🌱 COMMAND 'dsidm uniquegroup create' 🌱

usage: dsidm [-v] [-j] instance uniquegroup create [-h] [--cn [CN]]

πŸ“ OPTIONS 'dsidm uniquegroup create' πŸ“

  • --cn [CN] β€” value of cn 🏷️

πŸ—‘οΈ COMMAND 'dsidm uniquegroup delete' πŸ—‘οΈ

usage: dsidm [-v] [-j] instance uniquegroup delete [-h] [dn]
  • dn β€” the dn to delete πŸ’€

πŸ”§ COMMAND 'dsidm uniquegroup modify' πŸ”§

usage: dsidm [-v] [-j] instance uniquegroup modify [-h] selector changes
[changes ...]
  • selector β€” the cn to modify 🎯
  • changes β€” a list of changes to apply, in this format: <add|delete|replace>:<attribute>:<value> 🧾

✏️ COMMAND 'dsidm uniquegroup rename' ✏️

usage: dsidm [-v] [-j] instance uniquegroup rename [-h] [--keep-old-rdn]
                                         selector new_name
  • selector β€” the cn to rename πŸ‘ˆ
  • new_name β€” a new group name ✨

🌸 OPTIONS 'dsidm uniquegroup rename' 🌸

  • --keep-old-rdn β€” specify whether the old RDN (i.e. cn: old_group) should be kept as an attribute of the entry or not πŸ€”

πŸ‘―β€β™€οΈ COMMAND 'dsidm uniquegroup members' πŸ‘―β€β™€οΈ

usage: dsidm [-v] [-j] instance uniquegroup members [-h] [cn]
  • cn β€” cn of group to list members of πŸ“

βž• COMMAND 'dsidm uniquegroup add_member' βž•

usage: dsidm [-v] [-j] instance uniquegroup add_member [-h] [cn] [dn]
  • cn β€” cn of group to add member to 🫢
  • dn β€” dn of object to add to group as member πŸŽ€

βž– COMMAND 'dsidm uniquegroup remove_member' βž–

usage: dsidm [-v] [-j] instance uniquegroup remove_member [-h] [cn] [dn]
  • cn β€” cn of group to remove member from πŸ‘‹
  • dn β€” dn of object to remove from group as member πŸŒ™

✨ OPTIONS ✨

the global ones, the ones that go on every single command, no cap 🫢

  • -v, --verbose β€” display verbose operation tracing during command execution, like it tells you EVERYTHING it's doing πŸ—£οΈπŸ”₯
  • -j, --json β€” return result in a JSON object 🧾✨ (perfect for when you're piping into something, iykyk)
  • -b BASEDN, --basedn BASEDN β€” base DN (root naming context) of the instance to manage 🏠
  • -D BINDDN, --binddn BINDDN β€” the account to bind as for executing operations πŸͺͺ
  • -w BINDPW, --bindpw BINDPW β€” password for the bind DN πŸ”‘
  • -W, --prompt β€” prompt for password of the bind DN πŸ™‹β€β™€οΈ
  • -y PWDFILE, --pwdfile PWDFILE β€” specifies a file containing the password of the bind DN πŸ“
  • -Z, --starttls β€” connect with StartTLS πŸ”’
lowkey important: most of these commands take a dn or a selector and if you give them nothing they'll just do their little interactive thing instead β€” the manpage is very chill about it, so read the usage line before you go full send πŸ’…

πŸ‘‘ AUTHOR πŸ‘‘

"Red Hat, Inc., and William Brown" <389-devel@lists.fedoraproject.org> πŸ’Œ

and that's a wrap on DSIDM(8), bestie!! πŸŽ€ this whole thing is from lib389 3.3.1, dated 2026-09-11, and it lives in section DSIDM(8) of the manual. go forth and directory-server slay, you absolute icon πŸ‘‘βœ¨πŸ’–

πŸ“¦ where this page comes from