O Dell Command | Deploy Catalog (conhecido como Catálogo do pacote de drivers) 1.0 (Notas da versão) contém os metadados sobre os mais recentes Pacotes de driver para sistema e WinPE lançados pela Dell. Ele é compatível com tablets Dell, sistemas Latitude, OptiPlex e Precision. Com ele, os clientes podem localizar e fazer download da versão atual do Dell Command | Deploy Driver Packs (conhecido como Pacote de drivers) usando o método de automação que preferirem.
O Catálogo do pacote de driver e os Pacotes de drivers são atualizados de acordo com a programação de lançamento. O Catálogo do pacote de driver está disponível para download em qualquer um dos três links abaixo:
https://downloads.dell.com/catalog/DriverPackCatalog.cab
ftps://downloads.dell.com/catalog/DriverPackCatalog.cab
ftps://ftps.dell.com/catalog/DriverPackCatalog.cabO Catálogo de pacotes de drivers é um arquivo XML "DriverPackCatalog.xml" e é uma lista transversal de Pacotes de drivers de sistema e WinPE aplicáveis a sistemas Dell Enterprise (Latitude, OptiPlex, Precision e tablets). O "DriverPackCatalog.xml" é compactado, assinado digitalmente e entregue pela Internet como "DriverPackCatalog.cab". O esquema XML para o "DriverPackCatalog.xml" está disponível para download em DriverPackManifest.xsd (os XSDs mencionados estão disponíveis na mesma localização: DataModelCore.xsd e Package.xsd).
Confira o blog do astro do Dell TechCenter, Dustin Sebes onde ele "automagicamente" obtém os CABs de driver usando o catálogo de pacote de driver. O guru de MDT, Keith Garner, tem um script para MDT (com tutorial em vídeo) também!
O conteúdo do "DriverPackCatalog.xml" pode ser de duas categorias:
1. Metadados sobre o Catálogo do pacote de drivers:
Esta seção atua como nó-pai para as versões do Pacote de driver e contém metadados sobre o catálogo em si. As informações significativas ou os atributos presentes nesta seção estão descritos abaixo:
Componente de URL, para localizar a pasta-raiz durante o download de um Pacote de driver.
Os protocolos de rede são permitidos na localização base. Por padrão, HTTP e FTP são permitidos.
Informações sobre a data e hora de criação do Catálogo.
Versão do catálogo. O número da versão está no seguinte formato: Ano.Mês.NúmeroDaVersão (AAAA.MM.NV).
Informações sobre a versão do Esquema XML usado para criar o catálogo.
2. Metadados sobre os Pacotes de driver:
Cada nó "Driver Package" representa um pacote de drivers como uma entidade. Os dados ou informações presentes como atributos e nós-filho servem para duas funções básicas:
Com base na finalidade mencionada, alguns dos atributos significativos e nós-filho são explicados em mais detalhes:
Atributo significativo do nó "Driver Package":
O valor padrão é "DUP", já que os Pacotes de drivers são entregues como um arquivo .EXE.
MD5 para o arquivo .EXE.
Tamanho do arquivo .EXE.
Data de lançamento do Pacote de driver.
Geralmente, o valor padrão é: 1.0. No entanto, a versão mudará se a estrutura interna do Pacote de drivers mudar.
Versão atribuída da Dell para a versão do Pacote de driver. O número da versão é atribuído de A00 a A99 de modo incremental.
Exibe informações sobre a URL relativa da localização raiz de download ou a "baselocation" do nó "DriverPackManifest".
Identificação exclusiva atribuída pela Dell ao Pacote de driver.
O Catálogo de pacotes de drivers é compatível com Pacotes de drivers do sistema e do WinPE. O tipo é "Win" para Pacotes de drivers do sistema e "WinPE" para Pacotes de drivers do WinPE.
Nós secundários significativos do nó "Driver Package":
O nó "SupportedSystems" define a aplicabilidade de um Pacote de drivers em relação ao modelo. O nó "Brand" (secundário) apresenta informações sobre a Linha de negócios e o nó "Model" (terciário) apresenta informações sobre o Modelo.
Os principais atributos dos nós "Brand" e "Model" usados para avaliar a aplicabilidade do Modelo são:
A Dell atribuiu a chave de identificação e o prefixo da Linha de negócios.
Tecla |
Prefixo |
Linha de negócios |
---|---|---|
4 |
LAT |
Latitude |
1 |
OP |
OptiPlex |
11 |
PRE |
Dell Precision |
90 |
TABLET |
Tablet |
72 |
XPSNOTEBOOK |
Notebook XPS |
Identificação exclusiva atribuída pela Dell para um BIOS de sistema de um Modelo.
A Dell atribuiu o nome de um modelo.
Nota: Tanto "systemID" quanto "name" são exibidos no BIOS, mas "systemID" não é uma consulta de WMI prontamente acessível. Por isso, recomenda-se o uso de "nome".
Nota: Não se recomenda o uso programático de CDATA do nó "Display".
A aplicabilidade do sistema operacional de um Pacote de drivers é definida pelos nós "SupportedOperatingSystems" e "OperatingSystem".
Os principais atributos do nó "Operating System" usados para avaliar a aplicabilidade do sistema operacional são:
Como os Pacotes de driver são direcionados apenas para sistemas operacionais Microsoft Windows, o valor padrão é Microsoft.
Os Pacotes de driver para sistema e WinPE da Dell são compatíveis com estrutura de sistema operacional de 32-bit(x86) e 64-bit(x64).
Esses atributos representam a versão principal, secundária, principal e secundária do service pack do sistema operacional Windows. Para obter mais informações, consulte Versão do sistema operacional.
Nota: Os Pacotes de drivers são criados e lançados apenas para sistemas operacionais de client, como Windows XP, Windows Vista, Windows 7, Windows 8, Windows 8.1 etc. Os Pacotes de drivers para todos os sistemas operacionais de determinado Modelo podem não estar disponíveis devido à compatibilidade de hardware/software, entre outros motivos.
Nota: Não é recomendável usar outros dados presentes no arquivo xml, como Idioma, Nome, Cargo etc., ou seja, "majorVersion", "minorVersion", "osArch" e "osVendor" para identificar a aplicabilidade do SO.
1. Como fazer download do "DriverPackCatalog.cab" da Dell?
Nota: O arquivo "DriverPackCatalog.cab" mais recente do Catálogo de pacotes de drivers está disponível no site do Suporte Dell. As versões anteriores são removidas do site a cada nova atualização.
Snippet de script PowerShell:
Descrição: Use http://downloads.dell.com/catalog/DriverPackCatalog.cab, ftp://downloads.dell.com/catalog/DriverPackCatalog.cab ou ftp://ftp.dell.com/catalog/DriverPackCatalog.cab para fazer download do catálogo para o diretório atual.
$source = "http://downloads.dell.com/catalog/DriverPackCatalog.cab"
$destination = "$pwd" + "\DriverPackCatalog.cab"
$wc = New-Object System.Net.WebClient
$wc.DownloadFile($source, $destination)
2. Como obter o "DriverPackCatalog.xml" a partir do "DriverPackCatalog.cab"?
O Catálogo de pacotes de drivers ("DriverPackCatalog.xml") é digitalmente assinado e entregue como um arquivo "DriverPackCatalog.cab" que pode ser extraído.
Snippet de script PowerShell:
Descrição: Extrai "DriverPackCatalog.xml" do "DriverPackCatalog.cab" para o diretório atual.
$catalogCABFile = "$pwd" + "\DriverPackCatalog.cab"
$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"
EXPANDA $catalogCABFile $catalogXMLFile
3. Como encontrar a lista de modelos compatíveis com "DriverPackCatalog.xml"?
Nota: Embora os códigos de LOB, cargo e modelo estejam presentes nos nós secundários, nós recomendamos que você use o Nome e o ID do BIOS/Sistema para avaliar a aplicabilidade do Pacote de drivers.
Descrição: Obtenha o mapeamento entre o nome do modelo e o ID do BIOS/sistema, além da linha de negócios, para o sistema compatível com o catálogo em "DriverPackCatalog.xml", disponível no diretório atual.
$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"
[xml]$catalogXMLDoc = Get-Content $catalogXMLFile
$catalogXMLDoc.DriverPackManifest.DriverPackage | Select-Object @{Expression={$_.SupportedSystems.Brand.key};Label="LOBKey";}, @{Expression={$_.SupportedSystems.Brand.prefix};Label="LOBPrefix";}, @{Expression={$_.SupportedSystems.Brand.Model.systemID};Label="SystemID";}, @{Expression={$_.SupportedSystems.Brand.Model.name};Label="SystemName";} –unique
Nota: É possível associar um nome de Modelo a mais de um ID de Sistema e vice-versa. Esses casos são possíveis porque os recursos/configurações são controlados pelo ID do BIOS/sistema e mais de uma configuração pode estar disponível para alguns Modelos.
Recomendações: É necessário percorrer o Catálogo de pacotes de drivers usando SystemID ou SystemName, conforme descrito no script acima, ou seja, os atributos "SystemID" e "Name" do nó Modelo. Mas como o SystemID não está facilmente acessível pela Classes WMI da Microsoft, então os atributos "Name" são preferidos.
4. Como procurar ou localizar Pacotes de drivers para um sistema em "DriverPackCatalog.xml"?
Depois que o "DriverPackCatalog.xml" for disponibilizado no diretório atual, o xml poderá ser analisado para localizar todos os Pacotes de drivers aplicáveis a um modelo usando o Nome ou o ID do BIOS/Sistema.
Snippet de script PowerShell:
Descrição: Para obter todos os Pacotes de drivers de sistema e WinPE aplicáveis para um determinado sistema, substitua o "ID do BIOS" ou o "Nome do sistema" no script.
$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"
[xml]$catalogXMLDoc = Get-Content $catalogXMLFile
$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.SupportedSystems.Brand.Model.systemID -eq "BIOS ID") -or ($_.type -eq "WinPE")} |sort type
Ou
$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.SupportedSystems.Brand.Model.name -eq "System Name") -or ($_.type -eq "WinPE")} |sort type
5. Como encontrar um Pacote de drivers para um sistema e um sistema operacional em "DriverPackCatalog.xml"?
O Catálogo de pacotes de drivers contém apenas os Pacotes de drivers mais recentes para um determinado Modelo e Sistema operacional.
Snippet de script PowerShell:
Descrição: Substitua "OS Major Version", "OS Minor Version" e "BIOS ID" ou "System Name" para obter o CAB do sistema para um modelo e um sistema operacional.
$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"
[xml]$catalogXMLDoc = Get-Content $catalogXMLFile
$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_. SupportedSystems.Brand.Model.systemID -eq "BIOS ID") -e ($_.type -ne "WinPE") -e ($_. SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version") e ($_. SupportedOperatingSystems.OperatingSystem.minorVersion -eq "Versão secundária do SO")}
Ou
$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.SupportedSystems.Brand.Model.name -eq "Nome do sistema") -e ($_.type -ne "WinPE") -e ($_. SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version") e ($_. SupportedOperatingSystems.OperatingSystem.minorVersion -eq "Versão secundária do SO")}
6. Como encontrar os Pacotes de drivers de WinPE para um sistema operacional em "DriverPackCatalog.xml"?
Nota: Os CABs de WinPE que oferecem suporte a todos os modelos do Catálogo não possuem a lista de sistemas compatíveis.
Snippet de script PowerShell:
Descrição: Substitua "OS Major Version" e "OS Minor Version" para obter o CAB do WinPE de um sistema operacional.
$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"
[xml]$catalogXMLDoc = Get-Content $catalogXMLFile
$catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.type -eq "WinPE") -e ($_. SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version") e ($_. SupportedOperatingSystems.OperatingSystem.minorVersion -eq "Versão secundária do SO")}
7. Em "DriverPackCatalog.xml", como fazer download do link para os Pacotes de drivers para um modelo, sistema operacional e tipo?
Depois que um Pacote de driver for localizado para (Type)-(BIOS/System ID or System Name)-(Operating System), você pode baixá-lo facilmente.
Snippet de script PowerShell:
Descrição: O exemplo demonstra como fazer download de um CAB do WinPE. Substitua "OS Major Version" e "OS Minor Version" para obter o CAB WinPE de um modelo e sistema operacional e faça download do mesmo no diretório atual.
$catalogXMLFile = "$pwd" + "\DriverPackCatalog.xml"
[xml]$catalogXMLDoc = Get-Content $catalogXMLFile
$cabSelected = $catalogXMLDoc.DriverPackManifest.DriverPackage| ? { ($_.type -eq " WinPE ") -e ($_. SupportedOperatingSystems.OperatingSystem.majorVersion -eq "OS Major Version") e ($_. SupportedOperatingSystems.OperatingSystem.minorVersion -eq "Versão secundária do SO")}
$cabDownloadLink = "http://" + $catalogXMLDoc.DriverPackManifest.baseLocation + $cabSelected.path
$cabDownloadLink = "http://" + $catalogXMLDoc.DriverPackManifest.baseLocation + "/" + $cabSelected.path
$Filename = [System.IO.Path]::GetFileName($cabDownloadLink)
$downlodDestination = "$pwd" + "\" + $Filename
$wc = New-Object System.Net.WebClient
$wc.DownloadFile($cabDownloadLink, $downlodDestination)