Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Инвентаризация копмьютерного парка через PowerShell 2.0 (http://forum.oszone.net/showthread.php?t=235070)

JackieInIT 21-05-2012 09:12 1919663

Инвентаризация копмьютерного парка через PowerShell 2.0
 
Всем доброго времени суток! Не очень силен в PS, но получилось собрать вот такой скрипт:
$name = "Computer_Name"
$Day = get-date -format "yyyyMMdd"
$file = "d:\inventory\"+$name+"_"+$Day+".html"
"---------------$name---------------" | Out-File $file -append
Get-WMIObject Win32_OperatingSystem -ComputerName $name | select-object @{name="System"; expression={$_.Caption}} | convertto-html -head "<link rel='stylesheet' href='d:\myscripts\styles.css' type='text/css' />" | Out-File $file -Append
Get-WmiObject win32_operatingsystem -ComputerName $name | Select-Object CSDVersion, OSLanguage | convertto-html | Out-File $file -Append
"---Процессор---" | out-file $file -append
Get-WmiObject win32_processor -ComputerName $name | Select-Object @{name="Name"; expression={$_.Name}} | convertto-html | out-file $file -append
"---Материнская Плата---" | out-file $file -append
Get-WmiObject win32_baseboard -ComputerName $name | Select-Object @{Name="Manufacturer"; expression={$_.manufacturer}}, @{Name="Model"; expression={$_.product}}, serialnumber | convertto-html | out-file $file -append
"---Жесткий диск---" | out-file $file -Append
Get-WmiObject win32_diskdrive -ComputerName $name | Select-Object Model, Partitions, @{Name="Size, Gb"; Expression={$_.Size/1Gb}}, Interfacetype | convertto-html | Out-File $file -Append
"---Оперативная память---" | Out-File $file -Append
Get-WmiObject win32_physicalmemory -computername $name | Select-Object @{Name="Size, Mb"; Expression={$_.capacity/1Mb}}, DeviceLocator, @{Name="Speed"; Expression={$_.Speed}}| convertto-html | Out-File $file -Append

Подставляю для каждого компьютера в переменную $name имя и запускаю. На некоторых компьютерах отрабатывает нормально, на некоторых выдает такую ошибку:
Get-WmiObject : Отказано в доступе. (Exception from HRESULT: 0x80070005 (E_ACCE
SSDENIED))
D:\MyScripts\dyn_inventory_html.ps1:5 знак:14
+ Get-WMIObject <<<< Win32_OperatingSystem -ComputerName $name | select-object
@{name="System"; expression={$_.Caption}} | convertto-html -head "<link rel='s
tylesheet' href='d:\myscripts\styles.css' type='text/css' />" | Out-File $file
-Append
+ CategoryInfo : NotSpecified: (:) [Get-WmiObject], UnauthorizedA
ccessException
+ FullyQualifiedErrorId : System.UnauthorizedAccessException,Microsoft.Pow
erShell.Commands.GetWmiObjectCommand
PS запущен от имени доменного администратора. Хотя на эти же компы через c$ захожу нормально. Может кто подскажет. Заранее спасибо!

drak-han 13-10-2012 07:20 2004485

Попробуйте добавить такую штуку:

Код:

$cred = get-credential example@domain.ru
И дальше по аналогии с вашим скпиптом.

Код:

Get-WMIObject Win32_OperatingSystem -credential $cred -ComputerName $name | select-object @{name="System"; expression={$_.Caption}} | convertto-html -head "<link rel='stylesheet' href='d:\myscripts\styles.css' type='text/css' />" | Out-File $file -Append

Kazun 13-10-2012 12:46 2004572

Лучше скачать WinAudit - http://www.pxserver.com/WinAudit.htm ,отчет в html присутствует.

drak-han 18-10-2012 07:30 2007622

Цитата:

Цитата Kazun
Лучше скачать WinAudit - http://www.pxserver.com/WinAudit.htm ,отчет в html присутствует. »

Интересная программа, а там аудит компьютеров в сети есть? Или она только на локальной машине действует?

Kazun 18-10-2012 08:55 2007655

drak-han,есть ключи командной строки,которые позволяют автоматизировать процесс,а запуск на удаленных компьютерах,можно произвести через psexec или Win32_Process и метода Create,или создать разовое задание с помощью GPP.


Время: 18:51.

Время: 18:51.
© OSzone.net 2001-