Discos huérfanos: la pregunta antes de borrar
Borraste la máquina pero el espacio no volvió. Los discos que quedan atrás lo hacen por tres razones distintas, y no son lo mismo. La lista en sí es una lista de borrado, así que su fiabilidad es un asunto aparte.
AtlasPVE ·
Esta entrada responde a
- proxmox borré la vm pero el disco sigue
- proxmox unused disk qué es
- proxmox limpiar discos huérfanos
- proxmox no se libera espacio en disco
- proxmox imagen de disco sobrante
Borraste una máquina. Miras el almacenamiento y el espacio no ha vuelto. El disco sigue ahí, sin pertenecer a nadie.
No es un fallo de Proxmox. Pero si empiezas a borrar sin saber cómo ocurrió, puedes borrar algo que de verdad hace falta.
Los discos que quedan atrás lo hacen por tres razones distintas
Aparecen uno al lado del otro en la misma pantalla, pero sus historias difieren, y también el riesgo de borrarlos.
Sin dueño alguno. El número de máquina en el nombre del disco no pertenece a ninguna máquina. La máquina se borró de verdad y el disco quedó. O ese número nunca se usó y el disco se reservó vacío a propósito.
La máquina existe, el disco no está conectado. La máquina está ahí, pero este disco no está en ninguna ranura. Normalmente alguien lo desconectó a propósito: está moviendo datos, haciendo una copia, y lo volverá a conectar.
Proxmox mismo lo marcó como no usado. Aparece en la configuración de la máquina pero no en una ranura activa. Es un estado que el sistema ya te está comunicando.
Ver los tres en una sola lista y borrarlos juntos es el movimiento más peligroso. En los dos casos del medio, quien dejó ese disco ahí normalmente todavía lo necesita.
Cómo aparecen
El camino más frecuente es este: primero desconectas el disco de la máquina y luego borras la máquina. En el momento en que lo desconectas, no queda rastro de él en la configuración de la máquina. Después, al borrar la máquina, el sistema no sabe de ese disco, porque ya no está escrito en ninguna parte. La máquina se va, el disco se queda.
Un traslado de disco a medias da el mismo resultado: la copia existe en el sitio nuevo y la vieja no se pudo eliminar.
Y está el caso deliberado: reservar un disco vacío que no pertenece a ninguna máquina. Ese disco es huérfano de nacimiento y no es un residuo esperando a ser borrado.
El asunto de verdad: esta lista es una lista de borrado
La mayoría de las pantallas te dan información. Esta pantalla te hace tomar una decisión, y además irreversible.
Por eso la corrección de la lista es más crítica que la de una pantalla cualquiera. Y aquí hay un modo de fallo insidioso.
"Vacío" y "no lo sé" no son lo mismo
La forma de encontrar discos huérfanos es esta: obtener la lista de todas las máquinas, obtener el contenido de todos los almacenamientos, comparar. Si un disco de un almacenamiento no aparece en la lista de ninguna máquina, es huérfano.
Ahora piensa: ¿qué pasa si la lista de máquinas no se puede obtener?
Si el programa se traga el error y trata la lista como vacía, el resultado es este: ningún disco encuentra dueño, así que cada disco en uso parece huérfano. La pantalla te ofrece borrar los discos de máquinas encendidas.
El mismo error existe en la dirección contraria. Si no se puede obtener la lista de almacenamientos y se trata como vacía, no se recorre ningún almacenamiento y la respuesta sale "no hay discos huérfanos". En esa dirección nadie borra nada, pero decirle "limpio" al usuario también es una afirmación, y no tienes los datos para hacerla.
La lección común cabe en una frase: una respuesta vacía y no haber obtenido respuesta no son lo mismo. La primera dice "eso no existe", la segunda dice "no te lo puedo decir". En cuanto un programa confunde las dos, empieza a afirmar cosas que no sabe.
Antes de borrar
Comprueba el número: ¿la máquina desapareció de verdad, o es una plantilla? Las plantillas también tienen discos, y una plantilla puede no aparecer en las listas como una máquina.
Mira cuándo se desconectó el disco. Un disco desconectado hoy es casi seguro el trabajo a medias de alguien.
Mira las instantáneas: un disco puede ya no estar conectado y seguir siendo necesario para una instantánea.
Y lo más sencillo: en vez de borrar, renómbralo o muévelo primero. Si en una semana nadie lo busca, bórralo. Si la presión de espacio es tan urgente como para romper una semana de paciencia, tu problema real no son los discos huérfanos.
Qué hace Atlas
Cuando Atlas lista discos huérfanos, etiqueta las tres razones por separado: sin dueño alguno, máquina presente pero no conectado, y marcado como no usado por el sistema. Mostrarlos como un solo montón sería meter riesgos distintos en la misma caja.
Lo que de verdad merece contarse es esto: el error de arriba existió realmente en este producto, en tres sitios distintos.
Cuando la lista de máquinas no se podía obtener, el error se convertía en una lista vacía, es decir, cada disco en uso habría parecido huérfano. Cuando no se podía obtener la lista de almacenamientos, también se trataba como vacía, es decir, al usuario le habría llegado una respuesta "limpio" sin fundamento. Y al elegir un número para un disco vacío, si la lista de números usados no se obtenía el resultado era "ningún número está en uso", así que la elección caía en el primer número reservado. Medido en una máquina en servicio: ese número ya estaba ocupado, por una plantilla.
Los tres se corrigieron en la misma dirección: si la lista no se puede obtener, la lista no se produce en absoluto y se dice el motivo. Se prefirió no responder a responder a medias.
En qué se diferencia esto de las lecciones de medición escritas en otras partes de esta wiki: allí la pregunta era "qué periodo describe este número". Aquí la pregunta viene aún antes: ¿de verdad obtuve una respuesta?
Fuentes
La documentación oficial de Proxmox. En inglés, y en este asunto es ella la que tiene la última palabra.