Antes de instalar Ghidra en Ubuntu
Ghidra es software Java portátil, no un instalador DEB tradicional de Ubuntu. El proyecto original publica un ZIP multiplataforma que incluye la aplicación, scripts de inicio, documentación y componentes de plataforma. Una instalación normal consiste en preparar Java, extraer el archivo y ejecutar el lanzador. No necesitas copiar archivos en /usr/bin ni iniciar la interfaz gráfica como root.
Usa un entorno Ubuntu compatible de 64 bits con espacio escribible para el archivo, la aplicación extraída, las cachés de Java, los proyectos, los programas importados y las bases de datos de análisis. La documentación de Ghidra indica 4 GB de RAM y 1 GB de almacenamiento para los binarios instalados como punto de partida; el firmware grande y las tareas de decompilación necesitan más. Una instalación en ~/tools o ~/opt evita muchos problemas de permisos.
Analiza únicamente software, firmware o imágenes de memoria que tengas autorización para inspeccionar. Una guía de descarga explica la procedencia y el arranque, pero no concede permiso para hacer ingeniería inversa. Mantén cada versión de Ghidra en una carpeta separada para comparar resultados y volver atrás sin sobrescribir una instalación anterior.
Usa sudo cuando el gestor de paquetes de Ubuntu lo necesite. Ejecuta Ghidra y crea los proyectos con tu usuario normal para conservar correctamente la propiedad de la configuración, las cachés y los proyectos.
Instala el JDK 21 de 64 bits en Ubuntu
Ghidra 12.1 requiere un Java 21 Runtime and Development Kit. Instala un JDK completo, no solamente un entorno de ejecución, porque el lanzador y algunos flujos necesitan java y javac. En las versiones de Ubuntu cuyos repositorios ofrecen Java 21, el nombre habitual del paquete es openjdk-21-jdk. Si tu repositorio no lo incluye, usa una distribución JDK 21 confiable y sigue sus instrucciones específicas para Ubuntu.
Cuando termine el gestor de paquetes, abre una terminal nueva y confirma la versión activa. La salida debe mostrar Java 21 y un entorno de 64 bits. Si otra aplicación necesita una versión distinta, conserva ambas y selecciona el JDK de Ghidra con JAVA_HOME o las herramientas alternatives de Ubuntu. No elimines un JDK solo porque Ghidra necesite uno más reciente.
Si Ghidra indica que no encuentra Java, comprueba JAVA_HOME y asegúrate de que apunte a la carpeta del JDK, no directamente al ejecutable java. Esa carpeta debe contener bin con java y javac.
sudo apt update && sudo apt install openjdk-21-jdkjava -version && javac -versionDescarga el ZIP oficial de Ghidra
Abre la versión oficial Ghidra 12.1.2 y despliega Assets. Elige ghidra_12.1.2_PUBLIC_20260605.zip. Es la distribución precompilada identificada por el proyecto. GitHub también muestra Source code (zip) y Source code (tar.gz), pero son instantáneas del repositorio para compilar Ghidra desde el código fuente; no son el archivo normal de instalación en Ubuntu.
El ZIP público verificado pesa 572.803.866 bytes, aproximadamente 546,3 MiB. Este sitio enlaza con el recurso oficial de GitHub y no lo aloja, renombra, envuelve ni recompila. Si el navegador guarda una página HTML, un archivo muy pequeño o una extensión de instalador inesperada, no lo ejecutes. Regresa a la versión oficial y selecciona el recurso PUBLIC.
Al buscar Ghidra en Ubuntu pueden aparecer paquetes de Snap, apt o distribuciones de seguridad. Pueden servir en un entorno controlado, pero su versión, mantenedor y parches pueden diferir del proyecto original. Usa el recurso oficial de GitHub cuando necesites la versión upstream y un checksum que puedas verificar directamente.
| Recurso de la versión | ¿Sirve para una instalación normal? | Qué contiene |
|---|---|---|
| ghidra_12.1.2_PUBLIC_20260605.zip | Sí | Distribución oficial multiplataforma precompilada |
| Source code (zip) | No | Instantánea del repositorio para compilar |
| Source code (tar.gz) | No | Instantánea del repositorio en tar.gz |
Verifica el ZIP con SHA-256
Las notas de la versión publican un digest SHA-256 para el ZIP ejecutable. Verificar el hash sirve cuando la descarga se interrumpió, pasó por un proxy o necesitas dejar constancia de su procedencia. Detecta bytes modificados o corruptos; no convierte un espejo desconocido en una fuente oficial ni sustituye una auditoría de seguridad completa.
Ejecuta sha256sum desde la carpeta que contiene el archivo descargado y compara todo el valor con el digest oficial: b62e81a0390618466c019c60d8c2f796ced2509c4c1aea4a37644a77272cf99d. Si cambia un solo carácter, elimina el archivo y vuelve a descargarlo desde la versión oficial.
sha256sum ghidra_12.1.2_PUBLIC_20260605.zipExtrae Ghidra y ejecuta ./ghidraRun
Crea una carpeta tools propiedad de tu usuario, extrae el archivo completo y conserva su estructura. No inicies Ghidra dentro del archivo comprimido. Una extracción completa debe dejar carpetas como Ghidra, Extensions, support, docs y server junto al script ./ghidraRun.
Ejecuta el lanzador desde la carpeta extraída como tu usuario normal de Ubuntu. En la primera instalación Java puede tardar un poco más en preparar módulos y crear ajustes. Cuando aparezca la ventana de proyectos, crea un Non-Shared Project en una carpeta de proyectos separada. Así las actualizaciones no mezclan archivos de aplicación con datos de análisis.
Si la shell muestra Permission denied, revisa el modo del lanzador y añade el bit ejecutable solo a ese script. No marques recursivamente todos los archivos de la distribución. Si la aplicación se cierra, ejecútala desde una terminal o usa el lanzador de depuración para conservar el error visible.
- 1
Crear una carpeta personal de herramientas
Separa la aplicación de los proyectos y evita una instalación gráfica propiedad de root.
mkdir -p ~/tools - 2
Extraer el ZIP completo
Conserva todas las carpetas y usa un destino nuevo para la versión.
unzip ghidra_12.1.2_PUBLIC_20260605.zip -d ~/tools - 3
Entrar en la carpeta extraída
Comprueba que el lanzador y support estén visibles antes de continuar.
cd ~/tools/ghidra_12.1.2_PUBLIC - 4
Iniciar Ghidra como usuario
Ejecuta la aplicación de escritorio sin sudo.
./ghidraRun

