Versão em texto da Dltpurge.vbs artigo da base de dados de conhecimento da Microsoft Q312403

O suporte para o Windows XP terminou

A Microsoft terminou o suporte para o Windows XP em 8 de Abril de 2014. Esta alteração afetou as suas atualizações de software e opções de segurança. Aprenda o que isto significa para si e como pode ficar protegido.

O suporte para Windows Server 2003 terminou a 14 de Julho de 2015

A Microsoft terminou o suporte para Windows Server 2003 a 14 de Julho de 2015. Esta alteração afetou as suas atualizações de software e opções de segurança. Aprenda o que isto significa para si e como pode ficar protegido.

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 315229
Sumário
Pode utilizar o serviço Distributed Link Tracking no Windows para controlar a criação e a movimentação de ficheiros ligados em volumes formatados com NTFS e servidores. Este artigo contém uma versão em texto do script Dltpurge.vbs descrita no seguinte artigo de base de dados de conhecimento da Microsoft:
312403Distribuído ligação rastreio em controladores de domínio baseado no Windows 2000
Mais Informação
Para utilizar este script:
  1. Copie todo o texto entre o < Iniciar Cópia Aqui > tag e o < Terminar Cópia Aqui > código neste artigo e, em seguida, cole o texto para um ficheiro de editor de texto ASCII (por exemplo, um ficheiro do bloco de notas da Microsoft).
  2. Guarde o ficheiro como "Dltpurge.vbs".
  3. Conclua o procedimento descrito no seguinte artigo da base de dados de conhecimento da Microsoft:
    312403Distribuído ligação rastreio em controladores de domínio baseado no Windows 2000
