none
Как создать коллекцию компьютеров, на которых установлены только 32-битные или только 64-битные операционные системы? RRS feed

  • Вопрос

  • Добрый день!

    Пытаюсь создать коллекцию устройств, НА КОТОРЫХ НЕ УСТАНОВЛЕН КЛИЕНТ SCCM, чтобы в колекцию попадали только компьютеры с 64-битными операционными системами (или наоборот только с 32-битными операционными системами).

    К сожалению запросы типа

    select distinct SMS_R_System.ResourceId, SMS_R_System.ResourceType, SMS_R_System.Name, SMS_R_System.SMSUniqueIdentifier, SMS_R_System.ResourceDomainORWorkgroup, SMS_R_System.Client from SMS_R_System inner join SMS_G_System_COMPUTER_SYSTEM on SMS_G_System_COMPUTER_SYSTEM.ResourceID = SMS_R_System.ResourceId where SMS_G_System_COMPUTER_SYSTEM.SystemType = "x64-based PC"

    (источник http://www.techygeekshome.co.uk/2013/01/query-to-create-collection-for-x86-x64.html)

    не помогают, т.к. после выполнения запроса в результате имеем пустую коллекцию.

    На http://social.technet.microsoft.com/Forums/en-US/27dee20f-87fe-42d4-9abd-a1e69b6047b6/query-based-collection?forum=configmanagergeneral прочитал, что "For the architecture, unfortunately you'll only get it for clients (System Resource - CPU Type) as non-clients do not report architecture information as part of discovery."

    А в нашей ситуации клиент SCCM на компьютерах как раз и не установлен.

    Можно все-таки как-то получить тип архитектуры (x64/x86) установленной операционной системы с компьютеров, на которых отсутствует клиент SCCM?

Ответы

  • Для Аудита, необходима установка клиента на проверяемый компьютер, который бы собирал в нужном Вам формате, данные со всех компьютеров сети. Для этого можно использовать WMI, протокол SMB и Вашу программу с клиентом. Шаги работы Вашей программы, могут быть такими:

    1. На удаленный компьютер в администраторскую общую папку admin$ загружается Ваш исполняемый файл-Агент.
    2. Главный модуль Вашей программы соединяется с Диспетчером служб удаленного компьютера, устанавливает и запускает Агент как службу.
    3. Агент сканирует компьютер, сохраняет собранную информацию в сжатый файл и останавливается.
    4. Главный модуль импортирует полученный файл в хранилище.
    5. Служба-Агент деинсталлируется, исполняемый файл удаляется.


    Да, я Жук, три пары лапок и фасеточные глаза :))



    Модератор

Все ответы

  • А чисто логически, откуда такую информацию можно получить, не ставя клиент? :)

    В АД ее по умолчанию нет.

  • А по вашей логике получается, если на компьютере нет клиента SCCM, то вообще невозможно узнать тип архитектуры операционной системы? На клиенте свет клином сошелся? Мне кажется что-то в этой логике не так. ;)

  • не только по агентсу SCCM можно узнать архитектуру клиента. например WMI запрос можно использовать вида Select * from Win32_Processor where AddressWidth = '32' 


    С уважением, Старовойт Максим

  • # PowerShell

    (Get-WmiObject Win32_OperatingSystem).OSArchitecture -eq "32-bit"


    Модератор
  • Спасибо за ответ.

    Под архитектурой клиента Вы подразумеваете архитектуру процессора или архитектуру установленной операционной системы?

    Мне нужно получить архитектуру операционной системы.

    Судя по тексту запроса "from Win32_Processor" вернет информацию о процессоре.

  • Спасибо за ответ.

    Вариант логичный, но почему-то не срабатывает. :(

  • Попробуйте http://gallery.technet.microsoft.com/scriptcenter/26539b66-13a7-44f6-9adb-886c54fc141f

    А вообще, какая конечная бизнес-задача?  Для чего это делать, когда можно посмотреть в консоли где не установлен клиент и установить его, или конечная задача другая?


    Примечание:Сообщения предоставляются "КАК ЕСТЬ" без каких-либо гарантий,выраженных или подразумеваемых | Note: Posts are provided “AS IS” without warranty of any kind, either expressed or implied

    Отвечающий
  • Спасибо за ссылку.

    Не все в нашем мире обусловлено бизнес-задачами. :)

    В данном случае я изучаю продукт и у меня академический интерес. Хотел создать коллекции, которые бы посчитали компьютеры с операционными системами разных типов. Зачем же ставить клиента, если нужно всего лишь пересчитать компьютеры?

  • Для Аудита, необходима установка клиента на проверяемый компьютер, который бы собирал в нужном Вам формате, данные со всех компьютеров сети. Для этого можно использовать WMI, протокол SMB и Вашу программу с клиентом. Шаги работы Вашей программы, могут быть такими:

    1. На удаленный компьютер в администраторскую общую папку admin$ загружается Ваш исполняемый файл-Агент.
    2. Главный модуль Вашей программы соединяется с Диспетчером служб удаленного компьютера, устанавливает и запускает Агент как службу.
    3. Агент сканирует компьютер, сохраняет собранную информацию в сжатый файл и останавливается.
    4. Главный модуль импортирует полученный файл в хранилище.
    5. Служба-Агент деинсталлируется, исполняемый файл удаляется.


    Да, я Жук, три пары лапок и фасеточные глаза :))



    Модератор
  • >>Для Аудита, необходима установка клиента на проверяемый компьютер.

    Спасибо за отклик, коллега!

    Воможно, для SCCM и необходима установка клиента, но есть масса программ, которым установка клиента не нужна и они позиционируют себя как безагентские. Конечно, чудес не бывает: просто в них агент временно устанавливается, а потом, после выполнения своей работы, удаляется.

    SCCM для меня продукт новый и я рассчитывал, что он способен делать инвентаризацию без установки клиента, как это умеют делать некоторые другие программы. Но на "нет" и суда нет.