Azure Powershell: Az and AzureRM modules cannot be imported in the same session

12,791

You could not mix the Az and AzureRm commands together, change the first line in your script as below, then try it in a new powershell session.

$Ctx = New-AzStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey

If you still get the same error, run a new powershell session as admin, use the command Uninstall-Module as below, then try the script again.

Uninstall-Module -Name AzureRm -AllVersions -Force
Share:
12,791

Related videos on Youtube

Philip
Author by

Philip

Updated on June 04, 2022

Comments

  • Philip
    Philip almost 2 years

    I have the below script that needs to remove files from an Azure Storage Container that are older than 7 days and it has suddenly stopped working:

    $StorageAccountName = "#"
    $StorageAccountKey = "#"
    $ContainerName = "#"
    $CleanupOlderThanDays = [DateTime]::UtcNow.AddDays(-7)
    $FolderName = "Daily"
    
    $Ctx = New-AzureStorageContext -StorageAccountName $StorageAccountName -StorageAccountKey $StorageAccountKey
    Get-AzStorageBlob -Container "$ContainerName" -Context $Ctx -Prefix $FolderName/ | Where-Object { $_.LastModified.UtcDateTime -lt $CleanupOlderThanDays } |Remove-AzStorageBlob
    

    It fails now with the below error:

    PS C:\backupcopy> .\remove_files_daily.ps1
    WARNING: AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same session or used in the
    same script or runbook. If you are running PowerShell in an environment you control you can use the 'Uninstall-AzureRm'
     cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation, take care that none of
     your runbooks import both Az and AzureRM modules. More information can be found here:
    https://aka.ms/azps-migration-guide.
    Get-AzStorageBlob : The 'Get-AzStorageBlob' command was found in the module 'Az.Storage', but the module could not be
    loaded. For more information, run 'Import-Module Az.Storage'.
    At C:\backupcopy\remove_files_daily.ps1:8 char:1
    + Get-AzStorageBlob -Container "$ContainerName" -Context $Ctx -Prefix $ ...
    + ~~~~~~~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (Get-AzStorageBlob:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CouldNotAutoloadMatchingModule
    

    I tried running Uninstall-AzureRm but I get the following error:

    PS C:\backupcopy> Uninstall-AzureRm
    WARNING: Both Az and AzureRM modules were detected on this machine. Az and AzureRM modules cannot be imported in the
    same session or used in the same script or runbook. If you are running PowerShell in an environment you control you can
     use the 'Uninstall-AzureRm' cmdlet to remove all AzureRm modules from your machine. If you are running in Azure
    Automation, take care that none of your runbooks import both Az and AzureRM modules. More information can be found
    here: https://aka.ms/azps-migration-guide
    WARNING: AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same session or used in the
    same script or runbook. If you are running PowerShell in an environment you control you can use the 'Uninstall-AzureRm'
     cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation, take care that none of
     your runbooks import both Az and AzureRM modules. More information can be found here:
    https://aka.ms/azps-migration-guide.
    WARNING: AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same session or used in the
    same script or runbook. If you are running PowerShell in an environment you control you can use the 'Uninstall-AzureRm'
     cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation, take care that none of
     your runbooks import both Az and AzureRM modules. More information can be found here:
    https://aka.ms/azps-migration-guide.
    Uninstall-AzureRm : The 'Uninstall-AzureRm' command was found in the module 'Az.Accounts', but the module could not be
    loaded. For more information, run 'Import-Module Az.Accounts'.
    At line:1 char:1
    + Uninstall-AzureRm
    + ~~~~~~~~~~~~~~~~~
        + CategoryInfo          : ObjectNotFound: (Uninstall-AzureRm:String) [], CommandNotFoundException
        + FullyQualifiedErrorId : CouldNotAutoloadMatchingModule
    

    I then tried running Import-Module Az.Accounts and got this:

    WARNING: Both Az and AzureRM modules were detected on this machine. Az and AzureRM modules cannot be imported in the
    same session or used in the same script or runbook. If you are running PowerShell in an environment you control you can
     use the 'Uninstall-AzureRm' cmdlet to remove all AzureRm modules from your machine. If you are running in Azure
    Automation, take care that none of your runbooks import both Az and AzureRM modules. More information can be found
    here: https://aka.ms/azps-migration-guide
    WARNING: AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same session or used in the
    same script or runbook. If you are running PowerShell in an environment you control you can use the 'Uninstall-AzureRm'
     cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation, take care that none of
     your runbooks import both Az and AzureRM modules. More information can be found here:
    https://aka.ms/azps-migration-guide.
    Get-ChildItem : AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same session or used
    in the same script or runbook. If you are running PowerShell in an environment you control you can use the
    'Uninstall-AzureRm' cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation,
    take care that none of your runbooks import both Az and AzureRM modules. More information can be found here:
    https://aka.ms/azps-migration-guide.
    At C:\Program Files\WindowsPowerShell\Modules\Az.Accounts\1.6.2\Az.Accounts.psm1:39 char:5
    +     Get-ChildItem "$PSScriptRoot\StartupScripts" -ErrorAction Stop |  ...
    +     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : OperationStopped: (AzureRM.Profile...igration-guide.:String) [Get-ChildItem], RuntimeExc
       eption
        + FullyQualifiedErrorId : AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same se
       ssion or used in the same script or runbook. If you are running PowerShell in an environment you control you can u
      se the 'Uninstall-AzureRm' cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Aut
     omation, take care that none of your runbooks import both Az and AzureRM modules. More information can be found he
    re: https://aka.ms/azps-migration-guide.,Microsoft.PowerShell.Commands.GetChildItemCommand
    
    WARNING: AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same session or used in the
    same script or runbook. If you are running PowerShell in an environment you control you can use the 'Uninstall-AzureRm'
     cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation, take care that none of
     your runbooks import both Az and AzureRM modules. More information can be found here:
    https://aka.ms/azps-migration-guide.
    Import-Module : AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same session or used
    in the same script or runbook. If you are running PowerShell in an environment you control you can use the
    'Uninstall-AzureRm' cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Automation,
    take care that none of your runbooks import both Az and AzureRM modules. More information can be found here:
    https://aka.ms/azps-migration-guide.
    At line:1 char:1
    + Import-Module Az.Accounts
    + ~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : OperationStopped: (AzureRM.Profile...igration-guide.:String) [Import-Module], RuntimeExc
       eption
        + FullyQualifiedErrorId : AzureRM.Profile already loaded. Az and AzureRM modules cannot be imported in the same se
       ssion or used in the same script or runbook. If you are running PowerShell in an environment you control you can u
      se the 'Uninstall-AzureRm' cmdlet to remove all AzureRm modules from your machine. If you are running in Azure Aut
     omation, take care that none of your runbooks import both Az and AzureRM modules. More information can be found he
    re: https://aka.ms/azps-migration-guide.,Microsoft.PowerShell.Commands.ImportModuleCommand
    

    Does anyone know what I need to do to get this working? I'm running

    Major  Minor  Build  Revision
    -----  -----  -----  --------
    5      1      14409  1005
    
  • Sudhir Goswami
    Sudhir Goswami almost 3 years
    Hi Joy - I am getting the same error on Runbook. how to resolve there?