Bagaimana cara mendapatkan atau mengubah pengaturan BIOS dari PowerShell?

Anda dapat menggunakan PowerShell untuk melihat atau mengubah pengaturan BIOS di komputer Windows Anda. Mari kita lihat beberapa contoh yang dapat Anda gunakan untuk mendapatkan atau mengubah beberapa pengaturan BIOS melalui kelas WMI (Windows Management Instrumentation) pada komputer dari produsen populer: HP, Lenovo, Dell.

Parameter BIOS dasar dapat diperoleh di komputer mana saja menggunakan cmdlet Get-WmiObject dari kelas Win32_BIOS:

Dapatkan-WmiObject -Class Win32_BIOS | Format-Daftar *

Perintah ini memungkinkan Anda untuk mendapatkan versi BIOS (SMBIOSBIOSVersion, BIOSVersion), produsen (Pabrikan), nomor seri komputer (SerialNumber), tanggal rilis (ReleaseDate) dan sejumlah parameter lainnya.

Hanya parameter BIOS tertentu yang dapat ditampilkan, misalnya, versi pabrikan dan BIOS.

Dapatkan-WmiObject -Class Win32_BIOS | Select-Object Manufacturer, SMBIOSBIOSVersion

Anda dapat menggunakan kelas Win32_BIOS untuk melihat beberapa informasi BIOS pada komputer Windows apa pun. Namun, beberapa produsen perangkat keras menyediakan kelas WMI khusus untuk mengakses BIOS dari Windows (perlu bahwa driver asli pabrik diinstal pada komputer).

Mengelola BIOS dari PowerShell di komputer Lenovo

Misalnya, di komputer Lenovo daftar beberapa parameter BIOS dan nilainya dapat diperoleh seperti ini:

Dapatkan-WmiObject -class Lenovo_BiosSetting -namespace root \ wmi

Anda hanya dapat menampilkan nama pengaturan BIOS dan nilai saat ini:

Dapatkan-WmiObject -class Lenovo_BiosSetting -namespace root \ wmi | pilih-objek InstanceName, pengaturan arus

Periksa apakah kata sandi untuk memasuki BIOS telah diatur pada komputer Lenovo:

(gwmi -Kelas Lenovo_BiosPasswordSettings -Namespace root \ wmi) .PasswordState

Jika perintah mengembalikan 0, maka kata sandi untuk memasuki BIOS tidak diatur.

Anda dapat mengubah beberapa pengaturan BIOS pada komputer Lenovo. Misalnya, nyalakan komputer WOL:

$ getLenovoBIOS = gwmi -class Lenovo_SetBiosSetting -namespace root \ wmi
$ getLenovoBIOS.SetBiosSetting ("WakeOnLAN, Enable")
$ SaveLenovoBIOS = (gwmi -class Lenovo_SaveBiosSettings -namespace root \ wmi)
$ SaveLenovoBIOS.SaveBiosSettings ()

Pengaturan BIOS dari PowerShell pada Komputer Hewlett-Packard

Di komputer HP Anda dapat menggunakan perintah berikut untuk mendapatkan parameter BIOS, nilainya, dan opsi yang tersedia:

Get-WmiObject -Namespace root / hp / instrumentedBIOS -Class hp_biosEnumeration | pilih Nama, nilai, nilai yang mungkin -AutoSize

Anda dapat mengubah beberapa pengaturan BIOS pada komputer HP dari PowerShell. Misalnya, Anda ingin menonaktifkan boot komputer dari perangkat USB.

$ getHPBios = gwmi -kelas hp_biossettinginterface -Namespace "root \ hp \ instrumentedbios"
$ getHPBios.SetBIOSSetting ('Boot Penyimpanan USB', 'Nonaktifkan')

Jika kata sandi diperlukan untuk mengubah pengaturan BIOS, Anda dapat menggunakan skrip berikut:

$ HPBIOSPassword = "" + "P @ $$ w0rd"
$ getHPBios = gwmi -kelas hp_biossettinginterface -Namespace "root \ hp \ instrumentedbios"
$ getHPBios.SetBIOSSetting ('Boot Jaringan (PXE)', 'Nonaktifkan', $ HPBIOSPassword)

Jika perintah terakhir kembali "Kembali 0", maka itu berhasil. Anda dapat membuat penangan sederhana:

$ ChangeBIOS_State = $ bios.setbiossetting (Boot Jaringan (PXE) ',' Disable ', $ HPBIOSPassword)
$ ChangeBIOS_State_Code = $ ChangeBIOS_State.return $
If (($ ChangeBIOS_State_Code) -eq 0)

tuan rumah "OK"

Lain

tulis-host "Kesalahan - (Kode pengembalian $ ChangeBIOS_State_Code)" -Foreground Red

Jika Anda ingin mengaktifkan LAN / WLAN Switching di BIOS pada laptop HP Anda untuk memutuskan sambungan secara otomatis dari Wi-FI ketika Anda memiliki koneksi Ethernet, jalankan perintah:

$ getHPBios.SetBIOSSetting ('Switching LAN / WLAN', 'Aktifkan')

Pengaturan BIOS pada perangkat DELL dari PowerShell

Di komputer Dell Untuk melihat dan mengelola parameter BIOS, Anda dapat menggunakan kelas WMI DCIM-BIOSService atau kelas root \ dellomci yang lebih baru (tersedia setelah menginstal paket OMCI - Buka Kelola Instrumentasi Klien).

Untuk mendapatkan prosedur enumerasi perangkat boot di BIOS pada komputer Dell, lakukan:

Dapatkan-WmiObject -NameSpace root \ dellomci Dell_BootDeviceSequence | semacam bootorder | pilih BootDeviceName, BootOrder

Misalnya, Anda dapat mengaktifkan Wake on LAN di BIOS sebagai berikut:

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

Dell juga merilis modul PowerShell terpisah. DellBIOSProvider, yang diinstal saat menginstal driver, atau Anda dapat menginstalnya secara manual dengan perintah:

Instal-Modul -Nama DellBIOSProvider -Force

Dengan menggunakan modul ini, Anda bisa mendapatkan urutan boot pada komputer Dell:

Dapatkan-ChildItem DellSmbios: \ BootSequence \ Boot berikutnyaence

Untuk mengubah pengaturan BIOS, gunakan cmdlet Set-Item. Misalnya, untuk mengubah kata sandi BIOS:

Set-Item -Path Dellsmbios \ Security \ AdminPassword -Nilai 0ldDellP @ ss -Password Newde11P @ ss

Menggunakan metode yang dijelaskan di atas, Anda dapat membuat skrip PowerShell untuk model PC Anda yang mengekspor pengaturan BIOS saat ini dari komputer referensi (misalnya, ke CSV) dan menerapkannya ke semua komputer lain dari model yang sama. Dengan cara ini, pengaturan BIOS dapat distandarisasi pada semua komputer di jaringan..