Kako doći ili promijeniti postavke BIOS-a iz PowerShell-a?

PowerShell možete koristiti za pregled ili promjenu postavki BIOS-a na Windows računalu. Pogledajmo nekoliko primjera pomoću kojih možete dobiti ili promijeniti neke postavke BIOS-a kroz WMI klase (Windows Management Instrumentation) na računalima popularnih proizvođača: HP, Lenovo, Dell.

Osnovni parametri BIOS-a mogu se dobiti na bilo kojem računalu pomoću cmdleta Get-WmiObject iz klase Win32_BIOS:

Get-WmiObject -Class Win32_BIOS | Popis oblika *

Ova naredba omogućuje vam da nabavite verziju BIOS-a (SMBIOSBIOSVersion, BIOSVersion), proizvođača (proizvođača), serijski broj računala (SerialNumber), datum izdavanja (ReleaseDate) i brojne druge parametre.

Mogu se prikazati samo određeni parametri BIOS-a, na primjer, proizvođač i verzija BIOS-a.

Get-WmiObject -Class Win32_BIOS | Proizvođač odabranih objekata, SMBIOSBIOSVersion

Klasu Win32_BIOS možete koristiti za prikaz nekih podataka o BIOS-u na bilo kojem Windows računalu. Međutim, neki proizvođači hardvera pružaju posebne klase WMI za pristup BIOS-u iz sustava Windows (potrebno je da se izvorni upravljački programi proizvođača instaliraju na računalo).

Upravljanje BIOS-om iz PowerShell-a na Lenovo računalima

Na primjer, na računalima Lenovo popis nekih BIOS parametara i njihove vrijednosti mogu se dobiti ovako:

Get-WmiObject -klasa Lenovo_BiosSetting -name root root \ wmi

Možete prikazati samo nazive postavki BIOS-a i trenutne vrijednosti:

Get-WmiObject -clas Lenovo_BiosSetting -name root root \ wmi | select-object InstanceName, trenutna postavka

Provjerite je li lozinka za ulazak u BIOS postavljena na računalu Lenovo:

(gwmi -Class Lenovo_BiosPasswordSettings-korijen imena prostora \ wmi) .PasswordState

Ako je naredba vratila 0, lozinka za ulazak u BIOS nije postavljena.

Možete promijeniti neke postavke BIOS-a na Lenovo računalima. Na primjer, uključite WOL računalo:

$ getLenovoBIOS = gwmi -klasa Lenovo_SetBiosSetting -name root root \ wmi
$ getLenovoBIOS.SetBiosSetting ("WakeOnLAN, omogući")
$ SaveLenovoBIOS = (gwmi -klasa Lenovo_SaveBiosSettings-root prostora \ wmi)
$ SaveLenovoBIOS.SaveBiosSettings ()

Postavljanje BIOS-a iz PowerShell-a na računalima Hewlett-Packard

Na računalima HP Sljedeću naredbu možete koristiti za dobivanje BIOS parametara, njihovih vrijednosti i dostupnih opcija:

Get-WmiObject -Namespace root / hp / instrumentedBIOS -Class hp_biosPredbroj | odaberite Ime, vrijednost, moguće vrijednosti -AutoSize

Neke postavke BIOS-a možete promijeniti na HP računalima iz PowerShell-a. Na primjer, želite onemogućiti pokretanje računala s USB uređaja.

$ getHPBios = gwmi -klasa hp_biossettinginterface -Namespace "root \ hp \ instrumentedbios"
$ getHPBios.SetBIOSSetting ('Spremnik za USB pohranu', 'Onemogući')

Ako je za promjenu postavki BIOS-a potrebna lozinka, možete koristiti sljedeću skriptu:

$ HPBIOSPassword = "" + "P @ $$ w0rd"
$ getHPBios = gwmi -klasa hp_biossettinginterface -Namespace "root \ hp \ instrumentedbios"
$ getHPBios.SetBIOSSetting ('Mrežna (PXE) Boot', 'Disable', $ HPBIOSPassword)

Ako je zadnja naredba vratila "Return 0", tada je uspješno radila. Možete napraviti jednostavan rukovatelj:

$ ChangeBIOS_State = $ bios.setbiossetting (Network (PXE) Boot "," Disable ", $ HPBIOSPassword)
$ ChangeBIOS_State_Code = $ ChangeBIOS_State.return
Ako je (($ ChangeBIOS_State_Code) -eq 0)

zapisivanje-domaćin "OK"

drugo

write-host "Pogreška - (Povratak kod $ ChangeBIOS_State_Code)" -Foreground crveno

Ako želite omogućiti LAN / WLAN prebacivanje u BIOS-u na HP-ovom prijenosnom računalu da se automatski isključi s Wi-Fi-ja kad imate Ethernet vezu, pokrenite naredbu:

$ getHPBios.SetBIOSSetting ('Prebacivanje LAN / WLAN', 'Omogući')

Postavljanje BIOS-a na DELL uređajima iz PowerShell-a

Na računalima DELL Da biste pogledali i upravljali BIOS parametrima, možete koristiti klasu WMI DCIM-BIOSService ili noviju klasu \ dellomci root (dostupno nakon instaliranja OMCI paketa - Otvori Manage Client Instrumentation).

Da biste dobili postupak popisa uređaja za podizanje sustava u BIOS-u na Dell računalima, učinite sljedeće:

Get-WmiObject -NameSpace root \ dellomci Dell_BootDeviceSequence | sortirati redoslijed pokretanja | odaberite BootDeviceName, BootOrder

Na primjer, u BIOS-u možete omogućiti Wake on LAN na sljedeći način:

(Get-WmiObject DCIM-BIOSService-namespace rootdcimsysman) .SetBIOSAttributes ($ null, $ null, "Wake-On-LAN", "4")

Dell je također objavio zasebni PowerShell modul. DellBIOSProvider, koji se instalira pri instaliranju upravljačkih programa ili ga možete ručno instalirati pomoću naredbe:

Instaliraj-Modul-Ime DellBIOSProvider -Force

Pomoću ovog modula možete dobiti nalog za pokretanje sustava na Dell računalu:

Get-ChildItem DellSmbios: \ BootSequence \ Bootsequence

Za promjenu postavke BIOS-a koristite cmdlet Set-Item. Na primjer, za promjenu BIOS lozinke:

Postavka-Postavka-Put Dellsmbios \ Sigurnost \ AdminPassword -Value 0ldDellP @ ss -Password Newde11P @ ss

Korištenjem gore opisanih metoda, možete kreirati skriptu PowerShell-a za vaše modele računala koja izvoze trenutne postavke BIOS-a s referentnog računala (na primjer, na CSV) i primjenjuju ih na sva ostala računala istog modela. Na taj se način BIOS postavke mogu standardizirati na svim računalima u mreži..