Я хочу создать сценарий или что-то в этом роде, которое позволит мне проверять версию ОС всех пользователей в AD, не прерывая ежедневных операций. Пока что я нашел этот скрипт, который находит информацию об ОС, http://www.windowsadminscripts.com/coding/networking/osinfo/.
Но я понятия не имею, как применить этот сценарий ко всем пользователям в AD. Любой совет?
Вы можете достичь этой цели, используя PowerShell команда. Откройте окно командной строки PowerShell и введите следующую команду:
Get-ADComputer -Filter * -Property * | Format-Table Name,OperatingSystem,OperatingSystemServicePack,OperatingSystemVersion -Wrap –Auto
Эта команда фильтрует все компьютеры по всем их свойствам. Затем он перенаправляет вывод в форматированную таблицу.
Единственные атрибуты, которые содержит таблица, - это имя компьютера, описание операционной системы, пакет обновления и версия ОС. Он также автоматически изменяет размер и упаковывает данные.
Чтобы найти все серверы в домене, выполните следующую команду:
Get-ADComputer -Filter {OperatingSystem -Like "Windows Server*"} -Property * | Format-Table Name,OperatingSystem,OperatingSystemServicePack -Wrap -Auto
Чтобы найти все серверы под управлением Windows Server 2008, запустите:
Get-ADComputer -Filter {OperatingSystem -Like "Windows Server*2008*"} -Property * | Format-Table Name,OperatingSystem,OperatingSystemServicePack -Wrap -Auto
Чтобы найти все серверы под управлением Windows Server 2008 R2, запустите:
Get-ADComputer -Filter {OperatingSystem -Like "Windows Server*r2*"} -Property * | Format-Table Name,OperatingSystem,OperatingSystemServicePack -Wrap -Auto
Надеюсь, это ответит на ваш вопрос.
Редактировать:
Чтобы запустить Get-ADComputer
, вам нужно будет установить «Инструменты удаленного администрирования сервера для Windows».
следить Это руководство для этого. Затем в терминале PowerShell введите:
import-module activedirectory
А затем повторно запустите Get-ADComputer
команда.
Посмотрите следующий снимок экрана, вы видите ошибку, потому что в первый раз, когда я запустил команду, у меня не был установлен модуль Active Directory для PowerShell:
Предполагая, что вы имеете в виду компьютеры, которые используют ваши пользователи, эта информация уже хранится в AD для любого компьютера, присоединенного к домену. Вы должны иметь возможность сценария, извлекающего эти атрибуты из объектов компьютера: operatingSystem
, operatingSystemServicePack
, & operatingSystemVersion
.
В дополнение к командам PowerShell, опубликованным выше, вы также можете использовать инструмент на основе графического интерфейса под названием PowerGUI. Это довольно удобный инструмент, который значительно упрощает управление ActiveDirectory. Вы можете выполнить то, о чем спрашиваете в этом вопросе, и многое другое. Пока вы используете графический интерфейс, он фактически запускает команды PowerShell в фоновом режиме. Вы можете просмотреть скрипты, которые он запускает.
Я бы также рекомендовал проверить Quest Активные роли которые предоставляют множество командлетов PowerShell.