Solución de problemas en Ubuntu, WSL2 y el escritorio
Para los errores java not found o unsupported JDK, ejecuta de nuevo java -version y javac -version en la misma terminal que inicia Ghidra. Si apuntan a Java 17 o a un paquete solo de runtime, instala o selecciona un JDK 21 de 64 bits. Define JAVA_HOME con la carpeta del JDK y no con /usr/bin/java, que solo es un enlace de lanzamiento.
WSL2 puede ejecutar Ghidra, pero la experiencia depende de que Windows proporcione una ruta gráfica como WSLg o un servidor X. Una shell Linux sin pantalla todavía puede usar support/analyzeHeadless para trabajos por lotes, mientras que la ventana de proyectos necesita un display funcional. Comprueba echo $DISPLAY y la configuración de WSLg antes de atribuir una ventana en blanco a una instalación defectuosa.
En Wayland, escritorios remotos o gestores de ventanas que no reparentan, Java puede necesitar la propiedad de lanzamiento documentada por Ghidra. Cambia una variable cada vez, conserva una copia de support/launch.properties y guarda el error de la terminal. Ante errores de permisos, mueve la aplicación a un sistema de archivos ejecutable propiedad de tu usuario en vez de ejecutarla como root.
| Síntoma | Causa probable | Primera acción |
|---|---|---|
| java o javac no encontrados | JDK ausente en PATH/JAVA_HOME | Instalar JDK 21 y abrir una terminal nueva |
| Permission denied | Modo del lanzador o sistema noexec | Usar chmod +x ghidraRun o mover la carpeta |
| Ventana WSL2 en blanco | Sin display WSLg/X o problema del gestor Java | Comprobar DISPLAY y las notas oficiales |
| Cierre inmediato | Error oculto por el lanzador gráfico | Ejecutar desde terminal o support/ghidraDebug |
| Archivo descargado incorrecto | Source code, HTML o descarga incompleta | Elegir PUBLIC y verificar SHA-256 |

