¿Cuál es la forma correcta de crear una imagen de arranque de mi sistema?

16

¿No sería bueno si pudiera configurar mi sistema justo después de instalarlo, con todos los temas y programas y SDK que quiero, y luego guardar esa instantánea? Como una copia de seguridad, ¿excepto que podría arrancar esa imagen e instalarla en la máquina que quisiera?

Estoy bastante seguro de que esto es posible. De hecho, sé que es hasta cierto punto .

https://help.ubuntu.com/community/LiveCDCustomizationFromScratch

Pero hay una manera mejor? ¿Alguien sabe de magia que pueda usar? ¿No puedo simplemente guardar el estado de mi sistema para que cuando instale un software de servidor no compatible y bloquee mi sistema, no necesito pasar otra hora configurándolo?

Jacob
fuente
¿Está ejecutando una instalación "bare metal" o una máquina virtual?
Comodín el
Esto sería de metal desnudo. Como quiero obtener mi "configuración de punto de partida" perfecta para comenzar, así que en lugar de abrir un USB con una imagen recién descargada, tengo una imagen personalizada desde la que puedo arrancar e instalar.
Jacob
Es posible que desee considerar "crear un cuadro Vagabundo".
Comodín el
@derobert Solo noté tu comentario ahora, pero ya estaba escribiendo mi respuesta entonces ...
Fabby
1
@Fabby Los comentarios no son respuestas. Incluso si lo robaste descaradamente y lo convertiste en una respuesta, está bien para mí: agregaste cuatro párrafos adicionales de explicación, mereces tener la respuesta para eso.
derobert

Respuestas:

11

Utilizo CloneZilla y Back In Time para hacer copias de seguridad del sistema y de los datos, respectivamente.

La ventaja de CloneZilla sobre las herramientas integradas como ddes que usa la suya propia, partcloneque crea imágenes muy pequeñas (reconoce archivos dispersos, puede usar varias utilidades de compresión, ...) y recurre a lo ddrescueque permite leer discos duros dañados. ! (Es bueno tener esa última copia de seguridad antes de que el HDD finalmente se rinda por completo).

Sin embargo, debe tener (como mínimo) un archivo separado /y /homesi desea diferenciar fácilmente entre su sistema operativo y los archivos de configuración del usuario.

Nada es tan flexible, robusto y rápido como CloneZilla para hacer copias de seguridad completas de imagen / disco fuera de línea (y siempre estoy leyendo manuales de copia de seguridad si alguien menciona su herramienta de copia de seguridad favorita para ver si tienen algo mejor que yo tengo)

Si coloca CloneZilla en una partición de arranque de 512 MByte de una unidad de disco duro USB externa, puede iniciarla en cualquier máquina y restaurar cualquier copia de seguridad que haya realizado en la partición tomando el resto de esa misma unidad de disco duro.

Advertencia: si restaura la misma copia de seguridad del sistema en varias máquinas, todas estas máquinas se clonarán entre sí con el mismo nombre de host, zona horaria, IP (si está estática) ... así que todo esto debe personalizarse después de " restaurar"...

Alternativamente , tengo una memoria USB SLC de arranque que tiene una instalación completa de Linux (en mi caso, lubuntu) sin ningún controlador propietario y una partición FAT líder, sin partición de intercambio, pero un archivo de intercambio dentro de la /partición que puedo arrancar en cualquier máquina ( hasta ahora) y que uso para desinfectar máquinas con Windows (o simplemente trabajar en la máquina de otra persona sin tocar sus datos si son paranoicos).

Fabby
fuente
1
Por cierto: es posible que desee mencionar algunas de las cosas que deberán cambiarse para hacer múltiples máquinas desde una usando Clonezilla (por ejemplo, cambiar el nombre de host, IP, ...)
derobert
4

Sí, hay una manera. La máquina ni siquiera siempre tiene por qué ser el mismo, ya que Linux crea el /dev, /procy /syssistemas de archivos sobre la marcha como el núcleo arranca el cual le da mucha libertad para hacer algunos cambios drásticos de hardware bonitas.

Digamos que su sistema operativo está instalado en el disco /dev/sda. Puede hacer un ISO de /dev/sday todas sus particiones, sean las que sean, con el siguiente comando:

dd if=/dev/sda of=/path/to/image.iso

La desventaja de esto es que la imagen tendrá el tamaño completo del disco que especificó como if(archivo de entrada), incluso si ese disco no está lleno.

Si desea clonar el disco directamente /dev/sda, simplemente inserte otro disco y use algo como:

dd if=/dev/sda of=/dev/sdb
wbruan
fuente
1

Es posible que desee ver en squashfs. Es lo que usan generalmente las versiones "en vivo", y puede "quitar la cola" directorio por directorio a las particiones que desee. Es programable, extensible y toma parámetros de comando de un archivo de lista, si lo desea. Como un archivo zip que realmente funciona como un sistema de archivos estático sin extracción completa. Tiene sus limitaciones, por supuesto, pero con un poco de trabajo te permitirá hacer lo que quieras con más granularidad que Clonezilla y más cerebro que dd. Los foros de Linux tendrán algo sobre cómo crear su propia imagen en vivo.

bebopalooblog
fuente
0

si la máquina siempre será la misma, usar dd podría ser útil en esta situación.

nxet
fuente