Next update of VFS modules development guide
[bbaumbach/samba-autobuild/.git] / docs / Samba3-HOWTO / TOSHARG-NT4Migration.xml
1 <?xml version="1.0" encoding="iso-8859-1"?>
2 <!DOCTYPE chapter PUBLIC "-//Samba-Team//DTD DocBook V4.2-Based Variant V1.0//EN" "http://www.samba.org/samba/DTD/samba-doc">
3 <chapter id="NT4Migration">
4 <chapterinfo>
5         &author.jht;
6         <pubdate>April 3, 2003</pubdate>
7 </chapterinfo>
8
9 <title>Migration from NT4 PDC to Samba-3 PDC</title>
10
11 <para>
12 <indexterm><primary>migrate</primary></indexterm>
13 <indexterm><primary>domain control</primary></indexterm>
14 This is a rough guide to assist those wishing to migrate from NT4 domain control to
15 Samba-3-based domain control.
16 </para>
17
18 <sect1>
19 <title>Planning and Getting Started</title>
20
21 <para>
22 <indexterm><primary>show-stopper-type</primary></indexterm>
23 In the IT world there is often a saying that all problems are encountered because of
24 poor planning. The corollary to this saying is that not all problems can be anticipated
25 and planned for. Then again, good planning will anticipate most show-stopper-type situations.
26 </para>
27
28 <para>
29 <indexterm><primary>migration plan</primary></indexterm>
30 Those wishing to migrate from MS Windows NT4 domain control to a Samba-3 domain control
31 environment would do well to develop a detailed migration plan. So here are a few pointers to
32 help migration get underway.
33 </para>
34
35 <sect2>
36 <title>Objectives</title>
37
38 <para>
39 <indexterm><primary>migration process</primary></indexterm>
40 The key objective for most organizations is to make the migration from MS Windows NT4 
41 to Samba-3 domain control as painless as possible. One of the challenges you may experience
42 in your migration process may well be convincing management that the new environment
43 should remain in place. Many who have introduced open source technologies have experienced
44 pressure to return to a Microsoft-based platform solution at the first sign of trouble. 
45 </para>
46
47 <para>
48 <indexterm><primary>change motivations</primary></indexterm>
49 Before attempting a migration to a Samba-3-controlled network, make every possible effort to
50 gain all-round commitment to the change. Know precisely <emphasis>why</emphasis> the change
51 is important for the organization. Possible motivations to make a change include:
52 </para>
53
54 <indexterm><primary>manageability</primary></indexterm>
55 <indexterm><primary>functionality</primary></indexterm>
56 <indexterm><primary>operating costs</primary></indexterm>
57 <indexterm><primary>support exposure</primary></indexterm>
58 <indexterm><primary>licensing</primary></indexterm>
59
60 <itemizedlist>
61     <listitem><para>Improve network manageability.</para></listitem>
62     <listitem><para>Obtain better user-level functionality.</para></listitem>
63     <listitem><para>Reduce network operating costs.</para></listitem>
64     <listitem><para>Reduce exposure caused by Microsoft withdrawal of NT4 support.</para></listitem>
65     <listitem><para>Avoid MS License 6 implications.</para></listitem>
66     <listitem><para>Reduce organization's dependency on Microsoft.</para></listitem>
67 </itemizedlist>
68
69 <para>
70 <indexterm><primary>alternative solution</primary></indexterm>
71 <indexterm><primary>advantages</primary></indexterm>
72 <indexterm><primary>core values</primary></indexterm>
73 <indexterm><primary>migration</primary></indexterm>
74 <indexterm><primary>ADS</primary></indexterm>
75 <indexterm><primary>without ADS</primary></indexterm>
76 Make sure everyone knows that Samba-3 is not MS Windows NT4. Samba-3 offers
77 an alternative solution that is both different from MS Windows NT4 and offers 
78 advantages compared with it. Gain recognition that Samba-3 lacks many of the
79 features that Microsoft has promoted as core values in migration from MS Windows NT4 to 
80 MS Windows 2000 and beyond (with or without Active Directory services).
81 </para>
82
83 <para>
84 What are the features that Samba-3 cannot provide?
85 </para>
86
87 <indexterm><primary>Active Directory Server</primary></indexterm>
88 <indexterm><primary>Group Policy Objects</primary></indexterm>
89 <indexterm><primary>Machine Policy Objects</primary></indexterm>
90 <indexterm><primary>Logon Scripts</primary></indexterm>
91 <indexterm><primary>Access Controls</primary></indexterm>
92
93 <itemizedlist>
94         <listitem><para>Active Directory Server.</para></listitem>
95         <listitem><para>Group Policy Objects (in Active Directory).</para></listitem>
96         <listitem><para>Machine Policy Objects.</para></listitem>
97         <listitem><para>Logon Scripts in Active Directory.</para></listitem>
98         <listitem><para>Software Application and Access Controls in Active Directory.</para></listitem>
99 </itemizedlist>
100
101 <para>
102 The features that Samba-3 does provide and that may be of compelling interest to your site
103 include:
104 </para>
105
106 <indexterm><primary>ownership cost</primary></indexterm>
107 <indexterm><primary>Global support</primary></indexterm>
108 <indexterm><primary>Dynamic SMB servers</primary></indexterm>
109 <indexterm><primary>on-the-fly logon scripts</primary></indexterm>
110 <indexterm><primary>on-the-fly policy files</primary></indexterm>
111 <indexterm><primary>stability</primary></indexterm>
112 <indexterm><primary>reliability</primary></indexterm>
113 <indexterm><primary>performance</primary></indexterm>
114 <indexterm><primary>availability</primary></indexterm>
115 <indexterm><primary>Manageability</primary></indexterm>
116 <indexterm><primary>backend authentication</primary></indexterm>
117 <indexterm><primary>tdbsam</primary></indexterm>
118 <indexterm><primary>ldapsam</primary></indexterm>
119 <indexterm><primary>single-sign-on</primary></indexterm>
120 <indexterm><primary>distribute authentication systems</primary></indexterm>
121
122 <itemizedlist>
123         <listitem><para>Lower cost of ownership.</para></listitem>
124         <listitem><para>Global availability of support with no strings attached.</para></listitem>
125         <listitem><para>Dynamic SMB servers (can run more than one SMB/CIFS server per UNIX/Linux system).</para></listitem>
126         <listitem><para>Creation of on-the-fly logon scripts.</para></listitem>
127         <listitem><para>Creation of on-the-fly policy files.</para></listitem>
128         <listitem><para>Greater stability, reliability, performance, and availability.</para></listitem>
129         <listitem><para>Manageability via an SSH connection.</para></listitem>
130         <listitem><para>Flexible choices of backend authentication technologies (tdbsam, ldapsam).</para></listitem>
131         <listitem><para>Ability to implement a full single-sign-on architecture.</para></listitem>
132         <listitem><para>Ability to distribute authentication systems for absolute minimum wide-area network bandwidth demand.</para></listitem>
133 </itemizedlist>
134
135 <para>
136 <indexterm><primary>successful migration</primary></indexterm>
137 Before migrating a network from MS Windows NT4 to Samba-3, consider all necessary factors. Users
138 should be educated about changes they may experience so the change will be a welcome one
139 and not become an obstacle to the work they need to do. The following sections explain factors that will 
140 help ensure a successful migration.
141 </para>
142
143 <sect3>
144 <title>Domain Layout</title>
145
146 <para>
147 <indexterm><primary>domain controller</primary></indexterm>
148 <indexterm><primary>backup domain controller</primary></indexterm>
149 <indexterm><primary>secondary controller</primary></indexterm>
150 <indexterm><primary>domain member</primary></indexterm>
151 <indexterm><primary>standalone server</primary></indexterm>
152 <indexterm><primary>network security</primary></indexterm>
153 <indexterm><primary>domain context</primary></indexterm>
154 <indexterm><primary>PDC</primary></indexterm>
155 <indexterm><primary>BDCs</primary></indexterm>
156 <indexterm><primary>LDAP</primary></indexterm>
157 <indexterm><primary>authentication backend</primary></indexterm>
158 <indexterm><primary>complex organization</primary></indexterm>
159 <indexterm><primary>LDAP database</primary></indexterm>
160 <indexterm><primary>master server</primary></indexterm>
161 <indexterm><primary>slave servers</primary></indexterm>
162 <indexterm><primary>multiple domains</primary></indexterm>
163 Samba-3 can be configured as a domain controller, a backup domain controller (probably best called
164 a secondary controller), a domain member, or a standalone server. The Windows network security
165 domain context should be sized and scoped before implementation. Particular attention needs to be
166 paid to the location of the Primary Domain Controller (PDC) as well as backup controllers (BDCs).
167 One way in which Samba-3 differs from Microsoft technology is that if one chooses to use an LDAP
168 authentication backend, then the same database can be used by several different domains. In a
169 complex organization, there can be a single LDAP database, which itself can be distributed (have
170 a master server and multiple slave servers) that can simultaneously serve multiple domains.
171 </para>
172
173 <para>
174 <indexterm><primary>network bandwidth</primary></indexterm>
175 From a design perspective, the number of users per server as well as the number of servers per
176 domain should be scaled taking into consideration server capacity and network bandwidth.
177 </para>
178
179 <para>
180 <indexterm><primary>network segment</primary></indexterm>
181 <indexterm><primary>multiple network segments</primary></indexterm>
182 <indexterm><primary>domain controller</primary></indexterm>
183 <indexterm><primary>ping</primary></indexterm>
184 <indexterm><primary>BDC</primary></indexterm>
185 <indexterm><primary>remote segment</primary></indexterm>
186 A physical network segment may house several domains. Each may span multiple network segments.
187 Where domains span routed network segments, consider and test the performance implications of
188 the design and layout of a network. A centrally located domain controller that is designed to
189 serve multiple routed network segments may result in severe performance problems. Check the
190 response time (ping timing) between the remote segment and the PDC. If it's long (more than 100 ms),
191 locate a BDC on the remote segment to serve as the local authentication and access control server.
192 </para>
193 </sect3>
194
195 <sect3>
196 <title>Server Share and Directory Layout</title>
197
198 <para>
199 <indexterm><primary>Simplicity is king</primary></indexterm>
200 <indexterm><primary>well-controlled network</primary></indexterm>
201 There are cardinal rules to effective network design that cannot be broken with impunity.
202 The most important rule: Simplicity is king in every well-controlled network. Every part of
203 the infrastructure must be managed; the more complex it is, the greater will be the demand
204 of keeping systems secure and functional.
205 </para>
206
207 <para>
208 <indexterm><primary>disk space</primary></indexterm>
209 <indexterm><primary>backed up</primary></indexterm>
210 <indexterm><primary>tape</primary></indexterm>
211 <indexterm><primary>backup</primary></indexterm>
212 <indexterm><primary>validate every backup</primary></indexterm>
213 <indexterm><primary>disaster recovery</primary></indexterm>
214 Keep in mind the nature of how data must be shared. Physical disk space layout should be considered
215 carefully. Some data must be backed up. The simpler the disk layout, the easier it will be to
216 keep track of backup needs. Identify what backup media will meet your needs; consider backup to tape,
217 CD-ROM or DVD-ROM, or other offline storage medium. Plan and implement for minimum
218 maintenance. Leave nothing to chance in your design; above all, do not leave backups to chance:
219 backup, test, and validate every backup; create a disaster recovery plan and prove that it works.
220 </para>
221
222 <para>
223 <indexterm><primary>access control needs</primary></indexterm>
224 <indexterm><primary>group permissions</primary></indexterm>
225 <indexterm><primary>sticky bit</primary></indexterm>
226 Users should be grouped according to data access control needs. File and directory access 
227 is best controlled via group permissions, and the use of the <quote>sticky bit</quote> on group-controlled
228 directories may substantially avoid file access complaints from Samba share users.
229 </para>
230
231 <para>
232 <indexterm><primary>network administrators</primary></indexterm>
233 <indexterm><primary>document design</primary></indexterm>
234 <indexterm><primary>simple access controls</primary></indexterm>
235 <indexterm><primary>obtuse complexity</primary></indexterm>
236 <indexterm><primary>document design</primary></indexterm>
237 Inexperienced  network administrators often attempt elaborate techniques to set access
238 controls on files, directories, shares, as well as in share definitions.
239 Keep your design and implementation simple and document your design extensively. Have others
240 audit your documentation. Do not create a complex mess that your successor will not understand.
241 Remember, job security through complex design and implementation may cause loss of operations
242 and downtime to users as the new administrator learns to untangle your knots. Keep access
243 controls simple and effective, and make sure that users will never be interrupted by obtuse
244 complexity.
245 </para>
246 </sect3>
247
248 <sect3>
249 <title>Logon Scripts</title>
250
251 <para>
252 <indexterm><primary>Logon scripts</primary></indexterm>
253 Logon scripts can help to ensure that all users gain the share and printer connections they need.
254 </para>
255
256 <para>
257 Logon scripts can be created on the fly so all commands executed are specific to the
258 rights and privileges granted to the user. The preferred controls should be effected through
259 group membership so group information can be used to create a custom logon script using
260 the <smbconfoption name="root preexec"/> parameters to the <smbconfsection name="NETLOGON"/> share.
261 </para>
262
263 <para>
264 <indexterm><primary>kixstart</primary></indexterm>
265 Some sites prefer to use a tool such as <command>kixstart</command> to establish a controlled
266 user environment. In any case, you may wish to do a Google search for logon script process controls.
267 In particular, you may wish to explore the use of the Microsoft Knowledge Base article KB189105 that
268 deals with how to add printers without user intervention via the logon script process.
269 </para>
270 </sect3>
271
272 <sect3>
273 <title>Profile Migration/Creation</title>
274
275 <para>
276 User and group profiles may be migrated using the tools described in the section titled Desktop Profile
277 Management.
278 </para>
279
280
281 <para>
282 <indexterm><primary>SID</primary></indexterm>
283 <indexterm><primary>NTuser.DAT</primary></indexterm>
284 Profiles may also be managed using the Samba-3 tool <command>profiles</command>. This tool allows the MS
285 Windows NT-style security identifiers (SIDs) that are stored inside the profile
286 <filename>NTuser.DAT</filename> file to be changed to the SID of the Samba-3 domain.
287 </para>
288 </sect3>
289
290 <sect3>
291 <title>User and Group Accounts</title>
292
293 <para>
294 <indexterm><primary>migrate account settings</primary></indexterm>
295 <indexterm><primary>migrate user</primary></indexterm>
296 <indexterm><primary>migrate group</primary></indexterm>
297 <indexterm><primary>map</primary></indexterm>
298 It is possible to migrate all account settings from an MS Windows NT4 domain to Samba-3. Before
299 attempting to migrate user and group accounts, you are STRONGLY advised to create in Samba-3 the
300 groups that are present on the MS Windows NT4 domain <emphasis>AND</emphasis> to map them to
301 suitable UNIX/Linux groups. By following this simple advice, all user and group attributes
302 should migrate painlessly.
303 </para>
304 </sect3>
305
306 </sect2>
307
308 <sect2>
309 <title>Steps in Migration Process</title>
310
311 <para>
312 The approximate migration process is described below.
313 </para>
314
315 <itemizedlist>
316         <listitem><para>
317         You have an NT4 PDC that has the users, groups, policies, and profiles to be migrated.
318         </para></listitem>
319
320         <listitem><para>
321 <indexterm><primary>domain controller</primary></indexterm>
322 <indexterm><primary>netlogon share</primary></indexterm>
323 <indexterm><primary>BDC</primary></indexterm>
324         Samba-3 is set up as a domain controller with netlogon share, profile share, and so on. Configure the &smb.conf; file
325         to function as a BDC: <parameter>domain master = No</parameter>.
326         </para></listitem>
327 </itemizedlist>
328
329 <procedure>
330 <title>The Account Migration Process</title>
331
332         <step><para>
333         <indexterm><primary>pdbedit</primary></indexterm>
334         Create a BDC account in the old NT4 domain for the Samba server using NT Server Manager.
335         <emphasis>Samba must not be running.</emphasis>
336         </para></step>
337
338         <step><para>
339         <indexterm><primary>net</primary><secondary>rpc</secondary><tertiary>join</tertiary></indexterm>
340         <userinput>net rpc join -S <replaceable>NT4PDC</replaceable> -w <replaceable>DOMNAME</replaceable> -U
341         Administrator%<replaceable>passwd</replaceable></userinput>
342         </para></step>
343
344         <step><para>
345 <indexterm><primary>net</primary><secondary>rpc</secondary><tertiary>vampire</tertiary></indexterm>
346         <userinput>net rpc vampire -S <replaceable>NT4PDC</replaceable> -U 
347         administrator%<replaceable>passwd</replaceable></userinput>
348         </para></step>
349
350 <indexterm><primary>pdbedit</primary></indexterm>
351         <step><para><userinput>pdbedit -L</userinput></para>
352                 <para>Note: Did the users migrate?</para>
353         </step>
354
355         <step><para>
356         <indexterm><primary>net</primary><secondary>groupmap</secondary></indexterm>
357         <indexterm><primary>initGroups.sh</primary></indexterm>
358         Now assign each of the UNIX groups to NT groups:
359         (It may be useful to copy this text to a script called <filename>initGroups.sh</filename>)
360         <programlisting>
361 #!/bin/bash
362 #### Keep this as a shell script for future re-use
363                         
364 # First assign well known domain global groups
365 net groupmap add ntgroup="Domain Admins" unixgroup=root rid=512 type=d
366 net groupmap add ntgroup="Domain Users"  unixgroup=users rid=513 type=d
367 net groupmap add ntgroup="Domain Guests" unixgroup=nobody rid=514 type=d
368
369 # Now for our added domain global groups
370 net groupmap add ntgroup="Designers" unixgroup=designers type=d
371 net groupmap add ntgroup="Engineers" unixgroup=engineers type=d
372 net groupmap add ntgroup="QA Team"   unixgroup=qateam    type=d
373 </programlisting>
374         </para></step>
375
376         <step><para><userinput>net groupmap list</userinput></para>
377                 <para>Check that all groups are recognized.
378         </para></step>
379 </procedure>
380
381 <para>
382 Migrate all the profiles, then migrate all policy files.
383 </para>
384
385 </sect2>
386 </sect1>
387
388 <sect1>
389 <title>Migration Options</title>
390
391 <para>
392 Sites that wish to migrate from MS Windows NT4 domain control to a Samba-based solution
393 generally fit into three basic categories. <link linkend="majtypes">Following table</link> shows the possibilities.
394 </para>
395
396 <table frame="all" id="majtypes"><title>The Three Major Site Types</title>
397 <tgroup cols="2">
398         <colspec align="left"/>
399         <colspec align="justify"/> 
400         <thead>
401         <row><entry>Number of Users</entry><entry>Description</entry></row>
402         </thead>
403         <tbody>
404         <row><entry>&lt; 50</entry><entry><para>Want simple conversion with no pain.</para></entry></row>
405         <row><entry>50 - 250</entry><entry><para>Want new features; can manage some inhouse complexity.</para></entry></row>
406         <row><entry>&gt; 250</entry><entry><para>Solution/implementation must scale well; complex needs.
407                 Cross-departmental decision process. Local expertise in most areas.</para></entry></row>
408         </tbody>
409 </tgroup>
410 </table>
411
412 <sect2>
413 <title>Planning for Success</title>
414
415 <para>
416 There are three basic choices for sites that intend to migrate from MS Windows NT4
417 to Samba-3:
418 </para>
419
420 <itemizedlist>
421         <listitem><para>
422         Simple conversion (total replacement).
423         </para></listitem>
424
425         <listitem><para>
426         Upgraded conversion (could be one of integration).
427         </para></listitem>
428
429         <listitem><para>
430         Complete redesign (completely new solution).
431         </para></listitem>
432 </itemizedlist>
433
434 <para>
435 Minimize downstream problems by:
436 </para>
437
438 <itemizedlist>
439         <listitem><para>
440         Taking sufficient time.
441         </para></listitem>
442
443         <listitem><para>
444         Avoiding panic.
445         </para></listitem>
446
447         <listitem><para>
448         Testing all assumptions.
449         </para></listitem>
450
451         <listitem><para>
452         Testing the full roll-out program, including workstation deployment.
453         </para></listitem>
454 </itemizedlist>
455
456 <para><link linkend="natconchoices">Following table</link> lists the conversion choices given the type of migration
457 being contemplated.
458 </para>
459
460 <table frame="all" id="natconchoices"><title>Nature of the Conversion Choices</title>
461 <tgroup cols="3">
462         <colspec align="justify" colwidth="1*"/>
463         <colspec align="justify" colwidth="1*"/>
464         <colspec align="justify" colwidth="1*"/>
465         <thead>
466         <row><entry>Simple Install</entry><entry>Upgrade Decisions</entry><entry>Redesign Decisions</entry></row>
467         </thead>
468         <tbody>
469         <row>
470         <entry><para>Make use of minimal OS-specific features</para></entry>
471         <entry><para>Translate NT4 features to new host OS features</para></entry>
472         <entry><para>Improve on NT4 functionality, enhance management capabilities</para></entry>
473         </row>
474         <row>
475         <entry><para>Move all accounts from NT4 into Samba-3</para></entry>
476         <entry><para>Copy and improve</para></entry>
477         <entry><para>Authentication regime (database location and access)</para></entry>
478         </row>
479         <row>
480         <entry><para>Make least number of operational changes</para></entry>
481         <entry><para>Make progressive improvements</para></entry>
482         <entry><para>Desktop management methods</para></entry>
483         </row>
484         <row>
485         <entry><para>Take least amount of time to migrate</para></entry>
486         <entry><para>Minimize user impact</para></entry>
487         <entry><para>Better control of Desktops/Users</para></entry>
488         </row>
489         <row>
490         <entry><para>Live versus isolated conversion</para></entry>
491         <entry><para>Maximize functionality</para></entry>
492         <entry><para>Identify Needs for: <emphasis>Manageability, Scalability, Security, Availability</emphasis></para></entry>
493         </row>
494         <row>
495         <entry><para>Integrate Samba-3, then migrate while users are active, then change of control (swap out)</para></entry>
496         <entry><para>Take advantage of lower maintenance opportunity</para></entry>
497         <entry><para></para></entry>
498         </row>
499         </tbody>
500 </tgroup>
501 </table>
502 </sect2>
503
504 <sect2>
505 <title>Samba-3 Implementation Choices</title>
506
507 <variablelist>
508                 <varlistentry><term>Authentication Database/Backend</term><listitem>
509                 <para>
510                 Samba-3 can use an external authentication backend:
511                 </para>
512
513                 <para>
514                 <itemizedlist>
515                         <listitem><para>Winbind (external Samba or NT4/200x server).</para></listitem>
516                         <listitem><para>External server could use Active Directory or NT4 domain.</para></listitem>
517                         <listitem><para>Can use pam_mkhomedir.so to autocreate home directories.</para></listitem>
518                         <listitem><para> Samba-3 can use a local authentication backend: <parameter>smbpasswd</parameter>,
519                                 <parameter>tdbsam</parameter>, <parameter>ldapsam</parameter>
520                         </para></listitem>
521                 </itemizedlist></para></listitem>
522                 </varlistentry>
523
524         <varlistentry><term>Access Control Points</term><listitem>
525                 <para>
526                 Samba permits Access Control points to be set:
527                 </para>
528
529 <indexterm><primary>share ACLs</primary></indexterm>
530 <indexterm><primary>UNIX permissions</primary></indexterm>
531 <indexterm><primary>POSIX ACLS</primary></indexterm>
532 <indexterm><primary>share stanza controls</primary></indexterm>
533
534                 <itemizedlist>
535                         <listitem><para>On the share itself &smbmdash; using share ACLs.</para></listitem>
536                         <listitem><para>On the file system &smbmdash; using UNIX permissions on files and directories.</para>
537                         <para>Note: Can enable Posix ACLs in file system also.</para></listitem>
538                         <listitem><para>Through Samba share parameters &smbmdash; not recommended except as last resort.</para></listitem>
539                 </itemizedlist></listitem>
540         </varlistentry>
541
542         <varlistentry><term>Policies (migrate or create new ones)</term><listitem>
543                 <para>
544 <indexterm><primary>policies</primary></indexterm>
545 <indexterm><primary>NTConfig.POL</primary></indexterm>
546                 Exercise great caution when making registry changes; use the right tool and be aware
547                 that changes made through NT4-style <filename>NTConfig.POL</filename> files can leave
548                 permanent changes.
549 <indexterm><primary>Group Policy Editor</primary></indexterm>
550 <indexterm><primary>tattoo effect</primary></indexterm>
551 <indexterm><primary>permanent changes</primary></indexterm>
552                 </para>
553                 <itemizedlist>
554                         <listitem><para>Using Group Policy Editor (NT4).</para></listitem>
555                         <listitem><para>Watch out for tattoo effect.</para></listitem>
556                 </itemizedlist>
557                 </listitem>
558         </varlistentry>
559
560         <varlistentry><term>User and Group Profiles</term><listitem>
561                 <para>
562 <indexterm><primary>NTUser.DAT</primary></indexterm>
563 <indexterm><primary>SIDs</primary></indexterm>
564                 Platform-specific, so use platform tool to change from a local to a roaming profile.
565                 Can use new profiles tool to change SIDs (<filename>NTUser.DAT</filename>).
566                 </para>
567                 </listitem>
568         </varlistentry>
569
570         <varlistentry><term>Logon Scripts</term><listitem>
571                 <para>
572                 Know how they work.
573                 </para>
574                 </listitem>
575         </varlistentry>
576
577
578         <varlistentry><term>User and Group Mapping to UNIX/Linux</term><listitem>
579                 <para>
580                 <indexterm><primary>pdbedit</primary></indexterm>
581                 User and group mapping code is new. Many problems have been experienced as network administrators
582                 who are familiar with Samba-2.2.x migrate to Samba-3. Carefully study the chapters that document
583                 the new password backend behavior and the new group mapping functionality.
584                 </para>
585                         <itemizedlist>
586                                 <listitem><para>The <parameter>username map</parameter> facility may be needed.</para></listitem>
587                                 <listitem><para>Use <command>net groupmap</command> to connect NT4 groups to UNIX groups.</para></listitem>
588                                 <listitem><para>
589                                         Use <command>pdbedit</command> to set/change user configuration.
590                                         </para>
591
592                                         <para>
593                                         When migrating to LDAP backend, it may be easier to dump the initial
594                                         LDAP database to LDIF, edit, then reload into LDAP.
595                                         </para></listitem>
596                         </itemizedlist></listitem>
597         </varlistentry>
598
599         <varlistentry><term>OS-Specific Scripts/Programs May be Needed</term><listitem>
600                 <para>
601                 Every operating system has its peculiarities. These are the result of engineering decisions
602                 that were based on the experience of the designer and may have side effects that were not
603                 anticipated. Limitations that may bite the Windows network administrator include:
604                 </para>
605                 <itemizedlist>
606                         <listitem><para>Add/Delete Users: Note OS limits on size of name
607                                 (Linux 8 chars, NT4 up to 254 chars).</para></listitem>
608                         <listitem><para>Add/Delete Machines: Applied only to domain members
609                                 (Note: machine names may be limited to 16 characters).</para></listitem>
610                         <listitem><para>Use <command>net groupmap</command> to connect NT4 groups to UNIX groups.</para></listitem>
611                         <listitem><para>Add/Delete Groups: Note OS limits on size and nature.
612                                 Linux limit is 16 char, no spaces, and no uppercase chars (<command>groupadd</command>).</para></listitem>
613                 </itemizedlist></listitem>
614         </varlistentry>
615
616         <varlistentry><term>Migration Tools</term><listitem>
617                 <para>
618                                 <indexterm><primary>pdbedit</primary></indexterm>
619                                 Domain Control (NT4-Style) Profiles, Policies, Access Controls, Security
620                                 <itemizedlist>
621                                          <listitem><para>Samba: <command>net, rpcclient, smbpasswd, pdbedit, profiles</command></para></listitem>
622                                          <listitem><para>Windows: <command>NT4 Domain User Manager, Server Manager (NEXUS)</command></para></listitem>
623                                 </itemizedlist></para></listitem>
624         </varlistentry>
625 </variablelist>
626
627 </sect2>
628
629 </sect1>
630
631 </chapter>