Cuando un contenedor OpenVZ no es detenido correctamente es posible que presente un error de arranque relacionado a un archivo ploop corrupto.
failed 'prlctl restart 1e3bd92b-55b3-41ab-b93d-ab06c00cc065' with stdErr: 'Failed to restart the CT: PRL_ERR_VZCTL_OPERATION_FAILED (Details: /dev/ploop41811p1: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. (i.e., without -a or -p options) Failed to mount image /vz/private/1e3bd92b-55b3-41ab-b93d-ab06c00cc065/root.hdd: Error in e2fsck (fsutils.c:451): e2fsck failed (exit code 4) [41] ) ', stdOut: 'Restarting the CT... ', exitStatus: 'exit status 152'
Debido a que openvz usa el kernel del nodo host es posible reconstruir la integridad del sistema operativo huésped.
1- Conéctese al nodo OpenVZ a través de SSH
2- Verifique el el disco ploop del contenedor Para verificar el disco debera conocer el CTID/VMID del contenedor. Puede referirse a Comandos basicos de OpenVZ
ploop check -F /vz/private/$CTID/root.hdd/DiskDescriptor.xml
3- Debera montar el contenedor para obtener la ruta de montaje del disco ploop
root@CSuarez:/ ploop mount /vz/private/$CTID/root.hdd/DiskDescriptor.xml Opening delta /vz/private/$CTID/root.hdd/root.hdd Adding delta dev=/dev/ploop56824 img=/vz/private/$CTID/root.hdd/root.hdd (rw)
El comando anterior nos dara la ruta de la variable dev la cual es /dev/ploop56824, esta variable la usaremos para reconstruir el sistema de archivos
e2fsck /dev/ploop56824 -y
4- Por ultimo podremos iniciar el VM normalmente
vzctl start $CTID