Ubuntu

Oye, ¿dónde están mis datos?

Oye, ¿dónde están mis datos?

Las instantáneas son aplicaciones autónomas, aisladas de los sistemas operativos subyacentes por varias capas de confinamiento. Este mecanismo presenta beneficios de seguridad, pero también puede crear confusión para las personas que están menos familiarizadas con el funcionamiento y el comportamiento de las instantáneas, especialmente cuando se trata de acceso al sistema de archivos. Hoy, nos gustaría aclarar algunas de las preguntas y conceptos erróneos sobre cómo las instantáneas administran los datos del sistema y del usuario.

Instalación rápida

Cuando un usuario instala un complemento desde Snap Store, sucede lo siguiente:

  • Los servicios de snapd descargan el complemento, un archivo squashFS comprimido con un sufijo .snap.
  • El complemento está descomprimido y montado como un sistema de archivos de solo lectura en / snap.

Un sistema de archivos de solo lectura es insuficiente para proporcionar una experiencia significativa y persistente entre lanzamientos de aplicaciones, por lo que las instantáneas también tienen partes que se pueden escribir:

  • SNAP COMMON: reflejado en la variable de entorno SNAP_COMMON, este directorio es propiedad de la raíz y se puede escribir en él, y solía almacenar datos que son comunes en varias revisiones del complemento (por ejemplo: revisión 6, revisión 7, etc.).
  • SNAP DATA: reflejado en la variable de entorno SNAP_DATA, también se usa para almacenar datos, principalmente información utilizada por aplicaciones y servicios en segundo plano, para el registro y otras tareas que requieren persistencia entre lanzamientos instantáneos. Se realiza una copia de seguridad de este directorio y luego se restaura al realizar una actualización instantánea (refrescar) o revertir la operación. Por el contrario, SNAP_COMMON no lo es.

Datos del usuario

Al igual que los datos del sistema, las instantáneas pueden contener datos de usuario. De una manera similar a las variables de entorno COMMON y DATA que son propiedad de root y pueden ser grabadas por root, también hay directorios específicos de usuario disponibles. Sin embargo, los directorios específicos del usuario no se creará hasta que el usuario específico haya ejecutado un complemento por primera vez.

SNAP_USER_COMMON: este directorio se asigna a los datos del usuario que son comunes en las revisiones de un complemento. Una ruta típica sería algo como: / home / ”nombre de usuario” / snap / ”snap name” / common. No se realiza una copia de seguridad ni se restaura en las operaciones instantáneas.

SNAP_USER_DATA: este directorio contendrá cualquier dato de usuario que el complemento escriba en su propia casa. Esto es a diferencia de a lo que el usuario de Linux consideraría su casa. Es importante tener en cuenta esta distinción, porque puede ser útil, e incluso importante, cuando los usuarios deciden realizar operaciones de mantenimiento con sus instantáneas (como eliminación). Una ruta típica sería: / home / ”nombre de usuario” / snap / ”snap name” / ”revision”. De forma predeterminada, cada complemento utilizará un enlace simbólico Actual, apuntando a la última revisión disponible.

~/snap/notepad-plus-plus$ ls -la
total 20
drwxr-xr-x   5 igor igor 4096 Apr 28 16:13 .
drwxr-xr-x 133 igor igor 4096 May 26 15:29 ..
drwxr-xr-x   5 igor igor 4096 Feb 26 14:45 258
drwxr-xr-x   5 igor igor 4096 Apr 28 16:13 260
drwxr-xr-x   6 igor igor 4096 Jan 12 14:43 common
lrwxrwxrwx   1 igor igor    3 Apr 28 16:13 current -> 260

Detalles importantes sobre los datos del usuario y el acceso desde el hogar

Hay varias excepciones notables al acceso a los datos de los usuarios que no son evidentes de inmediato a partir del uso de los directorios COMMON y DATA.

  • De forma predeterminada, las instantáneas están estrictamente limitadas. Un chasquido estrictamente confinado no puedo acceder a cualquier recurso del sistema, como hogar, red, dispositivos USB, cámara, audio, etc. Editores que deseesn otorgar acceso a sus instantáneas a recursos específicos debe usar interfaces, que luego permiten el acceso granular a estos recursos. Uno de los recursos disponibles es el directorio de inicio del usuario.
  • Un chasquido con un declarado interfaz de inicio entonces tendrá acceso al directorio de inicio del usuario, pero solo a archivos y carpetas normales. Tenga en cuenta que los archivos ocultos no ser accesibles de forma predeterminada, y requieren anulaciones de seguridad específicas para ese complemento en la Tienda Snap. Si es un desarrollador o un editor, puede solicitar las rutas adicionales para su complemento en una solicitud de foro.
  • La interfaz de inicio se conecta automáticamente en los sistemas clásicos. No se conecta automáticamente en Ubuntu Core.
  • Las instantáneas sin la interfaz de inicio declarada y / o conectada no pueden acceder al disco. El directorio SNAP_USER_DATA aún se creará y existirá en el directorio de inicio del usuario. Sin embargo, no contendrá archivos.

¿Qué sucede cuando borras un snap?

Si decide eliminar un complemento de su sistema, sucederá lo siguiente:

  • El complemento se desmontará y ya no se mostrará debajo de / snap.
  • Los datos bajo / var / snap / ”nombre de snap” / y / home / ”username” / snap / serán eliminados. Sin embargo, se conservará una copia como instantánea durante 30 días (excepto en los sistemas Ubuntu Core), lo que le permite restaurar los datos o recuperarlos manualmente en caso de que los necesite. La ubicación de las instantáneas se encuentra en: / var / lib / snapd / snapshots /.

Puede utilizar el complemento integrado funcionalidad de gestión de instantáneas para restaurar datos, o descomprimir los archivos, y solo copie los datos que considere necesarios. Si tiene los permisos adecuados, también puede crear su propia rutina de respaldo, que copia los datos importantes como bases de datos de aplicaciones, configuraciones o contenido similar en una ruta de respaldo.

Para eliminar una instantánea sin generar una instantánea, utilice el argumento adicional ‘–purge’:

$ sudo snap remove vlc --purge
vlc removed

Otras localizaciones

Hay varios otros directorios que debe conocer:

  • / var / lib / snapd / cache: caché de trabajo, para minimizar el tamaño de descarga y acelerar las actualizaciones.
  • / var / lib / snapd / snaps: contiene todas las versiones de snaps instaladas en su sistema.

Resumen

La administración de datos instantáneos es diferente de las convenciones clásicas de Linux. Con ese fin, tanto los desarrolladores como los usuarios deben prestar atención a los matices más finos, para que puedan obtener la mejor experiencia. Los desarrolladores deben asegurarse de utilizar correctamente las rutas necesarias y disponibles, y crear sus instantáneas para almacenar información importante en ubicaciones que se respaldarán en las operaciones de mantenimiento. Los usuarios deben notar la diferencia entre su hogar clásico de Linux y su hogar instantáneo.

Con suerte, este artículo aclara algunas de las preguntas y temas menos obvios en torno a la gestión de datos instantáneos. Si tiene alguna sugerencia o comentario, comuníquese con en nuestro foro, y háganoslo saber.

Foto por Ricardo Gómez Ángel en Unsplash.

Leave a Comment

You may also like