Th? t?c này s? d?ng t?p tin batch và tài nguyên b? ti?n ích đ? t?o ra m?t danh sách
máy tài kho?n s?p x?p theo th?i gian qua m?t kh?u trương m?c máy tính
đư?c C?p Nh?t. Danh sách sau đó c?n ph?i đư?c ki?m tra b?i ngư?i qu?n tr? đ?
lo?i b? t?t c? tài kho?n máy đư?c coi là ho?t đ?ng, đ? l?i ch? c?
tài kho?n máy trong danh sách c?n l?i. Danh sách c?n l?i sau đó đư?c đ?c
m?t t?p tin th?c thi có h? th?ng xoá các tài kho?n c? máy s? d?ng
Windows NT tài nguyên b? ti?n ích.
- T?o t?p tin batch sau t? danh sách c?a h? dư?i đây: Oldms.bat,
Oldms2.bat, Oldms3.bat, Oldms4.bat, Deloldms.bat, và Bat2.bat.
- Ch?y t?p tin Oldms.bat t? m?t d?u nh?c l?nh trong khi đăng nh?p như m?t
ngư?i qu?n tr?. S? d?ng cú pháp sau:
OLDMS.DƠI DomainName - M? Output.txt t?p tin b?ng cách s? d?ng m?t tr?nh so?n th?o văn b?n, và lo?i b? t?t c? các d?ng mà
ch?a tài kho?n máy là h?p l?. Các đư?ng c?n l?i trong
Output.txt nên ch?a ch? tài kho?n máy đó s? b? xóa.
- Ch?y t?p tin Deloldms.bat. T?p này s? đ?c t?p tin Output.txt, và
xóa m?i tài kho?n máy b?ng cách g?i Netdom.exe tài nguyên kit
Ti?n ích.
N?i dung c?a Oldms.bat:
@echo off
if "%1"=="" goto nodomain
set dom=%1
set deloldms=
netdom /d:%1 bdc | find "Found PDC" > temp4.txt
for /f "tokens=3" %%a in (temp4.txt) do set pdc=%%a
if exist ms2.txt del ms2.txt
if exist output.txt del output.txt
if exist out2.txt del out2.txt
if exist temp4.txt del temp4.txt
echo.
echo Generating Server List of Member Servers and Workstations
echo.
echo Please Wait...
netdom /d:%1 /noverbose member > MS.TXT
for /F "delims=\\ tokens=1" %%a in (ms.txt) do echo %%a >> MS2.TXT
cls
echo.
echo Generating List of Member Servers and Workstations - Done
echo.
echo List Generated. Checking Password Ages.
echo.
echo Please Wait...
for /F "tokens=1" %%a in (ms2.txt) do call oldms2.bat %%a %dom% %pdc%
sort < output.txt > out2.txt
del output.txt
echo Machine account ages for domain: %dom% >> output.txt
echo ------------------------------------------------ >> output.txt
type out2.txt >> output.txt
if exist ms.txt del ms.txt
if exist out2.txt del out2.txt
if exist temp3.txt del temp3.txt
if exist ms2.txt del ms2.txt
if exist temp.txt del temp.txt
if exist temp4.txt del temp4.txt
if exist total.txt del total.txt
if exist working.txt del working.txt
REM *** IMPORTANT Make the next 2 lines 1 line. Wrapped for readability ***
FOR /F "SKIP=2 tokens=1,2,3" %%A IN (OUTPUT.TXT) DO echo %%A %%B
%%C>>working.txt
type working.txt|find " " /c>total.txt
for /f "tokens=1" %%A in (total.txt) do set deloldms=%%A
echo.
Echo List Complete
echo.
Echo %deloldms% machine accounts found.
echo.
echo Now edit OUTPUT.TXT and remove all valid machine accounts.
echo Machine accounts remaining in OUTPUT.TXT will be deleted.
echo After OUTPUT.TXT has been modified, run DELOLDMS.BAT to
echo delete machine accounts.
echo.
if exist total.txt del total.txt
if exist working.txt del working.txt
goto end
:nodomain
echo Specify the target domain on the command line
echo EXAMPLE: oldms MyDomainName
:end
N?i dung c?a Oldms2.bat:
rem %1 = member server
rem %2 = domain
rem %3 = pdc
nltest /server:%3 /user:%1$ | find "PasswordLastSet" > temp.txt
for /F "delims== tokens=2" %%a in (temp.txt) do oldms3.bat %%a %1
N?i dung c?a Oldms3.bat:
rem %1 = date
rem %2 = time
rem %3 = member server
echo %1 > temp3.txt
REM *** IMPORTANT Make the next 2 lines 1 line. Wrapped for readability ***
for /F "delims=/ tokens=1,2,3" %%a in (temp3.txt) do oldms4.bat %%a %%b
%%c %2 %3
N?i dung c?a Oldms4.bat
rem %1 = month
rem %2 = day
rem %3 = year
rem %4 = time
rem %5 = member server
echo %3/%1/%2 %4 %5 >> output.txt
N?i dung c?a Deloldms.bat
@echo off
set dom=
set deloldms=
if exist total.txt del total.txt
if exist working.txt del working.txt
REM *** IMPORTANT Make the next 2 lines 1 line. Wrapped for readability ***
FOR /F "SKIP=2 tokens=1,2,3" %%A IN (OUTPUT.TXT) DO echo %%A %%B
%%C>>working.txt
type working.txt|find " " /c>total.txt
for /f "tokens=1" %%A in (total.txt) do set deloldms=%%A
cls
echo.
Echo NOTICE: %deloldms% machine accounts found in OUTPUT.TXT, ready for
deletion
Echo Press Ctrl + C to abort or..
echo.
pause
FOR /f "tokens=6" %%a in (output.txt) do set dom=%%a
if "%dom%"=="" goto nodomain
FOR /F "SKIP=2 TOKENS=3" %%A IN (OUTPUT.TXT) DO CALL BAT2 %%A
if exist total.txt del total.txt
if exist working.txt del working.txt
goto end
:nodomain
Echo Domain Name Missing from OUTPUT.TXT
Echo Re-run OLDMS.BAT
:end
N?i dung c?a Bat2.bat:
NETDOM /d:%dom% MEMBER %1 /DELETE
Như m?t ph?n c?a Windows NT b?o m?t, m?t kh?u tài kho?n máy đang thay đ?i
m?i b?y ngày. Quá tr?nh đư?c mô t? trong bài vi?t này d?a vào đ? tu?i
c?a m?t kh?u tài kho?n máy đ? xác đ?nh tính h?p l?. Nó có th? cho
ngư?i qu?n tr? đ? vô hi?u hoá t? đ?ng máy thay đ?i m?t kh?u tài kho?n.
Quá tr?nh này có th? đư?c th?c hi?n trên cơ s? toàn mi?n ho?c cho m?i h? th?ng. Nếu
ti?n tr?nh đ? đư?c th?c hi?n, các qu?n tr? viên không th? d?a vào đ? tu?i m?t kh?u đ?
xác đ?nh tính h?p l? c?a các tài kho?n. B?n s? c?n ph?i vư?t qua tham kh?o
v?i tài kho?n c?a b?n trong n?i b? tài li?u h?p l? máy khi ch?nh s?a
Output.txt. n?u thông tin này không ph?i là có s?n, k? thu?t này không nên
đư?c s? d?ng.
LƯU ?: Microsoft cung c?p l?p tr?nh ví d? đ? minh ho? ch?, không có b?o hành ho?c th? hi?n hay ng? ?. Đi?u này bao g?m, nhưng không gi?i h?n, b?o đ?m ng? ? kh? năng bán hàng ho?c cho m?t m?c đích c? th?. Bài vi?t này gi? đ?nh r?ng b?n đ? quen thu?c v?i ngôn ng? l?p tr?nh mà đang đư?c ch?ng minh và v?i nh?ng công c? đư?c s? d?ng đ? t?o ra và g? l?i th? t?c. Microsoft h? tr? các k? sư có th? giúp gi?i thích các ch?c năng c?a m?t th? t?c c? th?, nhưng h? s? không s?a đ?i các ví d? đ? cung c?p thêm ch?c năng ho?c xây d?ng quy tr?nh đ? đáp ?ng các yêu c?u c? th? c?a b?n.
Đ? bi?t thêm chi ti?t, xin vui l?ng xem các bài sau đây trong các
Cơ s? ki?n th?c Microsoft:
154501
(http://support.microsoft.com/kb/154501/EN-US/
)
Làm th? nào đ? vô hi?u hoá t? đ?ng máy thay đ?i m?t kh?u tài kho?n
158148
(http://support.microsoft.com/kb/158148/EN-US/
)
Tên mi?n an toàn kênh Utility--Nltest.exe
ID c?a bài: 197478 - L?n xem xét sau cùng: 20 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
- Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
- Microsoft Windows Server 2003, Standard Edition (32-bit x86)
- Microsoft Windows 2000 Advanced Server
- Microsoft Windows 2000 Professional Edition
- Microsoft Windows 2000 Server
- Microsoft Windows NT Server 3.51
- Microsoft Windows NT Server 4.0 Standard Edition
| kbhowto kbmt KB197478 KbMtvi |
Máy d?chQUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:
197478
(http://support.microsoft.com/kb/197478/en-us/
)