How to Use the DSMN Utility to Verify Synchronized Passwords (154760)
The information in this article applies to:
- Microsoft Windows NT Workstation 3.51
- Microsoft Windows NT Workstation 4.0
- Microsoft Windows NT Server 3.51
- Microsoft Windows NT Server 4.0
This article was previously published under Q154760 SUMMARY
The Directory Service Manager for NetWare (DSMN) compact disc includes
Dsmchk.exe, a new utility for testing password synchronization. Dsmchk.exe
checks one or more NetWare servers in the domain and compares the user's
password on each NetWare server to the user's password on the primary
domain controller. To automate the testing of each user's password, you can
call Dsmchk.exe from the user's logon script. This article explains how to
use Dsmchk.exe.
NOTE: To use Dsmchk.exe, the primary domain controller must be running
Windows NT Server 4.0.
MORE INFORMATIONSyntax for Dsmchk.exe
The syntax for Dsmchk.exe is:
dsmchk -d <domain> -u <username> [-n <Nwserver>]
[-r <retries>:<interval>]
where
-d <domain> Specifies the domain in which to verify
password synchronization.
-u <username> Specifies the user account.
-n <Nwserver> Specifies the name of a NetWare server with
which to verify password synchronization. If
you don't specify a server, the default is all
NetWare servers in the domain.
-r <retries>:<interval> Specifies a number of retries and the interval,
in seconds, between retries.
Error Levels of Dsmchk.exe
Dsmchk.exe reports the user's password situation with the following error
levels:
0 The password is synchronized across the specified NetWare server(s)
and the primary domain controller.
1 The password is not synchronized.
2 The NetWare server is unknown or not administered by DSMN.
3 The domain name is unknown.
4 The user account name is unknown or not administered by DSMN.
5 The user account name is not administered between the primary domain
controller and the NetWare server.
Using Dsmchk.exe
You can run Dsmchk.exe with the Dsmchk files (Swclnt.dll and Msvcrt.dll;
Msvcrt.dll is only needed by Windows NT 3.51 clients), based on either the
server or the client computers.
To run Dsmchk.exe using files on the server:
- Create directories for each processor type (I386, Alpha, MIPS, and/or
PPC) in the %Systemroot%\System32\Repl\Import\Scripts directory.
For example, if the %Systemroot% is C:\Winnt and you have clients
with x86 and Alpha processors, create the following directories:
c:\Winnt\System32\Repl\Import\Scripts\I386
c:\Winnt\System32\Repl\Import\Scripts\Alpha
- Expand and copy the appropriate Dsmchk.exe and Swclnt.dll files from
the FPNW/DSMN compact disc to each directory. Continuing the example
from step 1, and assuming that the CD-ROM drive is drive D, type the
following from a command prompt:
expand d:\Dsmn\Nt40\I386\Dsmchk.ex_
c:\Winnt\System32\Repl\Import\Scripts\I386\Dsmchk.exe
expand d:\Dsmn\Nt40\I386\Swclnt.dl_
c:\Winnt\System32\Repl\Import\Scripts\I386\Swclnt.dll
expand d:\Dsmn\Nt40\Alpha\Dsmchk.ex_
c:\Winnt\System32\Repl\Import\Scripts\Alpha\Dsmchk.exe
expand d:\Dsmn\Nt40\Alpha\Swclnt.dl_
c:\Winnt\System32\Repl\Import\Scripts\Alpha\Swclnt.dll
NOTE: Each of the indented lines in the example is a continuation of
the line above; you should type the entire command on one line. - If any of the clients run Windows NT Workstation 3.51, copy
Msvcrt.dll from the Windows NT Server 4.0 %Systemroot%\System32
directory to each Dsmchk directory. Continuing the example from the
previous steps, type:
copy c:\Winnt\System32\Msvcrt.dll
c:\Winnt\System32\Repl\Import\Scripts\I386
copy c:\Winnt\System32\Msvcrt.dll
c:\Winnt\System32\Repl\Import\Scripts\Alpha
NOTE: Each of the indented lines in the example is a continuation of
the line above; you should type the entire command on one line.
After you have copied these files, a Windows NT 4.0 client can run
Dsmchk.exe simply by using the path of the Dsmchk.exe file on the server.
To run Dsmchk.exe using files on the client:
- Copy the Dsmchk.exe and Swclnt.dll files (and Msvcrt.dll if you are
using a Windows NT 3.51 client) for the client's processor type to
the client's %Systemroot%\System32 directory.
For example, from the client's command prompt, type:
copy \\server\netlogon\i386\*.* c:\winnt\system32
When you copy the files to the client, the client can use Dsmchk.exe
without referencing a path on a server.
Using Dsmchk.exe in a Logon Script
You can use Dsmchk.exe in a logon script whether the files are installed on
a server or on the client. For example, you can insert the following
commands in a logon script to test the user's password synchronization:
:TEST_USER
\\DSMNsrvr\netlogon\i386\dsmchk -d domain2 -u myname -n NWserver -r 4:30
@ECHO OFF
IF ERRORLEVEL 5 GOTO USER_NOT_PROPED
IF ERRORLEVEL 4 GOTO USER_NOT_DSMN
IF ERRORLEVEL 3 GOTO DOMAIN_NOT_DSMN
IF ERRORLEVEL 2 GOTO SVR_NOT_IN_DSMN
IF ERRORLEVEL 1 GOTO SVR_NOT_IN_SYNC
IF ERRORLEVEL 0 GOTO ALL_IN_SYNC
:ALL_IN_SYNC
ECHO The servers are synchronized.
GOTO DONE
:SVR_NOT_IN_SYNC
ECHO The servers are not synchronized. Rechecking . . .
sleep 30
\\DSMNsrvr\netlogon\i386\dsmchk -d domain2 -u myname -n NWserver -r 1:30
IF ERRORLEVEL 1 GOTO TEST_USER
GOTO DONE
:SVR_NOT_IN_DSMN
ECHO The NetWare server is unknown or not administered by DSMN.
GOTO DONE
:DOMAIN_NOT_DSMN
ECHO The domain name is unknown.
GOTO DONE
:USER_NOT_DSMN
ECHO The user account name is unknown or not administered by DSMN.
GOTO DONE
:USER_NOT_PROPED
ECHO The user account name is not administered between the primary
ECHO Domain controller and the NetWare server.
GOTO DONE
:DONE PAUSE
Modification Type: | Major | Last Reviewed: | 8/8/2001 |
---|
Keywords: | kb3rdparty kbhowto kbnetwork kbusage KB154760 |
---|
|