Az Azure PowerShell-modul eltávolítása
Figyelmeztetés
Az AzureRM PowerShell-modul 2024. február 29-én hivatalosan elavult. Javasoljuk a felhasználóknak, hogy migráljanak az AzureRM-ből az Az PowerShell-modulba a folyamatos támogatás és frissítések biztosítása érdekében.
Bár az AzureRM-modul továbbra is működik, a továbbiakban nem tart fenn vagy nem támogatott, így a folyamatos használatot a felhasználó saját belátása szerint és kockázatára teheti. Az Az modulra való áttéréshez tekintse meg a migrálási erőforrásainkat.
Ez a cikk bemutatja, hogyan távolítható el az Azure PowerShell egy régebbi verziója, illetve hogyan távolítható el az Azure PowerShell teljesen a rendszerből. Ha úgy döntött, hogy teljesen eltávolítja az Azure PowerShellt, ossza meg velünk visszajelzését a Send-Feedback parancsmaggal. Ha hibát tapasztal, kérjük, jelentse be a GitHubon.
Az Azure PowerShell MSI eltávolítása
Ha az Azure PowerShellt az MSI-csomaggal telepítette, akkor a Windows rendszer segítségével kell eltávolítania, nem a PowerShell-lel.
Platform | Utasítások |
---|---|
Windows 10 | Gépház-alkalmazások > indítása > |
Windows 7 Windows 8 |
Program eltávolítása Vezérlőpult > programok > indítása > |
Itt a programok listájában megjelenik az Azure PowerShell. Ezt az alkalmazást távolítsa el.
Eltávolítás PowerShellből
Ha az Azure PowerShellt a PowerShellGet segítségével telepítette, használhatja az Uninstall-Module parancsmagot. Azonban az Uninstall-Module
csak egy modult távolít el. Az Azure PowerShell teljes eltávolításához egyesével kell eltávolítania a modulokat. Az eltávolítás bonyolult lehet, ha több Azure PowerShell-verzió is telepítve van.
Az Azure PowerShell aktuálisan telepített verzióinak megállapításához futtassa a következő parancsot:
Get-InstalledModule -Name AzureRM -AllVersions
Version Name Repository Description
------- ---- ---------- -----------
6.11.0 AzureRM PSGallery Azure Resource Manager Module
6.13.1 AzureRM PSGallery Azure Resource Manager Module
Az alábbi szkript lekérdezi a PowerShell-galériából a függő almodulok listáját. Ezután a szkript eltávolítja az egyes almodulok megfelelő verzióját. A szkript futtatásához rendszergazdai hozzáféréssel kell rendelkeznie egy olyan hatókörben, amely nem Process
vagy CurrentUser
.
function Uninstall-AllModules {
param(
[Parameter(Mandatory=$true)]
[string]$TargetModule,
[Parameter(Mandatory=$true)]
[string]$Version,
[switch]$Force,
[switch]$WhatIf
)
$AllModules = @()
'Creating list of dependencies...'
$target = Find-Module $TargetModule -RequiredVersion $version
$target.Dependencies | ForEach-Object {
if ($_.PSObject.Properties.Name -contains 'requiredVersion') {
$AllModules += New-Object -TypeName psobject -Property @{name=$_.name; version=$_.requiredVersion}
}
else { # Assume minimum version
# Minimum version actually reports the installed dependency
# which is used, not the actual "minimum dependency." Check to
# see if the requested version was installed as a dependency earlier.
$candidate = Get-InstalledModule $_.name -RequiredVersion $version -ErrorAction Ignore
if ($candidate) {
$AllModules += New-Object -TypeName psobject -Property @{name=$_.name; version=$version}
}
else {
$availableModules = Get-InstalledModule $_.name -AllVersions
Write-Warning ("Could not find uninstall candidate for {0}:{1} - module may require manual uninstall. Available versions are: {2}" -f $_.name,$version,($availableModules.Version -join ', '))
}
}
}
$AllModules += New-Object -TypeName psobject -Property @{name=$TargetModule; version=$Version}
foreach ($module in $AllModules) {
Write-Host ('Uninstalling {0} version {1}...' -f $module.name,$module.version)
try {
Uninstall-Module -Name $module.name -RequiredVersion $module.version -Force:$Force -ErrorAction Stop -WhatIf:$WhatIf
} catch {
Write-Host ("`t" + $_.Exception.Message)
}
}
}
A függvény használatához másolja és illessze be a kódot a PowerShell-munkamenetbe. A következő példa bemutatja, hogyan futtatható a függvény az Azure PowerShell egy régebbi verziójának eltávolításához.
Uninstall-AllModules -TargetModule AzureRM -Version 4.4.1 -Force
Miközben a szkript fut, megjeleníti az eltávolítás alatt álló egyes almodulok nevét és verzióját. Ha úgy szeretné futtatni a szkriptet, hogy az eltávolításuk nélkül tekinthesse meg a törlésre kijelölt elemeket, akkor használja a -WhatIf
kapcsolót.
Creating list of dependencies...
Uninstalling AzureRM.Profile version 3.4.1
Uninstalling Azure.Storage version 3.4.1
Uninstalling AzureRM.AnalysisServices version 0.4.7
Uninstalling Azure.AnalysisServices version 0.4.7
...
Feljegyzés
Ha ez a szkript nem talál egy pontosan ugyanolyan verziójú függőséget az eltávolításhoz, akkor a függőségnek egyik verzióját sem fogja eltávolítani. Ennek oka, hogy a célmodulnak más verziói is megtalálhatók lehetnek a rendszeren, amelyek használhatják az adott függőségeket. Ebben az esetben az adott függőség elérhető verziói lesznek felsorolva. Ezután manuálisan eltávolíthatja a régi verziókat az Uninstall-Module
paranccsal.
Futtassa ezt a parancsot minden olyan Azure PowerShell-verzió esetében, amelyet el szeretne távolítani. Az egyszerűség kedvéért az alábbi szkript az AzureRM összes verzióját eltávolítja, kivéve a legfrissebbet.
$versions = (Get-InstalledModule -Name AzureRM -AllVersions | Select-Object -Property Version)
$versions[0..($versions.Length-2)] | foreach { Uninstall-AllModules -TargetModule AzureRM -Version ($_.Version) -Force }