Migrate installation to new hardware (Español)
Este artículo analiza los pasos necesarios para mover un sistema Arch Linux a un nuevo hardware. El objetivo es lograr la misma instalación de Arch Linux, en términos del software instalado y configuración, independientemente del hardware.
Existen dos enfoques diferentes para migrar una instalación:
- De abajo hacia arriba: instale un nuevo sistema Arch Linux en el nuevo hardware, luego restaure los paquetes instalados y los archivos de configuración, por ejemplo como se describe en dotfiles.
- De arriba hacia abajo: clone el disco duro viejo en el nuevo disco duro, o coloque el disco duro viejo en el nuevo equipo; modifique los archivos de configuración donde sea necesario.
El enfoque de «arriba hacia abajo» ofrece una reproducción más exacta del sistema original que el enfoque de «abajo hacia arriba».
Adaptarse al nuevo hardware
Antes de comenzar, investigue aspectos del nuevo hardware y haga una lista de diferencias. Las diferencias más comunes son las siguientes:
Disco duro versus SSD
Vea el artículo SSD.
Proveedor de CPU
Si cambió la CPU a una CPU de otro proveedor (por ejemplo, de Intel a AMD), cambie la configuración del Microcódigo.
Proveedor de GPU
Si cambió la GPU a una GPU de otro proveedor (por ejemplo, de ATI (Español) a NVIDIA (Español)) cambie el controlador de la tarjeta gráfica.
Arrancar con código de arranque UEFI versus MBR
Si cambia a una placa base más reciente con UEFI, podría ser preferible o necesario cambiar el arranque del «código de arranque MBR» al arranque UEFI (Español). En este caso, se necesita una nueva partición del sistema EFI.
De abajo hacia arriba
En el sistema anterior
Definimos aquí una configuración mínima que se transfiere del sistema antiguo al nuevo, mostrando las diferencias que este enfoque afecta a la guía de instalación. Piense en los archivos de configuración de /etc
y los archivos de puntos en /home
que desea copiar al nuevo sistema, así como los archivos de datos del usuario. Si no va a tener acceso al sistema anterior desde el nuevo sistema, haga una copia de seguridad de todos los archivos que desee trasladar.
Listar paquetes instalados
$ pacman -Qqen> pkglist.txt $ pacman -Qqem> pkglist_aur.txt
Estas órdenes le ofrecen una buena lista de paquetes instalados explícitamente desde los repositorios y desde AUR (Español). Inclúyalos en su copia de seguridad, si hace una.
También puede usar el siguiente script para obtener una mejor visión general de los binarios y bibliotecas que hayan sido instalados sin el conocimiento de pacman (por ejemplo, instalados a través de Steam, Desura o utilizando sus propios métodos de instalación):
find / -regextype posix-extended -regex "/(sys|srv|proc)|.*/\.ccache/.*" -prune -o -type f \ -exec bash -c 'file "{}" | grep -E "(32|64)-bit"' \; | \ awk -F: '{print $1}' | \ while read -r bin; \ do pacman -Qo "$bin" &>/dev/null || echo "$bin"; \ done
La caché de pacman
Considere realizar una copia de seguridad de /var/cache/pacman/pkg/
si no se cambia de arquitecturas (por ejemplo, de x86 a x86_64).
En el nuevo sistema
Primera mitad de la guía de instalación
Para obtener información básica sobre la instalación de un nuevo sistema, consulte la guía de instalación. Siga la primera mitad de la guía de instalación hasta la orden pacstrap (pero excluyéndola).
Copiar la caché pacman
Copie la caché de pacman que se encuentra en /var/cache/pacman/pkg/
del sistema antiguo al nuevo, o vuelque la copia de seguridad al nuevo sistema.
Segunda mitad de la guía de instalación
Continúe con la guía de instalación, incluida la orden pacstrap, hasta el final, pero no reinicie. No omita la orden pacstrap, ya que realiza un trabajo adicional además de la instalación de paquetes.
Reinstalar el software instalado
Edite pkglist.txt (y pkglist_aur.txt) y elimine los controladores que no sean necesarios en el nuevo sistema. Luego reinstale (en el nuevo sistema) el resto de software ya instalado en el antiguo sistema con:
# pacman -S --needed - < pkglist.txt
De arriba hacia abajo
Hay dos opciones para el enfoque de arriba hacia abajo: puede mantener la unidad donde el sistema ya está instalado y modificar su contenido, o puede copiar el sistema a una nueva unidad. Si mantiene la unidad y la modifica, y luego vuelve a colocarla en el sistema anterior, las modificaciones probablemente evitarán que el sistema anterior se inicie.
Limpiar el sistema anterior
También vale la pena limpiar su sistema antes de clonarlo, como se describe en System maintenance (Español)#Limpiar archivos del sistema. Asegúrese de que el sistema anterior sigue funcionando como era de esperar después de la limpieza, antes de continuar.
Copiar el sistema a una nueva unidad
Hay fundamentalmente dos métodos para copiar el sistema a una nueva unidad: clonar disco y copiar archivos.
Clonar disco
Es necesario usar un sistema Linux en vivo en lugar del antiguo sistema Arch Linux; por ejemplo, puede utilizar una unidad USB con Arch Linux. Se reproducirán el equema de particionado y los sistemas de archivos del sistema anterior.
Copiar archivos
- Cree nuevas particiones y sistemas de archivos en la nueva unidad. Puede aprovechar la coyuntura para elegir un esquema de particionado y/o sistemas de archivos diferente.
- Para cada sistema de archivos, copie los archivos de la unidad anterior a la nueva, utilizando rsync (Español) u otras herramientas que preserven los permisos, atributos, etc. Consulte rsync (Español)#Realizar copia de seguridad completa del sistema y rsync (Español)#Clonar el sistema de archivos para más detalles.
Opciones de traslado
Existen métodos diferentes sobre cómo transferir los datos entre las dos unidades:
- Conecte los discos duros de origen y destino al mismo equipo, ya sea al antiguo o al nuevo. Enlace los datos: disco duro antiguo -> computadora -> disco duro nuevo.
- Utilice dispositivos de almacenamiento temporal como discos duros externos o copias de seguridad en la nube. Enlace los datos: disco duro antiguo -> equipo antiguo -> almacenamiento -> equipo nuevo -> disco duro nuevo. Para obtener una descripción general, consulte el artículo System backup (Español).
- Transfiera datos a través de la red, por ejemplo con rsync (Español). Enlace los datos: disco duro antiguo -> equipo antiguo -> red -> equipo nuevo -> disco duro nuevo.
Para las dos primeras opciones, considere que puede necesitar adaptadores para conectar los discos duros (PATA->SATA, USB-HDD-Cases, etc.), y elegir una conexión que sea lo suficientemente rápida.
Las dos últimas opciones requieren que use un sistema Linux en vivo en el nuevo equipo, ya que no es posible arrancar desde el nuevo disco duro en este momento.
Actualizar fstab
Si está utilizando una imagen de instalación de Arch Linux, monte la nueva partición raíz en /mnt
y cualquier otra partición requerida como lo haría en una instalación normal (consulte Installation guide (Español)#Montar los sistemas de archivos).
Inserte un comentario arbitrario como #fin del antiguo fstab
al final de su /mnt/etc/fstab
. Genere un nuevo archivo fstab como se indica en Installation guide (Español)#Fstab, anexándolo al archivo fstab actual. En general, es conveniente revisar siempre el archivo fstab creado por genfstab. En este caso, verifique las entradas antiguas de fstab anteriores al comentario, si están desactualizadas o duplicadas, elimínelas, y si las entradas antiguas siguen siendo útiles, guárdelas. Por ejemplo, las entradas de montaje para unidades de red se pueden guardar. En general, se recomienda utilizar nombres persistentes de dispositivos de bloque .
Reinstalar el gestor de arranque
Es posible que deba reinstalar y/o volver a configurar el cargador de arranque por los siguientes motivos:
- Existencia de diferentes discos, esquema de particionado o sistema de archivos.
- Por añadir entradas de arranque UEFI (Español) en la nueva NVRAM de la placa base.
- Por migración del arranque del «código de arranque MBR» al arranque UEFI
- Por migración de USB a SATA/NVMe.
- Por actualización de la línea de órdenes del kernel:
- en caso de una GPU diferente, actualice el modo framebuffer;
- actualice la imagen del microcódigo en initramfs, si procede.
Si está utilizando un entorno live de Arch Linux, antes de reinstalar el cargador de arranque, cambie de raíz al nuevo sistema:
# arch-chroot /mnt
Consulte el artículo de su cargador de arranque para obtener instrucciones sobre cómo (re)instalarlo.
Regenerar imagen del kernel
Se recomienda regenerar la imagen initramfs con mkinitcpio (Español), aunque inicialmente la imagen fallback de initramfs podría funcionar.
Reconfigurar audio
- Volumen alsamixer:
- guardar ajustes
Reconfigurar red
Si la instalación anterior y la instalación migrada coexisten en la misma red, establezca un nuevo nombre de equipo con hostnamectl.
También considere realizar los cambios de configuración que se requieran después de un cambio en el nombre de equipo:
- En /etc/hosts.
- En otras aplicaciones que usan el nombre del equipo: synergy, nut (herramientas de red).
- Lanzar la orden
grep -Ri 'hostname' /etc
(como usuario root) debería dar algunas pistas sobre los archivos que se actualizarán.
Los nombres de las interfaces de red también pueden cambiar cuando se utiliza dhcpcd (Español) con interfaces de red con nombres:
- Lanzar la orden
$ dmesg | grep 'renamed from eth'
podría ayudar a encontrar el nuevo nombre de la interfaz. - Elimine el servicio de la interfaz vieja: desactivar
dhcpcd@enpXs0.service
. - Active el servicio de la interfaz nueva: activar
dhcpcd@enpXs0.service
.