Migrar datos de /home desde Jetson Orin Nano Developer Kit a reComputer
Introducción
Al pasar de un NVIDIA Jetson Orin Nano Developer Kit a un reComputer de Seeed Studio, es posible que quieras conservar tu espacio de trabajo de usuario, archivos de proyecto, entornos de Conda, scripts y datos de aplicaciones. Sin embargo, no se recomienda restaurar directamente una imagen completa del sistema del developer kit en un reComputer porque la carrier board, el device tree, el bootloader y la configuración BSP son diferentes.
Este wiki muestra cómo usar el proyecto de migración de copia de seguridad de reComputer Classic a Super para migrar solo /home desde el Jetson Orin Nano Developer Kit de origen a un reComputer de destino. En esta guía, se utilizan reComputer J4012 y reComputer Super J4012 como ejemplos de destino. Primero flashea el reComputer de destino con su BSP Seeed JetPack 6 correspondiente y luego restaura el paquete de /home sobre ese sistema limpio de reComputer.

Referencia de hardware
Esta guía utiliza el Jetson Orin Nano Developer Kit como dispositivo de origen y reComputer J4012 / reComputer Super J4012 como ejemplos de destino. La misma idea de migración solo de /home también se puede usar para otras combinaciones de Jetson a reComputer cuando ambos sistemas ejecutan JetPack 6 / L4T R36 y el destino ha sido flasheado con su BSP Seeed correspondiente.
| Dispositivo de origen | Ejemplo de destino 1 | Ejemplo de destino 2 |
|---|---|---|
![]() Jetson Orin Nano Developer Kit | ![]() reComputer J4012 | ![]() reComputer Super J4012 |
Qué hace esta migración
El paquete de migración contiene:
/home- metadatos del sistema de origen
- metadatos de usuarios y grupos de
/home - lista de paquetes APT instalados manualmente, si está disponible
- lista de paquetes instalados de dpkg, si está disponible
- checksums de paquetes
Intencionadamente no restaura:
/boot/boot/dtb/lib/modules/usr/lib/modules/etc/nv_boot_control.conf/etc/fstab- particiones del bootloader
- archivos BSP específicos de la placa
Este flujo de trabajo es para migración de datos de usuario, no para clonado completo del sistema. Las aplicaciones instaladas bajo /usr, los servicios configurados bajo /etc, las imágenes de Docker bajo /var/lib/docker y los cambios BSP a nivel de sistema no se migran. Vuelve a instalar o reconfigura esos componentes en el reComputer de destino después de la restauración de /home.
Requisitos previos
- Jetson Orin Nano Developer Kit de NVIDIA de origen ejecutando JetPack 6 / L4T R36
- reComputer J4012 o reComputer Super J4012 de destino ejecutando su BSP Seeed JetPack 6 correspondiente
- Acceso a red o almacenamiento extraíble para transferir el paquete
- Suficiente espacio libre para un paquete comprimido de copia de seguridad de
/home git,tar,sha256sum,awkyfind
Antes de restaurar el paquete, flashea el reComputer de destino con el firmware correcto de Seeed. Para reComputer J4012, consulta Flashear JetPack OS en la Carrier Board J401. Para reComputer Super J4012, consulta Primeros pasos con reComputer Super.
Descripción general del flujo de trabajo
- Flashea el reComputer de destino con el BSP Seeed JetPack 6 correspondiente.
- Clona el proyecto de migración en el Jetson Orin Nano Developer Kit de origen.
- Crea un paquete de migración de
/homeen el dispositivo de origen. - Copia el paquete al reComputer de destino.
- Inspecciona o realiza una ejecución en seco de la restauración en el destino.
- Restaura
/homeen el destino y reinicia. - Vuelve a instalar los paquetes de sistema o servicios necesarios que estén fuera de
/home.
Copia de seguridad en el Jetson Orin Nano Developer Kit de origen
Paso 1. Instala git si aún no está instalado.
sudo apt update
sudo apt install -y git
Paso 2. Clona el proyecto de migración.
git clone https://github.com/jjjadand/reComputer_classic-backup-to-super.git
cd reComputer_classic-backup-to-super
chmod +x *.sh
Paso 3. Crea un paquete de copia de seguridad.
Sustituye /path/to/output por un directorio que tenga suficiente espacio libre, como una unidad USB, un SSD externo o una carpeta de red compartida.
sudo ./backup_home_jp6.sh -o /path/to/output
Después de que finalice la copia de seguridad, verás dos archivos:
jetson-home-jp6-<hostname>-<timestamp>.tar.gz
jetson-home-jp6-<hostname>-<timestamp>.tar.gz.sha256
De forma predeterminada, el script excluye directorios de caché comunes para reducir el tamaño del paquete:
/home/*/.cache
/home/*/.ccache
/home/*/.nv/ComputeCache
/home/*/.npm/_cacache
/home/*/.local/share/Trash
/home/*/.local/share/gvfs-metadata
Si necesitas una copia más cercana de los datos de caché de usuario, añade --include-caches:
sudo ./backup_home_jp6.sh -o /path/to/output --include-caches
Si necesitas excluir datos adicionales, crea un archivo de exclusión con patrones de exclusión de tar y pásalo al script:
sudo ./backup_home_jp6.sh -o /path/to/output --exclude-file /path/to/exclude-patterns.txt
El script de copia de seguridad usa --one-file-system para /home. Si montas almacenamiento externo dentro de /home, haz una copia de seguridad de esos datos montados por separado.
Inspeccionar el paquete de copia de seguridad
Antes de restaurar, puedes inspeccionar el paquete en el dispositivo de origen o en el dispositivo de destino.
./inspect_home_package.sh /path/to/jetson-home-jp6-xxx.tar.gz
El comando de inspección verifica el checksum del paquete e imprime el formato del paquete, los metadatos del sistema de origen, los usuarios de /home de origen y las primeras entradas en el archivo de /home.
Copiar el paquete al reComputer de destino
Copia el paquete .tar.gz al reComputer de destino. Por ejemplo, usando scp:
scp /path/to/jetson-home-jp6-xxx.tar.gz seeed@<recomputer-ip>:/home/seeed/
También puedes copiar el paquete usando una unidad USB o un SSD externo.
Conserva el archivo .sha256 como un registro externo de checksum. El script de restauración también verifica los checksums incrustados dentro del paquete de migración.
Restaurar en el reComputer de destino
Paso 1. Asegúrate de que el reComputer de destino ya ha sido flasheado con el BSP Seeed JetPack 6 correcto y ha completado la configuración del primer arranque.
Paso 2. Clona el proyecto de migración en el destino.
git clone https://github.com/jjjadand/reComputer_classic-backup-to-super.git
cd reComputer_classic-backup-to-super
chmod +x *.sh
El nombre del script de restauración contiene super porque el proyecto original se creó para un escenario de migración a reComputer Super. En esta guía, todavía se usa solo para verificar y superponer el paquete de /home en el reComputer de destino seleccionado.
Paso 3. Ejecuta primero una ejecución en seco.
./restore_home_on_super_jp6.sh --dry-run /home/seeed/jetson-home-jp6-xxx.tar.gz
La ejecución en seco verifica el paquete e imprime un resumen sin restaurar archivos.
Paso 4. Restaura el paquete.
sudo ./restore_home_on_super_jp6.sh --create-users /home/seeed/jetson-home-jp6-xxx.tar.gz
La opción --create-users crea usuarios y grupos de origen que falten por UID/GID antes de extraer el paquete. Esto ayuda a preservar la propiedad de los archivos cuando el usuario de origen aún no existe en el sistema reComputer de destino.
De forma predeterminada, el script de restauración crea un archivo de reversión del /home actual del destino antes de superponer el paquete de origen:
/var/backups/jetson_home_migration/super-home-before-restore-<timestamp>.tar.gz
Si /var/backups no tiene suficiente espacio, usa otro directorio de copia de seguridad:
sudo ./restore_home_on_super_jp6.sh --create-users --backup-dir /path/to/backup-dir /home/seeed/jetson-home-jp6-xxx.tar.gz
Usa --no-backup solo si ya tienes una copia de seguridad independiente del /home de destino:
sudo ./restore_home_on_super_jp6.sh --create-users --no-backup /home/seeed/jetson-home-jp6-xxx.tar.gz
La operación de restauración superpone archivos sobre /home. Sobrescribe los archivos coincidentes desde el paquete, pero no elimina los archivos que existen solo en el destino.
Paso 5. Reinicia el destino.
sudo sync
sudo reboot
Validar la migración
Después de que el reComputer de destino se reinicie, comprueba los usuarios y archivos restaurados:
ls -lah /home
id <source-user>
du -sh /home/<source-user>
Luego valida los datos de tus aplicaciones y los entornos de usuario:
ls -lah /home/<source-user>/projects
conda env list
python3 --version
Si usas herramientas de Jetson como jtop, ejecútalas de nuevo en el reComputer de destino:
jtop
Si falta un comando de aplicación después de la migración, probablemente se instaló fuera de /home. Usa los metadatos del paquete para comprobar la lista de paquetes de origen y luego vuelve a instalar el software necesario en el sistema reComputer de destino.
Revertir el /home de destino
Si necesitas restaurar el estado de /home de destino que existía antes de la migración, utiliza el archivo de reversión creado por el script de restauración.
sudo tar --extract \
--gzip \
--file /var/backups/jetson_home_migration/super-home-before-restore-xxx.tar.gz \
--directory / \
--preserve-permissions \
--same-owner \
--acls \
--xattrs \
--xattrs-include='*' \
--numeric-owner \
--overwrite
sudo sync
sudo reboot
Solución de problemas
El script advierte que el sistema no parece JetPack 6
Los scripts comprueban /etc/nv_tegra_release y esperan L4T R36. Confirma que tanto el origen como el destino estén ejecutando JetPack 6.
cat /etc/nv_tegra_release
La propiedad de los archivos parece numérica después de la restauración
Esto normalmente significa que el destino no tiene los mismos usuarios UID/GID que el origen. Ejecuta el comando de restauración con --create-users, o crea manualmente usuarios con UID/GID coincidentes antes de restaurar.
El paquete es demasiado grande
Utiliza las exclusiones de caché predeterminadas, elimina archivos innecesarios de /home o proporciona un archivo de patrón de exclusión adicional con --exclude-file.
Algunos archivos cambiaron durante la copia de seguridad
El script de copia de seguridad acepta el estado 1 de tar, que normalmente significa que archivos en uso cambiaron durante la copia de seguridad. Cierra las aplicaciones en ejecución y repite la copia de seguridad si los archivos cambiados son importantes.
Faltan imágenes de Docker o servicios del sistema
Esta migración solo restaura /home. Las imágenes de Docker, los servicios del sistema, las aplicaciones instaladas con APT y los archivos bajo /etc, /usr y /var deben volver a instalarse o reconfigurarse en el sistema reComputer de destino.
Recursos
- Proyecto de migración de copia de seguridad de reComputer Classic a Super
- Crear copia de seguridad y restaurar en reComputer
- Cómo actualizar Jetson Orin Nano Developer Kit a Super Kit
- Flashear JetPack OS a la placa portadora J401
- Primeros pasos con reComputer Super
- Guía rápida de dispositivos Jetson de Seeed
Soporte técnico y debate sobre el producto
Gracias por elegir nuestros productos. Estamos aquí para ofrecerte diferentes tipos de soporte y garantizar que tu experiencia con nuestros productos sea lo más fluida posible. Ofrecemos varios canales de comunicación para adaptarnos a diferentes preferencias y necesidades.


