1 .TH LDAPMODIFY 1 "10 November 1998" "OpenLDAP LDVERSION"
3 ldapmodify, ldapadd \- ldap modify entry and ldap add entry tools
21 .BI \-d \ debuglevel\fR]
29 .BI \-h \ ldaphost\fR]
31 .BI \-p \ ldapport\fR]
33 .BI \-P \ 2\fR\||\|\fI3\fR]
53 .BI \-d \ debuglevel\fR]
59 .BI \-h \ ldaphost\fR]
61 .BI \-p \ ldapport\fR]
66 is a shell-accessible interface to the
72 is implemented as a hard link to the ldapmodify tool. When invoked as
74 the -a (add new entry) flag is turned on automatically.
77 opens a connection to an LDAP server, binds, and modifies or adds entries.
78 The entry information is read from standard input or from \fIfile\fP through
79 the use of the -f option.
83 Add new entries. The default for
85 is to modify existing entries. If invoked as
87 this flag is always set.
90 Assume that any values that start with a `/' are binary values and that
91 the actual value is in a file whose path is specified in the place where
92 values normally appear.
95 Continuous operation mode. Errors are reported, but
97 will continue with modifications. The default is to exit after
101 Replace existing values by default.
104 Show what would be done, but don't actually modify entries. Useful for
105 debugging in conjunction with -v.
108 Use verbose mode, with many diagnostics written to standard output.
111 Use Kerberos authentication instead of simple authentication. It is
112 assumed that you already have a valid ticket granting ticket. You must
113 compile with KERBEROS defined for this option to have any effect.
116 Same as \-k, but only does step 1 of the kerberos bind. This is useful
117 when connecting to a slapd and there is no x500dsa.hostname principal
118 registered with your kerberos servers.
121 Force application of all changes regardless of the contents of input
122 lines that begin with
124 (by default, replica: lines are compared against the LDAP server host
125 and port in use to decide if a replog record should actually be applied).
128 Set the LDAP debugging level to \fIdebuglevel\fP.
130 must be compiled with LDAP_DEBUG defined for this option to have any effect.
133 Read the entry modification information from \fIfile\fP instead of from
137 Use \fIbinddn\fP to bind to the LDAP directory. \fIbinddn\fP should be
138 a string-represented DN as defined in RFC 1779.
141 Prompt for simple authentication.
142 This is used instead of specifying the password on the command line.
145 Use \fIpasswd\fP as the password for simple authentication.
148 Specify an alternate host on which the ldap server is running.
151 Specify an alternate TCP port where the ldap server is listening.
153 .BI \-P \ 2\fR\||\|\fI3
154 Specify the LDAP protocol version to use.
156 The contents of \fIfile\fP (or standard input if no \-f flag is given on
157 the command line) should conform to the format defined in
158 .BR slapd.replog (5),
159 with the exceptions noted below.
161 If the first line of a record consists of a decimal number (entry id),
164 Lines that begin with "replica:" are matched against the LDAP server host
165 and port in use to decide if a particular replog record should be applied.
166 Any other lines that precede the "dn:" line are ignored.
167 The -F flag can be used to force
169 to apply all of the replog changes, regardless of the presence or
170 absence of any "replica:" lines.
172 If no "changetype:" line is present, the default is "add" if the -a
173 flag is set (or if the program was invoked as
175 and "modify" otherwise.
177 If changetype is "modify" and no "add:", "replace:", or "delete:" lines
178 appear, the default is "replace" if the -r flag is set and "add"
181 Note that the above exceptions to the
185 entries to be used as input to
189 .SH ALTERNATIVE INPUT FORMAT
190 An alternative input format is supported for compatibility with older
193 This format consists of one or more entries separated by blank lines,
194 where each entry looks like:
197 Distinguished Name (DN)
202 where \fIattr\fP is the name of the attribute and \fIvalue\fP is the
205 By default, values are added. If the
208 given, the default is to replace existing values with the new one.
209 Note that it is permissible for a given attribute to appear more than
210 once (for example, to add more than one value for an attribute). Also
211 note that you can use a trailing `\\' to continue values across lines and
212 preserve newlines in the value itself (this is useful for modifying
213 QUIPU iattr attributes among others).
216 should be preceded by a \fB-\fP to remove a value. The `=' and
217 value should be omitted to remove an entire attribute.
220 should be preceded by a \fB+\fP to add a value in the presence of the
224 Assuming that the file
226 exists and has the contents:
229 dn: cn=Modify Me, o=University of Michigan, c=US
232 mail: modme@terminator.rs.itd.umich.edu
238 jpegPhoto: /tmp/modme.jpeg
247 ldapmodify -b -r -f /tmp/entrymods
250 will replace the contents of the "Modify Me" entry's
252 attribute with the value "modme@terminator.rs.itd.umich.edu", add a
254 of "Grand Poobah", and the contents of the file "/tmp/modme.jpeg"
257 and completely remove the
260 The same modifications as above can be performed using the older
265 cn=Modify Me, o=University of Michigan, c=US
266 mail=modme@terminator.rs.itd.umich.edu
268 +jpegPhoto=/tmp/modme.jpeg
275 ldapmodify -b -r -f /tmp/entrymods
278 Assuming that the file
280 exists and has the contents:
283 dn: cn=Barbara Jensen, o=University of Michigan, c=US
288 title: the world's most famous mythical manager
289 mail: bjensen@terminator.rs.itd.umich.edu
295 ldapadd -f /tmp/entrymods
298 will add a new entry for Babs Jensen, using the values from the
302 Assuming that the file
304 exists and has the contents:
307 dn: cn=Barbara Jensen, o=University of Michigan, c=US
313 ldapmodify -f /tmp/entrymods
316 will remove Babs Jensen's entry.
318 Exit status is 0 if no errors occur. Errors result in a non-zero exit
319 status and a diagnostic message being written to standard error.
334 .IR "A String Representation of Distinguished Names",
337 ISODE Consortium, March 1995.
339 There is no interactive mode, but there probably should be.
342 is developed and maintained by The OpenLDAP Project (http://www.openldap.org/).
344 is derived from University of Michigan LDAP 3.3 Release.