Persistencia de archivos en Azure Cloud Shell
La primera vez que inicie Cloud Shell, se le pedirá que seleccione las opciones de almacenamiento. Si desea almacenar archivos que se pueden usar cada vez que use Cloud Shell, debe crear recursos de almacenamiento existentes o elegirlos. Cloud Shell usa un recurso compartido de Microsoft Azure Files para conservar archivos entre sesiones.
- Para crear nuevos recursos de almacenamiento, consulte Introducción a Azure Cloud Shell mediante el almacenamiento persistente.
- Para usar los recursos de almacenamiento existentes, consulte Introducción a Azure Cloud Shell mediante el almacenamiento existente.
Funcionamiento del almacenamiento de Cloud Shell
Cloud Shell conserva los archivos a través de los métodos siguientes:
- Crea una imagen de disco para contener el contenido del directorio
$HOME
. La imagen de disco se guarda enhttps://storageaccountname.file.core.windows.net/filesharename/.cloudconsole/acc_user.img
. Cloud Shell sincroniza automáticamente los cambios en esta imagen de disco. - Monta el recurso compartido de archivos como
clouddrive
en el directorio$HOME
./home/<User>/clouddrive
ruta de acceso se asigna astorageaccountname.file.core.windows.net/filesharename
.
Nota:
Todos los archivos del directorio $HOME
, como las claves SSH, se conservan en la imagen de disco de usuario, que se almacena en el recurso compartido de archivos montado. Use los procedimientos recomendados para proteger la información del directorio $HOME
y el recurso compartido de archivos montado.
Protección del acceso al almacenamiento
Por motivos de seguridad, cada usuario debe crear su propia cuenta de almacenamiento. En el caso del control de acceso basado en rol (RBAC) de Azure, los usuarios deben tener acceso de colaborador o superior en el nivel de cuenta de almacenamiento.
Cloud Shell usa un recurso compartido de archivos de Azure en una cuenta de almacenamiento, dentro de una suscripción especificada. Debido a los permisos heredados, los usuarios con derechos de acceso suficientes en la suscripción pueden acceder a las cuentas de almacenamiento y los recursos compartidos de archivos contenidos en la suscripción.
Los usuarios deben bloquear el acceso a sus archivos estableciendo los permisos en el nivel de cuenta de almacenamiento o de suscripción.
La cuenta de almacenamiento de Cloud Shell contiene archivos creados por el usuario de Cloud Shell en su directorio principal, lo que puede incluir información confidencial, incluidos los tokens de acceso o las credenciales.
Restringir la creación de recursos con una directiva de recursos de Azure
Las cuentas de almacenamiento creadas en Cloud Shell se etiquetan con ms-resource-usage:azure-cloud-shell
.
Si desea impedir que los usuarios creen cuentas de almacenamiento en Cloud Shell, cree una directiva de recursos de Azure desencadenada por esta etiqueta específica.
Administración del almacenamiento de Cloud Shell
Uso del comando clouddrive
Cloud Shell incluye una herramienta de línea de comandos que permite cambiar el recurso compartido de Azure Files que se encuentra en Cloud Shell. Ejecute clouddrive
para ver los comandos disponibles.
Group
clouddrive :Manage storage settings for Azure Cloud Shell.
Commands
mount :Mount a file share to Cloud Shell.
unmount :Unmount a file share from Cloud Shell.
Montaje de un nuevo clouddrive
Use el clouddrive mount
comando para cambiar el recurso compartido usado por Cloud Shell.
Nota:
Si va a montar un nuevo recurso compartido, se crea una nueva imagen de usuario para el directorio de $HOME
. La imagen de $HOME
anterior se mantiene en el recurso compartido de archivos anterior.
Ejecute el comando clouddrive mount
con los parámetros siguientes:
clouddrive mount -s mySubscription -g myRG -n storageAccountName -f fileShareName
Para más información, vea clouddrive mount -h
.
Command
clouddrive mount :Mount an Azure file share to Cloud Shell.
Mount enables mounting and associating an Azure file share to Cloud Shell.
Cloud Shell will automatically attach this file share on each session start-up.
Note: This command does not mount storage if the session is Ephemeral.
Cloud Shell persists files with both methods below:
1. Create a disk image of your $HOME directory to persist files within $HOME.
This disk image is saved in your specified file share as 'acc_sean.img'' at
'//<storageaccount>.file.storage.windows.net/<fileshare>/.cloudconsole/acc_sean.img'
2. Mount specified file share as 'clouddrive' in $HOME for file sharing.
'/home/sean/clouddrive' maps to '//<storageaccount>.file.storage.windows.net/<fileshare>'
Arguments
-s | --subscription id [Required]:Subscription ID or name.
-g | --resource-group group [Required]:Resource group name.
-n | --storage-account name [Required]:Storage account name.
-f | --file-share name [Required]:File share name.
-d | --disk-size size :Disk size in GB. (default 5)
-F | --force :Skip warning prompts.
-? | -h | --help :Shows this usage text.
Desmontaje de clouddrive
Puede desmontar un recurso compartido de archivos de Cloud Shell en cualquier momento. Dado que Cloud Shell requiere que se use un recurso compartido de archivos montado, Cloud Shell le pedirá que cree y monte otro recurso compartido de archivos en la siguiente sesión.
- Ejecute
clouddrive unmount
. - Reconozca y confirme los mensajes.
El recurso compartido de archivos desmontado continúa existiendo hasta que lo elimine manualmente. Después de desmontar, Cloud Shell ya no busca este recurso compartido de archivos en sesiones posteriores. Para obtener más información, ejecute 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
Advertencia
Aunque la ejecución de este comando no elimina ningún recurso, elimina manualmente un grupo de recursos, una cuenta de almacenamiento o un recurso compartido de archivos asignado a Cloud Shell borra la imagen de disco del directorio $HOME
y los archivos del recurso compartido de archivos. Esta acción no se puede deshacer.
Uso de comandos de PowerShell
Obtener información sobre el recurso compartido de archivos actual
Use el comando Get-CloudDrive
en PowerShell para obtener información sobre los recursos que respaldan el recurso compartido de archivos.
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 : 78a66d97-7204-4a0d-903f-43d3d4170e5b
Desmontaje del recurso compartido de archivos
Puede desmontar un recurso compartido de archivos de Cloud Shell en cualquier momento mediante el cmdlet Dismount-CloudDrive
.
Desmontar clouddrive
finaliza la sesión actual.
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"):