Crea un primer proyecto y actualiza con cuidado
Usa File > New Project y elige Non-Shared Project para una instalación local en Ubuntu. Guarda el proyecto fuera de ~/tools/ghidra_12.1.2_PUBLIC para que reemplazar la carpeta de la aplicación no borre los datos de análisis. Haz copia tanto del archivo .gpr como de su carpeta .rep asociada cuando el proyecto sea importante.
Para actualizar, descarga la nueva versión oficial junto a la carpeta anterior, verifica su checksum y prueba una copia de los proyectos importantes antes de retirar la versión vieja. Ghidra no usa un desinstalador de escritorio tradicional: cierra la aplicación, conserva proyectos y scripts y elimina la carpeta extraída. Revisa las cachés y ajustes del usuario por separado si buscas un reinicio limpio.
Si necesitas automatización en lugar de la interfaz, usa support/analyzeHeadless desde la misma distribución verificada. Fija la versión de Ghidra y de JDK en scripts o contenedores, escribe los proyectos en rutas controladas y no ejecutes muestras no confiables con privilegios elevados.
Preguntas sobre instalar Ghidra en Ubuntu
¿Necesito sudo para instalar Ghidra en Ubuntu?
Normalmente no. Usa sudo para apt al instalar openjdk-21-jdk y después extrae el ZIP en una carpeta de tu usuario y ejecuta ./ghidraRun sin sudo.
¿Puedo instalar Ghidra con apt o Snap?
Ubuntu o Snap pueden ofrecer paquetes de la comunidad, pero pueden diferir en versión y procedencia del proyecto original. Para la versión oficial actual, elige el ZIP PUBLIC de la versión de NationalSecurityAgency/ghidra y verifica su SHA-256.
¿Funciona Ghidra en Ubuntu 24.04?
Un escritorio Ubuntu compatible de 64 bits puede ejecutar la distribución oficial si tiene un JDK 21 compatible de 64 bits. Consulta la documentación vigente y el entorno gráfico para problemas específicos de cada versión.
¿Cómo instalo Ghidra en Ubuntu dentro de WSL2?
Usa los mismos pasos del JDK 21 y del ZIP oficial. WSLg o un servidor X son necesarios para la interfaz; sin display, usa support/analyzeHeadless y revisa DISPLAY antes de depurar Ghidra.
¿Por qué Ghidra dice que Java no es compatible?
Ghidra 12.1 necesita un JDK 21 de 64 bits. Comprueba java -version, javac -version, JAVA_HOME y la arquitectura del JDK seleccionado. Java 17 o un paquete JRE no cumplen el mismo requisito.
¿Cómo compruebo la versión de Ghidra después de instalarla?
Comprueba el nombre de la carpeta extraída y el nombre del ZIP, y después revisa la información de versión dentro de la aplicación. Conserva la etiqueta de la versión, el nombre del archivo y el SHA-256 junto a tus notas.
Instala Ghidra con el procedimiento verificado para Ubuntu
Usa el ZIP oficial Ghidra 12.1.2, JDK 21, la verificación SHA-256 y ./ghidraRun en lugar de un espejo o envoltorio no verificado.