<Iniciar Cópia Aqui >
'=============================================================================='=============================================================================='' Copyright (C) 2001 by Microsoft Corporation.  All rights reserved.'' This script deletes all Active Directory objects used by the' Distributed Link Tracking Server service.'' It is assumed that the DLT Server service has been disabled,' and you wish to recover the DIT space these objects occupy.'' Usage:   cscript DltPurge.vbs <options>' Options: -s ServerName'          -d distinguishedname dc=mydomain,dc=mycompany,dc=com'          -b BatchSize  BatchDelayMinutes'          -t (optional test mode)'' The objects are deleted in batches - BatchSize objects are deleted,' then there is a BatchDelayMinutes delay before the next batch.''=============================================================================='==============================================================================Option Explicit'' Globals, also local to main.'Dim oProviderDim oTargetDim sServerDim sDomainDim bTestDim BatchSizeDim BatchDelayMinutes'' Set defaults'BatchSize = 1000BatchDelayMinutes = 15bTest = False'==============================================================================''   ProcessArgs''   Parse the command-line arguments.  Results are set in global variables'   (oProvider, oTarget, sServer, sDomain, BatchSize, and BatchDelayMinutes).''==============================================================================public function ProcessArgs    Dim iCount    Dim oArgs    on error resume next    '    ' Get the command-line arguments    '        Set oArgs = WScript.Arguments    if oArgs.Count > 0 then        '        ' We have command-line arguments.  Loop through them.        '        iCount = 0        ProcessArgs = 0        do while iCount < oArgs.Count            select case oArgs.Item(iCount)                '                ' Server name argument                '                                case "-s"                    if( iCount + 1 >= oArgs.Count ) then                        Syntax                        ProcessArgs = -1                        exit do                    end if                    sServer = oArgs.Item(iCount+1)                    if Len(sServer) > 0 then sServer = sServer & "/"                    iCount = iCount + 2                '                ' Enable testing option                '                                case "-t"                    iCount = iCount + 1                    bTest  = True                '                ' Domain name option                '                                case "-d"                    if( iCount + 1 >= oArgs.Count ) then                        Syntax                        ProcessArgs = -1                        Exit Do                    end if                    sDomain = oArgs.Item(iCount+1)                    iCount = iCount + 2                '                ' Batching option (batch size, batch delay)                '                case "-b"                    if( iCount + 2 >= oArgs.Count ) then                        Syntax                        ProcessArgs = -1                        exit do                    end if                    Err.Clear                                        BatchSize = CInt( oArgs.Item(iCount+1) )                    BatchDelayMinutes = CInt( oArgs.Item(iCount+2) )                                        if( Err.Number <> 0 ) then                         wscript.echo "Invalid value for -b argument" & vbCrLf                        Syntax                        ProcessArgs = -1                        exit do                    end if                                        iCount = iCount + 3                '                ' Help option                '                                case "-?"                    Syntax                    ProcessArgs = -1                    exit do                '                ' Invalid argument                '                                case else                                    ' Display the syntax and return an error                    wscript.echo "Unknown argument: " & oArgs.Item(iCount) & vbCrLf                    Syntax                    ProcessArgs = -1                    Exit Do                                end select      loop    else            '        ' There were no command-line arguments, display the syntax        ' and return an error.        '        Syntax        ProcessArgs = -1    end if    Set oArgs = Nothingend function ' ProcessArgs'==============================================================================''   Syntax''   Show the command-line syntax''==============================================================================public function Syntax    wscript.echo    vbCrLf & _                    "Purpose:   Delete Active Directory objects from Distributed Link Tracking" & vbCrLf & _                    "           Server service (Assumes that DLT Server has been disabled" & vbCrLf & _                    "           on all DCs)" & vbCrLf & _                    vbCrLf & _                    "Usage:     " & wscript.scriptname & " <arguments>" & vbCrLf & _                    vbCrLf & _                    "Arguments: -s Server" & vbCrLf & _                    "           -d FullyQualifiedDomain" & vbCrLf & _                    "           -b BatchSize BatchDelayMinutes (default to 1000 and 15)" & vbCrLf & _                    "           -t (optional test mode, nothing is deleted)" & vbCrLf & _                    vbCrLf & _                    "Note:      Objects are deleted in batches, with a delay between each" & vbCrLf & _                    "           batch.  The size of the batch defaults to 1000 objects, and" & vbCrLf & _                    "           the length of the delay defaults to 15 minutes.  But these" & vbCrLf & _                    "           values can be overridden using the -b option." & vbCrLf & _                    vbCrLf & _                    "Example:   " & wscript.scriptname & "  -s  myserver  -d distinguishedname dc=mydomain,dc=mycompany,dc=com "end function    ' Syntax'==============================================================================''   PurgeContainer''   Delete all objects of the specified class in the specified container.'   This subroutine is called once for the volume table and once for'   the object move table.''==============================================================================sub PurgeContainer(ByRef oParent, ByVal strClass)    dim oChild    dim iBatch    dim iTotal    On Error Resume Next    iTotal = 0    iBatch = 0    ' Loop through the children of this container    For Each oChild in oParent        '         ' Is this a DLT object?        '                if oChild.Class = strClass Then            '            ' Yes, this is a DLT object, it may be deleted            '                        iTotal = iTotal + 1            iBatch = iBatch + 1            '            ' Delete the object            '                        if bTest then                wscript.echo "Object that would be deleted: " & oChild.adspath            else                oParent.Delete oChild.Class, oChild.Name            end if            '            ' If this is the end of a batch, delay to let replication            ' catch up.            '                        if iBatch = BatchSize then                            iBatch = 0                                wscript.stdout.writeline "" ' ignored by wscript                wscript.echo "Deleted " & BatchSize & " objects"                wscript.echo "Pausing to allow processing (will restart at " & DateAdd("n", BatchDelayMinutes, Time) & ")"                                wscript.sleep BatchDelayMinutes * 60 * 1000                wscript.echo "Continuing ..."                            end if                    else                    ' oChild.Class didn't match strClass            wscript.echo "Ignoring unexpected class: " & oChild.Class                    end if        oChild = NULL    Next    wscript.echo "Deleted a total of " & iTotal & " objects"end sub ' PurgeContainer'=============================================================================='' Main''==============================================================================if (ProcessArgs=-1) then wscript.quiton error resume next'' Explain what's about to happen'wscript.stdout.writeline "" ' ignored by wscriptwscript.echo "This script will purge all objects from the Active Directory" & vbCrLf & _             "used by the Distributed Link Tracking Server service (trksvr)." & vbCrLf & _             "It is assumed that this service has already been disabled on" & vbCrLf & _             "all DCs in the domain."'' When running in cscript, pause to give an opportunity to break out' (These 3 lines are for cscript and ignored by wscript.)'wscript.stdout.writeline ""wscript.stdout.writeline "Press Enter to continue ..."wscript.stdin.readline'' Get an ADSI object'Set oProvider = GetObject("LDAP:")'' Purge the System/FileLinks/ObjectMoveTable'wscript.stdout.writeline "" ' ignored by wscriptwscript.echo "Purging ObjectMoveTable"Set oTarget = oProvider.OpenDSObject( "LDAP://" & sServer  & "cn=ObjectMoveTable,CN=FileLinks,CN=System," & sDomain ,_                                      vbNullString, vbNullString, _                                      1) ' ADS_SECURE_AUTHENTICATIONcall PurgeContainer( oTarget, "linkTrackOMTEntry" )oTarget = NULL'' Purge the System/FileLinks/VolumeTable'wscript.stdout.writeline "" ' ignored by wscriptwscript.echo "Purging VolumeTable"Set oTarget = oProvider.OpenDSObject("LDAP://" & sServer  & "cn=VolumeTable,CN=FileLinks,CN=System," & sDomain  ,_                                     vbNullString, vbNullString, _                                     1) ' ADS_SECURE_AUTHENTICATIONcall PurgeContainer( oTarget, "linkTrackVolEntry" )oTarget = NULLoProvider = NULL				
< Aqui Copiar END >

Aviso: Este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 315229 - Última Revisão: 12/03/2007 04:46:54 - Revisão: 6.4

Microsoft Windows 2000 Server, Microsoft Windows 2000 Advanced Server, Microsoft Windows 2000 Professional Edition, Microsoft Windows 2000 Datacenter Server, Microsoft Windows Server 2003 Standard Edition, Microsoft Windows Server 2003 Enterprise Edition, Microsoft Windows Server 2003 Datacenter Edition, Microsoft Windows Server 2003, Enterprise x64 Edition, Microsoft Windows Server 2003, 64-Bit Datacenter Edition, Microsoft Windows XP Professional Edition, Microsoft Windows Small Business Server 2003 Premium Edition, Microsoft Windows Small Business Server 2003 Standard Edition

  • kbmt kbenv kbinfo KB315229 KbMtpt
Comentários