Menghapus instalan modul Azure PowerShell
Peringatan
Modul AzureRM PowerShell telah resmi tidak digunakan lagi per 29 Februari 2024. Pengguna disarankan untuk bermigrasi dari AzureRM ke modul Az PowerShell untuk memastikan dukungan dan pembaruan yang berkelanjutan.
Meskipun modul AzureRM mungkin masih berfungsi, modul tersebut tidak lagi dipertahankan atau didukung, menempatkan penggunaan berkelanjutan berdasarkan kebijaksanaan dan risiko pengguna. Silakan merujuk ke sumber daya migrasi kami untuk panduan tentang transisi ke modul Az.
Artikel ini menjelaskan cara menghapus instalan versi Azure PowerShell lama, atau menghapus seluruhnya dari sistem Anda. Jika Anda memutuskan untuk menghapus instalan Azure PowerShell sepenuhnya, berikan beberapa umpan balik kepada kami melalui cmdlet Send-Feedback. Jika Anda menemukan bug, kami akan menghargainya jika Anda mengajukan masalah GitHub.
Menghapus instalan Azure PowerShell MSI
Jika Anda menginstal Azure PowerShell menggunakan paket MSI, Anda harus menghapus instalan melalui sistem Windows, bukan PowerShell.
Platform | Petunjuk |
---|---|
Windows 10 | Mulai > Pengaturan > Aplikasi |
Windows 7 Windows 8 |
Mulai > Panel Kontrol > Program > Hapus instalan program |
Setelah tiba di layar ini Anda akan melihat Azure PowerShell di daftar program. Ini adalah aplikasi untuk menghapus instalannya.
Menghapus instalan dari PowerShell
Jika Anda menginstal Azure PowerShell menggunakan PowerShellGet, Anda dapat menggunakan cmdlet Uninstall-Module. Namun, Uninstall-Module
hanya menghapus instalan satu modul. Untuk menghapus Azure PowerShell seluruhnya, Anda harus menghapus instalan setiap modul satu per satu. Penghapusan instalan dapat menjadi rumit jika Anda memiliki lebih dari satu versi Azure PowerShell yang diinstal.
Untuk memeriksa versi Azure PowerShell yang saat ini telah Anda pasang, jalankan perintah berikut:
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
Skrip berikut meminta Galeri PowerShell untuk mendapatkan daftar submodul dependen. Kemudian, skrip menghapus instalan versi setiap submodul yang benar. Anda akan harus memiliki akses administrator untuk menjalankan skrip ini dalam cakupan selain Process
atau 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)
}
}
}
Untuk menggunakan fungsi ini, salin dan tempel kode ke dalam sesi PowerShell Anda. Contoh berikut menunjukkan cara menjalankan fungsi untuk menghapus versi Azure PowerShell yang lebih lama.
Uninstall-AllModules -TargetModule AzureRM -Version 4.4.1 -Force
Saat skrip berjalan, skrip akan menampilkan nama dan versi setiap submodul yang sedang dihapus. Untuk menjalankan skrip hanya untuk melihat yang akan dihapus, tanpa menghapusnya, gunakan opsi -WhatIf
.
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
...
Catatan
Jika skrip tidak dapat mencocokkan dependensi dengan versi sama yang akan dihapus instalannya, skrip tidak akan menghapus setiap versi dependensi. Hal ini karena dapat terdapat versi modul target lainnya di sistem Anda yang bergantung pada dependensi ini. Dalam hal ini, versi dependensi yang tersedia dicantumkan. Anda kemudian dapat menghapus versi lama secara manual dengan Uninstall-Module
.
Jalankan perintah untuk setiap versi Azure PowerShell yang ingin Anda hapus instalannya. Untuk mudahnya, skrip berikut akan menghapus instalan semua versi AzureRM kecuali versi terbaru.
$versions = (Get-InstalledModule -Name AzureRM -AllVersions | Select-Object -Property Version)
$versions[0..($versions.Length-2)] | foreach { Uninstall-AllModules -TargetModule AzureRM -Version ($_.Version) -Force }