1SLAPSCHEMA(8C)                                                  SLAPSCHEMA(8C)
2
3
4

NAME

6       slapschema - SLAPD in-database schema checking utility
7

SYNOPSIS

9       /usr/sbin/slapschema   [-afilter]   [-bsuffix]   [-c]   [-ddebug-level]
10       [-fslapd.conf] [-Fconfdir] [-g] [-HURI] [-lerror-file] [-ndbnum] [-oop‐
11       tion[=value]] [-ssubtree-dn] [-v]
12

DESCRIPTION

14       Slapschema  is  used  to  check  schema compliance of the contents of a
15       slapd(8) database.  It opens the given database determined by the data‐
16       base  number  or  suffix and checks the compliance of its contents with
17       the corresponding schema. Errors are written to standard output or  the
18       specified  file.   Databases  configured as subordinate of this one are
19       also output, unless -g is specified.
20
21       Administrators may need to  modify  existing  schema  items,  including
22       adding  new  required  attributes  to  objectClasses, removing existing
23       required or allowed attributes from  objectClasses,  entirely  removing
24       objectClasses,  or any other change that may result in making perfectly
25       valid entries no longer compliant with the modified schema.  The execu‐
26       tion  of  the  slapschema tool after modifying the schema can point out
27       inconsistencies that would otherwise  surface  only  when  inconsistent
28       entries need to be modified.
29
30
31       The  entry  records  are  checked in database order, not superior first
32       order.  The entry records will be checked  considering  all  (user  and
33       operational)  attributes stored in the database.  Dynamically generated
34       attributes (such as subschemaSubentry) will not be considered.
35

OPTIONS

37       -a filter
38              Only check entries matching the asserted filter.  For example
39
40              slapschema -a \
41                  "(!(entryDN:dnSubtreeMatch:=ou=People,dc=example,dc=com))"
42
43              will check all but the "ou=People,dc=example,dc=com" subtree  of
44              the    "dc=example,dc=com"   database.    Deprecated;   use   -H
45              ldap:///???(filter) instead.
46
47       -b suffix
48              Use the specified suffix to determine which database  to  check.
49              The -b cannot be used in conjunction with the -n option.
50
51       -c     Enable continue (ignore errors) mode.
52
53       -d debug-level
54              Enable  debugging  messages  as  defined by the specified debug-
55              level; see slapd(8) for details.
56
57       -f slapd.conf
58              Specify an alternative slapd.conf(5) file.
59
60       -F confdir
61              specify a config directory.  If both -f and  -F  are  specified,
62              the  config  file will be read and converted to config directory
63              format and written  to  the  specified  directory.   If  neither
64              option  is  specified,  an  attempt  to  read the default config
65              directory will be made before trying to use the  default  config
66              file. If a valid config directory exists then the default config
67              file is ignored.
68
69       -g     disable subordinate gluing.  Only the specified database will be
70              processed, and not its glued subordinates (if any).
71
72       -H  URI
73              use  dn,  scope  and  filter  from  URI  to only handle matching
74              entries.
75
76       -l error-file
77              Write errors to specified file instead of standard output.
78
79       -n dbnum
80              Check the dbnum-th database listed in  the  configuration  file.
81              The  config  database slapd-config(5), is always the first data‐
82              base, so use -n 0
83
84              The -n cannot be used in conjunction with the -b option.
85
86       -o option[=value]
87              Specify an option with a(n optional)  value.   Possible  generic
88              options/values are:
89
90                     syslog=<subsystems>  (see `-s' in slapd(8))
91                     syslog-level=<level> (see `-S' in slapd(8))
92                     syslog-user=<user>   (see `-l' in slapd(8))
93
94
95       -s subtree-dn
96              Only check entries in the subtree specified by this DN.  Implies
97              -b subtree-dn if no -b nor -n option is given.  Deprecated;  use
98              -H ldap:///subtree-dn instead.
99
100       -v     Enable verbose mode.
101

LIMITATIONS

103       For  some backend types, your slapd(8) should not be running (at least,
104       not in read-write mode) when you do this to ensure consistency  of  the
105       database.  It  is  always safe to run slapschema with the slapd-bdb(5),
106       slapd-hdb(5), and slapd-null(5) backends.
107

EXAMPLES

109       To check the schema compliance of your SLAPD database  after  modifica‐
110       tions  to  the  schema, and put any error in a file called errors.ldif,
111       give the command:
112
113            /usr/sbin/slapschema -l errors.ldif
114

SEE ALSO

116       ldap(3), ldif(5), slapd(8)
117
118       "OpenLDAP Administrator's Guide" (http://www.OpenLDAP.org/doc/admin/)
119

ACKNOWLEDGEMENTS

121       OpenLDAP Software is developed and maintained by The  OpenLDAP  Project
122       <http://www.openldap.org/>.  OpenLDAP Software is derived from the Uni‐
123       versity of Michigan LDAP 3.3 Release.
124
125
126
127OpenLDAP 2.4.47                   2018/12/19                    SLAPSCHEMA(8C)
Impressum