Hoy me he encontrado con un problema en el trabajo y un compañero me ha dado una solución de lo más interesante.
Hay un servidor en el que hay un archivo comprimido que ocupa mucho espacio. Se trata de un export de una base de datos.
Tenemos que restaurar esa base de datos en otro servidor, pero no hay espacio para copiar el archivo. Además, la utilidad para restaurar la exportación de la base de datos sólo acepta el nombre de un archivo que debe estar sin comprimir y no hay ningún espacio compartido común con suficiente hueco para guardar el archivo. ¡ssh y pipes al rescate!
En el servidor destino:
mknod /tmp/tuberia p
En el origen:
cat fichero.Z | ssh usuario@srvdestino "zcat > /tmp/tuberia"
El comando se quedará esperando hasta que alguien lea en el otro lado.
Finalmente, en el destino:
imp file=/tmp/tuberia
leerá de la tubería /tmp/tuberia como si fuese un fichero local descomprimido.
Para finalizar borramos la tubería con nombre que hemos creado:
rm /tmp/tuberia
No comments:
Post a Comment