openldap/doc/man/man1/ldapmodify.1

407 lines
8.5 KiB
Groff
Raw Normal View History

2002-06-12 23:59:10 -04:00
.TH LDAPMODIFY 1 "RELEASEDATE" "OpenLDAP LDVERSION"
1999-09-12 00:41:47 -04:00
.\" $OpenLDAP$
2024-03-26 15:45:07 -04:00
.\" Copyright 1998-2024 The OpenLDAP Foundation All Rights Reserved.
1999-09-12 00:41:47 -04:00
.\" Copying restrictions apply. See COPYRIGHT/LICENSE.
1998-08-08 20:43:13 -04:00
.SH NAME
1999-08-19 13:02:36 -04:00
ldapmodify, ldapadd \- LDAP modify entry and LDAP add entry tools
1998-08-08 20:43:13 -04:00
.SH SYNOPSIS
.B ldapmodify
[\c
2012-02-23 19:57:48 -05:00
.BR \-V [ V ]]
[\c
2012-02-23 19:57:48 -05:00
.BI \-d \ debuglevel\fR]
2000-06-25 16:29:20 -04:00
[\c
.BR \-n ]
[\c
.BR \-v ]
[\c
2012-02-23 19:57:48 -05:00
.BR \-a ]
[\c
.BR \-c ]
[\c
.BI \-f \ file\fR]
[\c
.BI \-i \ time\fR]
[\c
.BI \-j \ lineno\fR]
[\c
2012-02-23 19:57:48 -05:00
.BI \-S \ file\fR]
[\c
2009-06-02 20:43:44 -04:00
.BR \-M [ M ]]
[\c
2012-02-23 19:57:48 -05:00
.BR \-x ]
[\c
.BI \-D \ binddn\fR]
[\c
.BR \-W ]
[\c
.BI \-w \ passwd\fR]
[\c
2002-08-24 02:19:39 -04:00
.BI \-y \ passwdfile\fR]
[\c
2000-08-25 01:31:59 -04:00
.BI \-H \ ldapuri\fR]
[\c
2009-06-02 20:43:44 -04:00
.BR \-P \ { 2 \||\| 3 }]
1998-12-27 09:08:46 -05:00
[\c
.BR \-e \ [ ! ] \fIext\fP [ =\fIextparam\fP ]]
[\c
.BR \-E \ [ ! ] \fIext\fP [ =\fIextparam\fP ]]
[\c
2012-02-23 19:57:48 -05:00
.BI \-o \ opt \fR[= optparam \fR]]
[\c
2009-06-02 20:43:44 -04:00
.BI \-O \ security-properties\fR]
[\c
2000-07-16 22:43:41 -04:00
.BR \-I ]
[\c
.BR \-Q ]
[\c
2012-02-23 19:57:48 -05:00
.BR \-N ]
[\c
2001-01-18 03:04:56 -05:00
.BI \-U \ authcid\fR]
[\c
2002-09-02 15:25:10 -04:00
.BI \-R \ realm\fR]
[\c
.BI \-X \ authzid\fR]
[\c
.BI \-Y \ mech\fR]
[\c
2009-06-02 20:43:44 -04:00
.BR \-Z [ Z ]]
1998-08-08 20:43:13 -04:00
.LP
.B ldapadd
[\c
2012-02-23 19:57:48 -05:00
.BR \-V [ V ]]
[\c
2012-02-23 19:57:48 -05:00
.BI \-d \ debuglevel\fR]
[\c
.BR \-n ]
[\c
.BR \-v ]
[\c
2012-02-23 19:57:48 -05:00
.BR \-c ]
[\c
.BI \-f \ file\fR]
[\c
.BI \-i \ time\fR]
[\c
.BI \-j \ lineno\fR]
[\c
2012-02-23 19:57:48 -05:00
.BI \-S \ file\fR]
[\c
2009-06-02 20:43:44 -04:00
.BR \-M [ M ]]
[\c
2012-02-23 19:57:48 -05:00
.BR \-x ]
[\c
.BI \-D \ binddn\fR]
[\c
.BR \-W ]
[\c
.BI \-w \ passwd\fR]
[\c
2002-08-24 02:19:39 -04:00
.BI \-y \ passwdfile\fR]
[\c
.BI \-H \ ldapuri\fR]
[\c
2009-06-02 20:43:44 -04:00
.BR \-P \ { 2 \||\| 3 }]
[\c
2012-02-23 19:57:48 -05:00
.BR \-e \ [ ! ] \fIext\fP [ =\fIextparam\fP ]]
[\c
.BR \-E \ [ ! ] \fIext\fP [ =\fIextparam\fP ]]
[\c
.BI \-o \ opt \fR[= optparam \fR]]
[\c
2009-06-02 20:43:44 -04:00
.BI \-O \ security-properties\fR]
[\c
2000-09-07 13:58:05 -04:00
.BR \-I ]
[\c
.BR \-Q ]
[\c
2012-02-23 19:57:48 -05:00
.BR \-N ]
[\c
2001-01-18 03:04:56 -05:00
.BI \-U \ authcid\fR]
[\c
2002-09-02 15:25:10 -04:00
.BI \-R \ realm\fR]
[\c
.BI \-X \ authzid\fR]
[\c
.BI \-Y \ mech\fR]
[\c
2009-06-02 20:43:44 -04:00
.BR \-Z [ Z ]]
1998-08-08 20:43:13 -04:00
.SH DESCRIPTION
.B ldapmodify
is a shell-accessible interface to the
2006-06-13 20:28:16 -04:00
.BR ldap_add_ext (3),
.BR ldap_modify_ext (3),
.BR ldap_delete_ext (3)
1998-08-08 20:43:13 -04:00
and
2006-06-13 20:28:16 -04:00
.BR ldap_rename (3).
1998-08-08 20:43:13 -04:00
library calls.
.B ldapadd
is implemented as a hard link to the ldapmodify tool. When invoked as
.B ldapadd
2009-06-02 20:43:44 -04:00
the \fB\-a\fP (add new entry) flag is turned on automatically.
1998-08-08 20:43:13 -04:00
.LP
.B ldapmodify
opens a connection to an LDAP server, binds, and modifies or adds entries.
The entry information is read from standard input or from \fIfile\fP through
2009-06-02 20:43:44 -04:00
the use of the \fB\-f\fP option.
1998-08-08 20:43:13 -04:00
.SH OPTIONS
.TP
2012-02-23 19:57:48 -05:00
.BR \-V [ V ]
Print version info.
If \fB\-VV\fP is given, only the version information is printed.
.TP
.BI \-d \ debuglevel
Set the LDAP debugging level to \fIdebuglevel\fP.
.B ldapmodify
must be compiled with LDAP_DEBUG defined for this option to have any effect.
.TP
.B \-n
Show what would be done, but don't actually modify entries. Useful for
debugging in conjunction with \fB\-v\fP.
.TP
.B \-v
Use verbose mode, with many diagnostics written to standard output.
.TP
1998-08-08 20:43:13 -04:00
.B \-a
Add new entries. The default for
.B ldapmodify
is to modify existing entries. If invoked as
.BR ldapadd ,
this flag is always set.
.TP
.B \-c
Continuous operation mode. Errors are reported, but
.B ldapmodify
will continue with modifications. The default is to exit after
reporting an error.
.TP
2012-02-23 19:57:48 -05:00
.BI \-f \ file
Read the entry modification information from \fIfile\fP instead of from
standard input.
.TP
.BI \-i \ time
Wait \fItime\fP microseconds before issuing an operation.
.TP
.BI \-j \ lineno
Jump to the specified line number in the LDIF file before processing any entries.
This allows a load that was aborted due to errors in the input LDIF to be resumed
after the errors are corrected.
.TP
.BI \-S \ file
2011-11-09 16:22:06 -05:00
Add or change records which were skipped due to an error are written to \fIfile\fP
and the error message returned by the server is added as a comment. Most useful in
2009-06-02 20:43:44 -04:00
conjunction with \fB\-c\fP.
.TP
2009-06-02 20:43:44 -04:00
.BR \-M [ M ]
Enable manage DSA IT control.
.B \-MM
makes control critical.
.TP
2000-07-15 20:52:04 -04:00
.B \-x
Use simple authentication instead of SASL.
.TP
.BI \-D \ binddn
2000-08-20 02:21:38 -04:00
Use the Distinguished Name \fIbinddn\fP to bind to the LDAP directory.
2009-06-02 20:43:44 -04:00
For SASL binds, the server is expected to ignore this value.
1998-08-08 20:43:13 -04:00
.TP
.B \-W
Prompt for simple authentication.
This is used instead of specifying the password on the command line.
.TP
.BI \-w \ passwd
1998-08-08 20:43:13 -04:00
Use \fIpasswd\fP as the password for simple authentication.
.TP
2002-08-24 02:19:39 -04:00
.BI \-y \ passwdfile
Use complete contents of \fIpasswdfile\fP as the password for
simple authentication.
.TP
2000-08-25 01:31:59 -04:00
.BI \-H \ ldapuri
2005-04-07 15:57:38 -04:00
Specify URI(s) referring to the ldap server(s); only the protocol/host/port
fields are allowed; a list of URI, separated by whitespace or commas
is expected.
2000-08-25 01:31:59 -04:00
.TP
2009-06-02 20:43:44 -04:00
.BR \-P \ { 2 \||\| 3 }
1998-12-27 09:08:46 -05:00
Specify the LDAP protocol version to use.
.TP
.BR \-e \ [ ! ] \fIext\fP [ =\fIextparam\fP ]
.TP
.BR \-E \ [ ! ] \fIext\fP [ =\fIextparam\fP ]
2011-01-04 16:45:01 -05:00
Specify general extensions with \fB\-e\fP and modify extensions with \fB\-E\fP.
\'\fB!\fP\' indicates criticality.
General extensions:
.nf
2011-01-04 16:45:01 -05:00
[!]assert=<filter> (an RFC 4515 Filter)
!authzid=<authzid> ("dn:<dn>" or "u:<user>")
[!]bauthzid (RFC 3829 authzid control)
[!]chaining[=<resolve>[/<cont>]]
[!]manageDSAit
[!]noop
ppolicy
2011-01-04 16:45:01 -05:00
[!]postread[=<attrs>] (a comma-separated attribute list)
[!]preread[=<attrs>] (a comma-separated attribute list)
[!]relax
sessiontracking[=<username>]
2011-01-04 16:45:01 -05:00
abandon,cancel,ignore (SIGINT sends abandon/cancel,
or ignores response; if critical, doesn't wait for SIGINT.
not really controls)
.fi
2011-01-04 16:45:01 -05:00
Modify extensions:
.nf
2011-01-04 16:45:01 -05:00
[!]txn[=abort|commit]
.fi
.TP
2012-02-23 19:57:48 -05:00
.BI \-o \ opt \fR[= optparam \fR]]
Specify any
.BR ldap.conf (5)
option or one of the following:
.nf
nettimeout=<timeout> (in seconds, or "none" or "max")
ldif_wrap=<width> (in columns, or "no" for no wrapping)
.fi
.TP
2012-02-23 19:57:48 -05:00
.BI \-O \ security-properties
Specify SASL security properties.
.TP
2000-07-16 22:43:41 -04:00
.B \-I
Enable SASL Interactive mode. Always prompt. Default is to prompt
only as needed.
.TP
.B \-Q
Enable SASL Quiet mode. Never prompt.
.TP
2012-02-23 19:57:48 -05:00
.B \-N
Do not use reverse DNS to canonicalize SASL host name.
.TP
2001-01-18 03:04:56 -05:00
.BI \-U \ authcid
Specify the authentication ID for SASL bind. The form of the ID
depends on the actual SASL mechanism used.
.TP
2002-09-02 15:25:10 -04:00
.BI \-R \ realm
Specify the realm of authentication ID for SASL bind. The form of the realm
depends on the actual SASL mechanism used.
.TP
.BI \-X \ authzid
Specify the requested authorization ID for SASL bind.
.I authzid
must be one of the following formats:
2009-06-02 20:43:44 -04:00
.BI dn: "<distinguished name>"
or
2009-06-02 20:43:44 -04:00
.BI u: <username>
.TP
.BI \-Y \ mech
Specify the SASL mechanism to be used for authentication. If it's not
specified, the program will choose the best mechanism the server knows.
.TP
2009-06-02 20:43:44 -04:00
.BR \-Z [ Z ]
Issue StartTLS (Transport Layer Security) extended operation. If you use
.B \-ZZ\c
, the command will require the operation to be successful.
1998-08-08 20:43:13 -04:00
.SH INPUT FORMAT
2009-06-02 20:43:44 -04:00
The contents of \fIfile\fP (or standard input if no \fB\-f\fP flag is given on
the command line) must conform to the format defined in
1998-08-08 20:43:13 -04:00
.BR ldif (5)
2008-01-09 11:22:36 -05:00
(LDIF as defined in RFC 2849).
1998-08-08 20:43:13 -04:00
.SH EXAMPLES
Assuming that the file
.B /tmp/entrymods
exists and has the contents:
.LP
.nf
2001-09-03 22:41:53 -04:00
dn: cn=Modify Me,dc=example,dc=com
1998-08-08 20:43:13 -04:00
changetype: modify
replace: mail
mail: modme@example.com
2009-06-02 20:43:44 -04:00
\-
1998-08-08 20:43:13 -04:00
add: title
title: Grand Poobah
2009-06-02 20:43:44 -04:00
\-
1998-08-08 20:43:13 -04:00
add: jpegPhoto
2003-04-22 23:32:05 -04:00
jpegPhoto:< file:///tmp/modme.jpeg
2009-06-02 20:43:44 -04:00
\-
1998-08-08 20:43:13 -04:00
delete: description
2009-06-02 20:43:44 -04:00
\-
1998-08-08 20:43:13 -04:00
.fi
.LP
the command:
.LP
.nf
2009-06-02 20:43:44 -04:00
ldapmodify \-f /tmp/entrymods
1998-08-08 20:43:13 -04:00
.fi
.LP
will replace the contents of the "Modify Me" entry's
.I mail
2000-08-20 23:09:53 -04:00
attribute with the value "modme@example.com", add a
1998-08-08 20:43:13 -04:00
.I title
of "Grand Poobah", and the contents of the file "/tmp/modme.jpeg"
as a
.IR jpegPhoto ,
and completely remove the
.I description
attribute.
.LP
Assuming that the file
.B /tmp/newentry
exists and has the contents:
.LP
.nf
2001-09-03 22:41:53 -04:00
dn: cn=Barbara Jensen,dc=example,dc=com
1998-08-08 20:43:13 -04:00
objectClass: person
cn: Barbara Jensen
cn: Babs Jensen
sn: Jensen
title: the world's most famous mythical manager
2000-08-20 23:09:53 -04:00
mail: bjensen@example.com
1998-08-08 20:43:13 -04:00
uid: bjensen
.fi
1998-08-08 20:43:13 -04:00
.LP
the command:
.LP
.nf
2009-06-02 20:43:44 -04:00
ldapadd \-f /tmp/newentry
1998-08-08 20:43:13 -04:00
.fi
.LP
will add a new entry for Babs Jensen, using the values from the
file
.B /tmp/newentry.
.LP
Assuming that the file
2003-05-24 01:20:15 -04:00
.B /tmp/entrymods
1998-08-08 20:43:13 -04:00
exists and has the contents:
.LP
.nf
2001-09-03 22:41:53 -04:00
dn: cn=Barbara Jensen,dc=example,dc=com
1998-08-08 20:43:13 -04:00
changetype: delete
.fi
1998-08-08 20:43:13 -04:00
.LP
the command:
.LP
.nf
2009-06-02 20:43:44 -04:00
ldapmodify \-f /tmp/entrymods
1998-08-08 20:43:13 -04:00
.fi
.LP
will remove Babs Jensen's entry.
.SH DIAGNOSTICS
2000-08-20 23:09:53 -04:00
Exit status is zero if no errors occur. Errors result in a non-zero
exit status and a diagnostic message being written to standard error.
1998-08-08 20:43:13 -04:00
.SH "SEE ALSO"
.BR ldapadd (1),
.BR ldapdelete (1),
.BR ldapmodrdn (1),
.BR ldapsearch (1),
.BR ldap.conf (5),
1998-08-08 20:43:13 -04:00
.BR ldap (3),
2006-06-13 20:28:16 -04:00
.BR ldap_add_ext (3),
.BR ldap_delete_ext (3),
.BR ldap_modify_ext (3),
.BR ldap_modrdn_ext (3),
.BR ldif (5).
2000-07-13 18:54:45 -04:00
.SH AUTHOR
The OpenLDAP Project <http://www.openldap.org/>
1998-10-24 21:41:42 -04:00
.SH ACKNOWLEDGEMENTS
2006-06-13 20:28:16 -04:00
.so ../Project