¿Cómo elimino una instalación instantánea incompleta o rota de nextcloud en una Raspberry Pi?

22

Primero la advertencia: entiendo que esta pregunta involucra a Mate y una Raspberry Pi, así que si la considera fuera del ámbito de este foro, simplemente ignórela. Pero en la posibilidad de que pueda ser útil o típico de algo que involucra instantáneas o esa plataforma, aquí va.

Decidí probar e instalar el complemento de nextcloud. Lanzó una tonelada de errores y pareció congelarse en medio del proceso (durante más de una hora). Lo maté y decidí tratar de eliminarlo. La instalación se parecía a ...

$ sudo snap install nextcloud
2016-06-24T08:48:29-04:00 ERROR cannot setup apparmor for snap "nextcloud": cannot load apparmor profile "snap.nextcloud.apache": cannot load apparmor profile: exit status 1
apparmor_parser output:
Cache read/write disabled: interface file missing. (Kernel needs AppArmor 2.4 compatibility patch.)
Warning: unable to find a suitable fs in /proc/mounts, is it mounted?
Use --subdomainfs to override.

2016-06-24T08:53:29-04:00 ERROR cannot setup apparmor for snap "nextcloud": cannot load apparmor profile "snap.nextcloud.apache": cannot load apparmor profile: exit status 1
apparmor_parser output:
Cache read/write disabled: interface file missing. (Kernel needs AppArmor 2.4 compatibility patch.)
Warning: unable to find a suitable fs in /proc/mounts, is it mounted?
Use --subdomainfs to override.

[|] Setup snap "nextcloud" security profiles

Cuando trato de quitar snap nextcloud me sale

error: no se puede eliminar "nextcloud": el complemento "nextcloud" tiene cambios en progreso

Lo que principalmente me gustaría hacer es eliminar correctamente el complemento y recuperar el espacio de la partición que creó. Si partición es el término correcto?

$ lsblk
NAME        MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0         7:0    0  46.6M  0 loop /snap/ubuntu-core/120
loop1         7:1    0 113.9M  0 loop /snap/nextcloud/12
mmcblk0     179:0    0  14.9G  0 disk
├─mmcblk0p1 179:1    0    64M  0 part /boot
└─mmcblk0p2 179:2    0  14.8G  0 part /

Lo intenté

snap abort nextcloud

y consiguió

error: no se puede encontrar el cambio con id "nextcloud"

También debo tener en cuenta que no aparece como instalado ya que solo obtengo lo siguiente

$ snap list
Nombre Versión Rev Notas del desarrollador
ubuntu-core 16.04 + 20160531.12-01 120 canónico -

Aunque aparece en ...

$ snap interfaces
: network nextcloud
: network-bind nextcloud

Lo intenté

$ snap changes
ID   Status  Spawn                 Ready  Summary
1    Doing   2016-06-24T12:39:20Z  -      Install "nextcloud" snap

$ sudo snap abort 1

$ snap changes
ID   Status  Spawn                 Ready  Summary
1    Abort   2016-06-24T12:39:20Z  -      Install "nextcloud" snap

Pero la partición sigue ahí.

** Actualización, ejecuté todo el proceso nuevamente para propósitos de depuración y simplemente lo dejé reposar después del comando "snap abort 1". En algún momento, algo parece haberse completado en segundo plano porque lsblk no muestra nada y la consulta de interfaces instantáneas no muestra nada.

Dennis
fuente

Respuestas:

44

El snapcomando está compuesto de dos componentes, servidor y cliente. Estás interactuando con el cliente. Cuando canceló la operación de instalación en el lado del cliente, ese es el único lugar donde la canceló: el cliente. Entonces dejó de mostrarte que se estaba instalando, pero aún se estaba instalando (esto es un error ). ( Actualización: este error se corrigió en snapd v2.20.1.)

Del lado del servidor, todo esto sucede en "cambios". Puede leer más sobre ellos aquí , pero para sus propósitos, solo desea abortar este cambio específico. Para hacer eso, ejecuta:

$ snap changes
<snip>
203  Doing   2016-06-24T12:17:45Z  -  Install "nextcloud" snap

Tenga en cuenta la ID, 203, y el hecho de que está "haciendo" en este momento. Para abortar esa operación, use la ID de cambio:

$ sudo snap abort 203

Y el cambio debería detenerse. Sin embargo, debo decir que el hecho de que el cambio se haya congelado en parte no es un buen augurio para su capacidad de abortarlo. Si no funciona, quizás intente reiniciar. Si todavía no parece haberlo solucionado y está bien perder todas sus instantáneas y sus datos, puede restablecer completamente el estado ajustado con este script .

Kyle
fuente
Voy a votar por ahora porque el script realmente elimina la partición y ese fue mi objetivo principal. Hice eso y luego volví a través de todo el proceso para recopilar mensajes de error y actualicé la pregunta para reflejar esa información, así como el hecho de que, como dijiste, la congelación indicó que el aborto y la eliminación no funcionarían. Le daré un día para ver si hay una forma más limpia de deshacerse de nextcloud y, si no, lo aceptaré debido a la eficacia del script. Gracias
Dennis
Estoy un poco confundido con respecto a la "partición" a la que te refieres. Snapd no divide nada. ¿A qué te refieres exactamente?
Kyle
Actualicé la información en la pregunta. Puede que tenga la terminología incorrecta, pero estoy hablando de lo que me parece una partición que aparece en lsblk. También aparecen en los administradores de archivos como discos, aunque aparentemente no tengo claro cuáles son los contenedores. También puede ver en la actualización al final que su consejo para abortar el proceso en particular sí funcionó (si hubiera sido paciente).
Dennis
Nota al margen, veo en tu blog que aparentemente eres "el hombre" en este tema. Si hay algo que pueda proporcionar que sea útil en relación con: por qué esto no funcionó en primer lugar, hágamelo saber.
Dennis
Jaja, oh, apenas, solo escribo a veces. Las instantáneas son simplemente imágenes de squashfs que luego se montan en su lugar /snap, que es lo que estás viendo allí. Con respecto a la falla, parece que hay algunos problemas de kernel en armhf para MATE. ¿Le importaría registrar un error con esta información para que podamos investigar adecuadamente?
Kyle