none
Script Informativo RRS feed

  • Pergunta

  • Caros amigos, bom dia.

     

       Alguém conhece algum script que envie informações dos discos de um servidor, com informações de tamanho do disco, espaço ocupado e espaço livre, e tipo se o servidor tiver mais de um disco ele enviar as informações de todos os discos?

    Agradeço antecipadamente

    quinta-feira, 13 de maio de 2010 13:08

Respostas

  • Verifique se é isso que vc precisa.

    Crie um pasta logs na unidade C:, ou altere no script o caminho onde salva os logs.


    Option Explicit
    Dim objWMIService, objItem, colItems, strComputer, strInfo

    On Error Resume Next
    strComputer = "."

    Set objWMIService = GetObject _
    ("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery _
    ("Select * from Win32_LogicalDisk where MediaType=12")

    For Each objItem in colItems
    strInfo =  strInfo & "Computer: " & objItem.SystemName & VbCrLF & _
    " ==================================" & VbCrLF & _
    "Unidade: " & objItem.Name & VbCrLF & _
    "Descrição: " & objItem.Description & VbCrLF & _
    "Nome do Volume: " & objItem.VolumeName & VbCrLF & _
    "Tipo de Drive: " & objItem.DriveType & VbCrLF & _
    "Tipo de Mídia: " & objItem.MediaType & VbCrLF & _
    "Número Serial do volume: " & objItem.VolumeSerialNumber & VbCrLF & _
    "Tamanho: " & Int(objItem.Size /1073741824) & " GB" & VbCrLF & _
    "Espaço Livre: " & Int(objItem.FreeSpace /1073741824) & " GB" & VbCrLF & _
    "Quotas Desabilitada?: " & objItem.QuotasDisabled & VbCrLF & _
    "Suporte a Quotas?: " & objItem.SupportsDiskQuotas & VbCrLF & _
    "Suporte a compactação: " & _
    objItem.SupportsFileBasedCompression & VbCrLF & _
    "Compactação: " & objItem.Compressed & VbCrLF & VbCrLF
    Next
    'Wscript.Echo strInfo
    GravaTXT strInfo, "c:\logs\InfoDisco.txt"

    Private Sub GravaTXT(byval strtexto,byval strCaminhoTXT)
     Dim objFSO,objTextFile
     
     set objFSO = createobject("Scripting.FileSystemObject")

     set objTextFile = objFSO.CreateTextFile(strCaminhoTXT)

     objTextFile.Write(strtexto)

     objTextFile.Close
     SET objTextFile = nothing
    End Sub

    WSCript.Quit

    ' End of Sample DiskDrive VBScript

    Salve como vbs e teste.

    Qualquer dúvida poste e se for útil vote.

    Abraço.


    Gabriel Nascimento MCP / MCSA / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    • Marcado como Resposta mauroserggio quinta-feira, 13 de maio de 2010 16:28
    quinta-feira, 13 de maio de 2010 14:07

Todas as Respostas

  • Verifique se é isso que vc precisa.

    Crie um pasta logs na unidade C:, ou altere no script o caminho onde salva os logs.


    Option Explicit
    Dim objWMIService, objItem, colItems, strComputer, strInfo

    On Error Resume Next
    strComputer = "."

    Set objWMIService = GetObject _
    ("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery _
    ("Select * from Win32_LogicalDisk where MediaType=12")

    For Each objItem in colItems
    strInfo =  strInfo & "Computer: " & objItem.SystemName & VbCrLF & _
    " ==================================" & VbCrLF & _
    "Unidade: " & objItem.Name & VbCrLF & _
    "Descrição: " & objItem.Description & VbCrLF & _
    "Nome do Volume: " & objItem.VolumeName & VbCrLF & _
    "Tipo de Drive: " & objItem.DriveType & VbCrLF & _
    "Tipo de Mídia: " & objItem.MediaType & VbCrLF & _
    "Número Serial do volume: " & objItem.VolumeSerialNumber & VbCrLF & _
    "Tamanho: " & Int(objItem.Size /1073741824) & " GB" & VbCrLF & _
    "Espaço Livre: " & Int(objItem.FreeSpace /1073741824) & " GB" & VbCrLF & _
    "Quotas Desabilitada?: " & objItem.QuotasDisabled & VbCrLF & _
    "Suporte a Quotas?: " & objItem.SupportsDiskQuotas & VbCrLF & _
    "Suporte a compactação: " & _
    objItem.SupportsFileBasedCompression & VbCrLF & _
    "Compactação: " & objItem.Compressed & VbCrLF & VbCrLF
    Next
    'Wscript.Echo strInfo
    GravaTXT strInfo, "c:\logs\InfoDisco.txt"

    Private Sub GravaTXT(byval strtexto,byval strCaminhoTXT)
     Dim objFSO,objTextFile
     
     set objFSO = createobject("Scripting.FileSystemObject")

     set objTextFile = objFSO.CreateTextFile(strCaminhoTXT)

     objTextFile.Write(strtexto)

     objTextFile.Close
     SET objTextFile = nothing
    End Sub

    WSCript.Quit

    ' End of Sample DiskDrive VBScript

    Salve como vbs e teste.

    Qualquer dúvida poste e se for útil vote.

    Abraço.


    Gabriel Nascimento MCP / MCSA / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    • Marcado como Resposta mauroserggio quinta-feira, 13 de maio de 2010 16:28
    quinta-feira, 13 de maio de 2010 14:07
  • Funcionou perfeitamente, é o que eu queria, agora, como posso fazer para enviar por e-mail estas informações?
    quinta-feira, 13 de maio de 2010 16:29
  • Option Explicit
    Dim objWMIService, objItem, colItems, strComputer, strInfo

    On Error Resume Next
    strComputer = "."

    Set objWMIService = GetObject _
    ("winmgmts:\\" & strComputer & "\root\cimv2")
    Set colItems = objWMIService.ExecQuery _
    ("Select * from Win32_LogicalDisk where MediaType=12")

    For Each objItem in colItems
    strInfo =  strInfo & "Computer: " & objItem.SystemName & VbCrLF & _
    " ==================================" & VbCrLF & _
    "Unidade: " & objItem.Name & VbCrLF & _
    "Descrição: " & objItem.Description & VbCrLF & _
    "Nome do Volume: " & objItem.VolumeName & VbCrLF & _
    "Tipo de Drive: " & objItem.DriveType & VbCrLF & _
    "Tipo de Mídia: " & objItem.MediaType & VbCrLF & _
    "Número Serial do volume: " & objItem.VolumeSerialNumber & VbCrLF & _
    "Tamanho: " & Int(objItem.Size /1073741824) & " GB" & VbCrLF & _
    "Espaço Livre: " & Int(objItem.FreeSpace /1073741824) & " GB" & VbCrLF & _
    "Quotas Desabilitada?: " & objItem.QuotasDisabled & VbCrLF & _
    "Suporte a Quotas?: " & objItem.SupportsDiskQuotas & VbCrLF & _
    "Suporte a compactação: " & _
    objItem.SupportsFileBasedCompression & VbCrLF & _
    "Compactação: " & objItem.Compressed & VbCrLF & VbCrLF
    Next
    'Wscript.Echo strInfo
    GravaTXT strInfo, "c:\logs\InfoDisco.txt"

    Set objEmail = CreateObject("CDO.Message")

    objEmail.From = "user@seudominio.com.br"
    objEmail.To = "user@seudominio.com.br"
    objEmail.Subject = "Informações de Disco"
    objEmail.Textbody = strInfo
    objEmail.Configuration.Fields.Item _
        ("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    objEmail.Configuration.Fields.Item _
        ("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "SEU SMTP SERVER"
    objEmail.Configuration.Fields.Item _
        ("http://schemas.microsoft.com/cdo/configuration/smtpserverport") = 25
    objEmail.Configuration.Fields.Update
    objEmail.Send 

     

    Private Sub GravaTXT(byval strtexto,byval strCaminhoTXT)
     Dim objFSO,objTextFile
     
     set objFSO = createobject("Scripting.FileSystemObject")

     set objTextFile = objFSO.CreateTextFile(strCaminhoTXT)

     objTextFile.Write(strtexto)

     objTextFile.Close
     SET objTextFile = nothing
    End Sub

    WSCript.Quit

    Só altere o que estiver em negrito.

    Abraço.


    Gabriel Nascimento MCP / MCSA / CCNA http://gabrielnascimentoit.spaces.live.com -- Se for útil vote.
    quinta-feira, 13 de maio de 2010 16:49