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.
- Para criar recursos de armazenamento, confira Introdução ao Azure Cloud Shell com o armazenamento persistente.
- Para usar os recursos de armazenamento existentes, confira Introdução ao Azure Cloud Shell com o armazenamento existente.
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 emhttps://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 parastorageaccountname.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.
- Execute
clouddrive unmount
. - 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"):