Por esas cosas de la vida he tenido que mover un virtual de Xen en plan a toda leche...
Hay varias formas de moverlo, xm migrate nos permite la opcion -l para mover un virtual en caliente. No lo he probado, ya que las maquinas estan una al lado de la otra, y una parada de 6 minutos era mas que permisible. Además hay que montar un sistema de ficheros "intermedio" (por ejemplo un NFS en la maquina anfitriona), si fuese algo muy comun a hacer, pienso que seria bueno tener un iSCSI para estas tareas... pero como ya digo, era cuestión de moverlo lo antes posible.
La otra opción era usar xm migrate, sin la opcion live, es sencillo, solo hay que poner el servicio a la escucha en la maquina destino, y en principio funciona... (si recuerda que solo puedes mover entre maquinas de la misma arquitectura), pero en este caso, la maquina donde esta actualmente el virtual, estaba tan petada, que ni eso podia ejecutar... así que la opción C (siempre hay una opción C, y una D, y una E...):
Copiar a saco las imágenes de disco (en este caso he copiado incluso la de swap) a la maquina nueva... método poco elegante, incluso podríamos decir, brutalista, pero en este caso la mejor solución era la que levantase esa cosa cuanto antes... en 8 minutos todo solucionado, así que es la mejor opción...
Dejo las "instrucciones" aquí ya que estaba hablando con un amigo por tlf, y me ha dicho que lo que me parecia muy evidente no lo era tanto, así que si a alguien le sirve de ayuda aquí está:«»
Hay que copiar:
- Las imágenes de disco (o particiones de disco si lo tienes con lvm, pese a que no te lo recomiendo)
- El fichero de configuración de la maquina virtual.
Luego ejecutas xen-list-images para ver que te la ha pillado. Recuerda que si haces algun cambio en el xend reloadear el demonio.
Ahora ya puedes "intentar" arrancarla: xm create la_imagen_de_tu_maquina
En mi caso me ha sucedido que el Kernel no era el mismo que teneia en la otra maquina anfitriona, por lo que he cambiado el fichero de config del virtual y le he dado un kernel que si estuviese...
Lo normal habria sido mirar que existieran los módulos de ese kernel en el virtual, e instalarlos sin encenderlo (eso se puede hacer... si...), pero en mi caso priorizaba arrancar como fuese, y como se que el virtual puede arrancar sin modulos... pues al ataque..
Error del kernel que no encuentra los módulos, un aptitude install linux-modules-2.6.18-6-xen-vserver-686 (mira el kernel que te interesa o que tienes en tu caso, comprueba los modulos que tienes de que kernel vienen, con un dpkg -S y cualquier fichero de módulos, y un uname -a para ver que kernel estas ejecutando...) con esto... todo solucionado.
Como curiosidades, decirte, que las maquinas virtuales no tienen ningún paquete de módulos instalados, le vienen heredados cuando se hace la instalación (depende del método de instalación que utilices)... y ya esta. Dejo esto por aqui por si a alguien le puede servir de ayuda...


Hola. Yo he movido dos máquinas virtuales xen a lo bruto y al levantarlas de nuevo me tiran error initramfs. Concretamente este:
Done.
[ 6.115712] JBD: no valid journal superblock found
[ 6.115721] EXT3-fs: error loading journal.
mount: Mounting /dev/hda2 on /root failed: Invalid argument
Begin: Running /scripts/local-bottom ...
Done.
Done.
Begin: Running /scripts/init-bottom ...
mount: Mounting /root/dev on /dev/.static/dev failed: No such file or directory
Done.
mount: Mounting /sys on /root/sys failed: No such file or directory
mount: Mounting /proc on /root/proc failed: No such file or directory
Target filesystem doesn't have /sbin/init
BusyBox v1.1.3 (Debian 1:1.1.3-5ubuntu12) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
(initramfs)