Compartilhar via


Persistir arquivos no Azure Cloud Shell

Na primeira vez que você iniciar o Cloud Shell, precisará selecione as opções de armazenamento. Se quiser armazenar arquivos que possam ser usados sempre que você usar o Cloud Shell, crie ou escolha recursos de armazenamento existentes. O Cloud Shell usa um compartilhamento de Arquivos do Microsoft Azure para persistir os arquivos entre sessões.

Como funciona o armazenamento do Cloud Shell

O Cloud Shell persiste arquivos usando os seguintes métodos:

  • Cria uma imagem de disco para manter o conteúdo do diretório $HOME. A imagem de disco é salva em https://storageaccountname.file.core.windows.net/filesharename/.cloudconsole/acc_user.img. O Cloud Shell sincroniza automaticamente as alterações nessa imagem de disco.
  • Monta o compartilhamento de arquivo como clouddrive no diretório $HOME. O caminho /home/<User>/clouddrive é mapeado para storageaccountname.file.core.windows.net/filesharename.

Observação

Todos os arquivos no diretório $HOME, como chaves SSH, são persistidos na imagem de disco do usuário, que é armazenada no compartilhamento de arquivo montado. Use as melhores práticas para proteger as informações do diretório $HOME e do compartilhamento de arquivo montado.

Proteger o acesso de armazenamento

Por questões de segurança, cada usuário deve criar a própria conta de armazenamento. Para o RBAC (controle de acesso baseado em função) do Azure, os usuários precisam ter acesso de colaborador ou superior no nível da conta de armazenamento.

O Cloud Shell usa um compartilhamento de arquivo do Azure em uma conta de armazenamento, dentro de uma assinatura especificada. Devido às permissões herdadas, os usuários com direitos de acesso suficientes na assinatura podem acessar todas as contas de armazenamento e os compartilhamentos de arquivos contidos na assinatura.

Os usuários devem bloquear o acesso aos seus arquivos definindo as permissões na conta de armazenamento ou no nível de assinatura.

A conta de armazenamento do Cloud Shell contém os arquivos criados pelo usuário do Cloud Shell no diretório base, que pode incluir informações confidenciais, como tokens de acesso ou credenciais.

Restringir a criação de recursos com uma política de recursos do Azure

As contas de armazenamento criadas no Cloud Shell são marcadas com ms-resource-usage:azure-cloud-shell. Se você quiser remover as permissões dos usuários para que eles não criem contas de armazenamento no Cloud Shell, crie uma política de recursos do Azure que seja disparada por essa marca específica.

Gerenciamento do armazenamento do Cloud Shell

Montar um novo clouddrive

Se você optou anteriormente por usar sessões efêmeras para o Cloud Shell, deverá redefinir suas preferências selecionando Configurações>Redefinir Configurações do Usuário no Cloud Shell. Siga as etapas para montar uma conta de armazenamento existente ou uma nova conta de armazenamento.

Observação

Se você estiver montando um novo compartilhamento, uma nova imagem de usuário será criada para o diretório $HOME. A imagem $HOME anterior é mantida no compartilhamento de arquivo anterior.

Desmontar clouddrive

Você pode desmontar um compartilhamento de arquivo do Cloud Shell a qualquer momento. Como o Cloud Shell exige o uso de um compartilhamento de arquivo montado, o Cloud Shell pede para você criar e montar outro compartilhamento de arquivo na sessão seguinte.

  1. Execute clouddrive unmount.
  2. Reconheça e confirme os prompts.

O compartilhamento de arquivo desmontado continua existir até que você o exclua manualmente. Após a desmontagem, o Cloud Shell não procura mais esse compartilhamento de arquivo nas sessões seguintes. Para obter mais informações, execute clouddrive unmount -h:

Command
  clouddrive unmount: Unmount an Azure file share from Cloud Shell.

    Unmount enables unmounting and disassociating a file share from Cloud Shell.
    All current sessions will be terminated. Machine state and non-persisted files will be lost.
    You will be prompted to create and mount a new file share on your next session.
    Your previously mounted file share will continue to exist.

    Note: This command does not unmount storage if the session is Ephemeral.

Arguments
  None

Aviso

Embora a execução desse comando não exclua nenhum recurso, a exclusão manual de um grupo de recursos, de uma conta de armazenamento ou de um compartilhamento de arquivo mapeado para o Cloud Shell apaga a imagem do disco do diretório $HOME e todos os arquivos do compartilhamento de arquivo. Essa ação não pode ser desfeita.

Ao usar comandos do PowerShell

Obter informações sobre o compartilhamento de arquivo atual

Use o comando Get-CloudDrive no PowerShell para obter informações sobre os recursos que dão suporte ao compartilhamento de arquivo.

PS /home/user> Get-CloudDrive

FileShareName      : cs-user-microsoft-com-xxxxxxxxxxxxxxx
FileSharePath      : //cs7xxxxxxxxxxxxxxx.file.core.windows.net/cs-user-microsoft-com-xxxxxxxxxxxxxxx
MountPoint         : /home/user/clouddrive
Name               : cs7xxxxxxxxxxxxxxx
ResourceGroupName  : cloud-shell-storage-southcentralus
StorageAccountName : cs7xxxxxxxxxxxxxxx
SubscriptionId     : aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e

Desmontar o compartilhamento de arquivos

Você pode desmontar um compartilhamento de arquivo do Cloud Shell a qualquer momento usando o cmdlet Dismount-CloudDrive. Desmontar clouddrive encerra a sessão atual.

Dismount-CloudDrive
Do you want to continue
Dismounting clouddrive will terminate your current session. You will be prompted to create and
mount a new file share on your next session
[Y] Yes  [N] No  [S] Suspend  [?] Help (default is "Y"):

Próximas etapas