Install the LSUClient PowerShell module
masterInstall the LSUClient module from the PowerShell Gallery to orchestrate driver, BIOS/UEFI, firmware, and utility software updates for Lenovo computers.
Install-Module -Name 'LSUClient'repository·master·Indexed 43 days ago
https://github.com/jantari/lsuclientA PowerShell module for orchestrating driver, BIOS/UEFI, firmware, and utility software updates for Lenovo business and consumer computers. Supports local and remote fleet management with features for silent, unattended installations and the ability to retrieve packages for specific Lenovo models.
Install the LSUClient module from the PowerShell Gallery to orchestrate driver, BIOS/UEFI, firmware, and utility software updates for Lenovo computers.
Install-Module -Name 'LSUClient'When running updates via MDT, SCCM, PDQ, PowerShell Remoting, or SSH, it is strongly recommended to filter for packages that support unattended installation. This prevents installers from launching GUIs or forcing unexpected reboots that could halt an automated process.
Filter using the Installer.Unattended property of the update object.
# Install only packages that can be installed silently and non-interactively
$updates = Get-LSUpdate | Where-Object { $_.Installer.Unattended }
$updates | Save-LSUpdate -Verbose
$updates | Install-LSUpdate -VerboseYou can use the -Model parameter with Get-LSUpdate to fetch packages for a different computer model. When doing this, you should also use the -All parameter to ensure all packages for that model are retrieved rather than just those applicable to your current machine.
# Download drivers for another computer model
Get-LSUpdate -Model 20LS -All | Save-LSUpdate -Path 'C:\20LS_Drivers' -ShowProgressUse Get-LSUpdate to retrieve updates that are applicable to the system and not yet installed. You can then pipe these results to Install-LSUpdate to perform the installation.
Note: By default, Get-LSUpdate only returns "needed" updates. To retrieve all available packages regardless of installation status, use the -All parameter.
# See available updates
Get-LSUpdate
# Find and install available updates
$updates = Get-LSUpdate
$updates | Install-LSUpdate -Verbose-All: Retrieves all available packages instead of only "needed" updates (applicable and not yet installed).-Model <string>: Specifies a different Lenovo model to retrieve packages for.By default, Get-LSUpdate is equivalent to:
Get-LSUpdate -All | Where-Object { $_.IsApplicable -and -not $_.IsInstalled }
IsApplicable: Boolean indicating if the package applies to the system.IsInstalled: Boolean indicating if the package is already installed.Installer.Unattended: Boolean indicating if the installer supports silent/non-interactive execution.$env:TEMP\LSUPackages. You must manually delete these files to free up space.https://download.lenovo.com..xml, .exe, and .inf files from that domain.