Instalar el escritorio de Linux en Android

Hola Habr! Les presento la traducción de un artículo de la revista APC.

imagen

Este artículo aborda la instalación completa del entorno operativo Linux junto con el entorno de escritorio gráfico en dispositivos Android.

Una de las tecnologías clave que utilizan muchos sistemas Linux en Android es pRoot . Esta es una implementación en el espacio del usuario de la utilidad chroot, que es muy popular en los escritorios y servidores Linux. Sin embargo, la herramienta chroot necesita privilegios de usuario root, que no están disponibles de forma predeterminada en Android. pRoot brinda esta ventaja al establecer un enlace al directorio.

Terminales Linux


No todos los emuladores de terminal de Linux para Android tienen un conjunto de utilidades BusyBox, a diferencia de, por ejemplo, Termux. La razón de esto es el hecho de que el objetivo de estos sistemas es proporcionar una instalación "completa" de todos los componentes del sistema operativo, mientras que BusyBox está diseñado para reducir todas las muchas utilidades comunes en un solo archivo binario. En los sistemas donde BusyBox no está instalado, se utiliza bootstrapping para Linux, que contiene versiones completas de programas.
"

Establezca el inicio de sesión y la contraseña para la distribución y VNC en UserLAnd.

Sin embargo, estos sistemas tienen tecnología adicional que no requiere Termux. Este artículo cubrirá la instalación completa de la distribución de Linux, así como el escritorio de la GUI. Pero primero debe elegir el método de instalación del sistema gráfico.

Linux en Android


Como se mencionó anteriormente, los paquetes de software que instalaremos se ejecutan en el espacio del usuario.

Esto significa que solo tienen permiso para el usuario actual, que en el caso del sistema operativo Android siempre es un usuario normal, es decir no tiene privilegios de administrador. Sin embargo, para instalar el escritorio de Linux, necesitamos instalar un servidor gráfico, por ejemplo, X o Wayland. Si hiciéramos esto en el entorno operativo Linux, comenzaría con los privilegios de un usuario normal, sin tener acceso al nivel gráfico del sistema operativo Android. Y, por lo tanto, debemos buscar instalar el servidor en la forma "estándar" de Android, de modo que tenga acceso al hardware y la capacidad de soportar el entorno gráfico.

Los tipos inteligentes de la comunidad de desarrolladores han propuesto dos soluciones a este problema. El primero es usar su propia versión de Linux (generalmente un servidor X). Después de que comiencen a funcionar en segundo plano, tendrá acceso a este proceso en segundo plano a través de VNC. Si su dispositivo Android ya tiene un programa de visualización VNC para interactuar de forma remota con otras computadoras, simplemente utilícelo para obtener acceso remoto al host local. Esta es una solución fácil de usar, pero algunos usuarios informan que experimentaron dificultades con el programa.

La segunda opción es instalar un servidor diseñado específicamente para dispositivos Android. Algunos servidores están disponibles en Play Store en versiones gratuitas y de pago. Antes de la instalación, debe verificar si la opción seleccionada es compatible o al menos funciona con el paquete de software de Linux para Android que va a instalar. Preferimos el sistema X-Server y, por lo tanto, utilizamos el paquete de software XServer XSDL ( enlace ). El artículo describirá el proceso de instalación para este servidor, aunque puede ser ligeramente diferente si tiene otra aplicación instalada o está utilizando VNC.

Selección del sistema


Como en el caso de los X-Servers, existen varias aplicaciones para instalar distribuciones del sistema Linux en Play Store. Aquí, como con Termux, nos concentraremos en opciones que no requieren autoridad de superusuario, lo que a su vez implica un cierto grado de riesgo. Estas aplicaciones proporcionan toda la funcionalidad necesaria para la mayoría de los usuarios, mientras mantienen sus datos seguros. Los siguientes son ejemplos de tales aplicaciones en Play Store:

- UserLAnd : una opción muy popular de usuarios. La aplicación incluye un conjunto de distribuciones comunes: Debian, Ubuntu, Arch y Kali. Curiosamente, a pesar de la falta de opciones basadas en RPM, UserLAnd incluye Alpine Linux para dispositivos con menos memoria.

- AnLinux: Esta aplicación ayuda a instalar una o más listas de distribución de gran volumen y puede incluir Ubuntu / Debian, Fedora / CentOS, openSUSE e incluso Kali. Allí también puede elegir opciones de escritorio de bajo costo: Xfce4, MATE, LXQtand LXDE. Para trabajar, necesita instalar Termux, y el sistema operativo Android debe ser de 5.0 y superior.

- Andronix es muy similar a AnLinux. Puede tener un mejor diseño que la aplicación anterior, pero admite menos distribuciones.

- GNURoot WheezyX: Este proyecto comenzó como una variante de Linux en Android y fue desarrollado para programas de código abierto. Como su nombre lo indica, se centra en las distribuciones de Debian, mientras que la 'X' al final significa que la aplicación se centra en el escritorio gráfico. Y a pesar de que los creadores dejaron de desarrollar el proyecto en beneficio de UserLAnd, GNURoot WheezyX todavía está disponible en Play Store, si alguien lo necesita.

Los autores de este artículo utilizarán la aplicación UserLAnd para instalar el escritorio de Linux en Android, y hay varias razones para esto. En primer lugar, la aplicación es de código abierto (aunque AnLinux también la tiene). En segundo lugar, ofrece un buen conjunto de distribuciones (aunque Fedora o CentOS no están incluidas), también es posible instalar distribuciones con los requisitos mínimos del sistema que no ocuparán mucho espacio en la memoria del teléfono inteligente. Pero la principal ventaja de UserLAnd es que tiene herramientas de soporte para instalar aplicaciones individuales en lugar de distribuciones completas. Descubriremos qué significa exactamente esto para nosotros más adelante. Ahora instalemos UserLAnd en su dispositivo.

Usuario y Aplicación


Descargue la aplicación desde Google Play o F-Droid ( enlace ) en el sistema operativo Android. Se instala como cualquier otra aplicación; no es necesario hacer nada especial aquí. Después de eso, ejecútalo desde el panel de aplicaciones.

Lo primero que verá es una lista de distribuciones. Al final, puede encontrar un par de opciones de escritorio: LXDE y Xfce4. Cierra su aplicación Firefox, un par de juegos y varias utilidades de oficina: GIMP, Inkscape y LibreOf fi cio. Esta pestaña se llama "Aplicaciones". Está diseñado para instalar aplicaciones.

Después de instalar algo, aparecerá una entrada correspondiente en la pestaña Sesión. Aquí puede iniciar o detener la sesión actual, así como ver los procesos en ejecución.

"Sistemas de archivos" es la última pestaña que muestra las instalaciones ya completadas. Vale la pena señalar que después de eliminar cualquier elemento de Filesystems, la información sobre él se borrará de la pestaña Sesión, lo que, sin embargo, no demuestra lo contrario. Esto significa que puede crear una nueva sesión basada en el sistema de archivos actual. Comprender cómo funciona esta relación es mucho más fácil si la ve en acción y, por lo tanto, comenzaremos instalando la aplicación en el entorno del usuario y del sistema.


Antes de instalar la distribución en su teléfono inteligente, debe proporcionar UserLAnd acceso al repositorio.

Distribuciones en UserLAnd


Seleccione una de las distribuciones ubicadas en la pantalla de aplicaciones para instalar en el dispositivo. Como ejemplo, usaremos Ubuntu. Cuando hace clic en el icono, aparece un cuadro de diálogo que solicita el nombre de usuario, la contraseña y la contraseña de VNC. Luego seleccione la forma en que accederá a la distribución. Comenzará la descarga, durante la cual participará la imagen base de la distribución seleccionada. El archivo se descomprimirá en el directorio UserLAnd.

Cuando finalice la descarga, regrese al emulador de terminal xterm. Puede ingresar un comando de utilidad para averiguar qué versión de Linux instaló:

uname –a

El siguiente paso es instalar el escritorio usando el comando de la utilidad Ubuntu:

sudo apt install lxde

El último paso es asegurarse de que su nuevo entorno de escritorio esté listo para ejecutarse. Para hacer esto, debe editar el archivo .xinitrcfile, que actualmente solo tiene una línea / usr / bin / twm . Debe cambiarse a / usr / bin / startlxde. Ahora salga de la sesión XSDL (asegúrese de presionar el botón STOP en el área de notificación), mantenga presionado el botón "Listado de Ubuntu" en la pestaña Sesiones, luego haga clic en "Detener sesiones" y reinicie las sesiones. Después de unos segundos, debería aparecer el entorno del sistema LXDE. Puede hacer lo mismo que en un escritorio normal. Tal vez sea un poco más pequeño y funcione un poco más lento: para presionar un botón en el dispositivo, debe esperar más tiempo que si lo hiciera con un teclado y un mouse. Veamos cómo exactamente podemos mejorar el entorno del sistema Linux en un teléfono inteligente.

UserLAnd Quick Guide


Un estudio cuidadoso de los contenidos del escritorio, puede encontrar la recreación exacta de la versión de escritorio. Si usa UserLAnd en un dispositivo con teclado y mouse (conectado a través de una conexión Bluetooth o de alguna otra manera), será fácil adaptarse al uso del entorno del sistema Linux en este formato. Con la excepción de un ligero retraso debido al hecho de que el cursor X-Windows está sincronizado con el cursor del dispositivo en Android, todo funciona sin problemas.

Quizás lo primero que quiera hacer es ajustar el sistema de fuente predeterminado, ya que el tamaño de fuente del escritorio es demasiado grande para la pantalla del teléfono. Vaya al menú principal, luego seleccione "Configuración" → "Personalizar la apariencia y los widgets" → "Widget". Aquí puede cambiar el tamaño de fuente predeterminado a una opción más adecuada para su teléfono.

Es posible que desee instalar sus programas favoritos en el entorno del sistema Linux más adelante. Como se mencionó anteriormente, los comandos de la utilidad no funcionarán en este caso, así que siéntase libre de usar la herramienta verdaderamente irremplazable que está instalada en el entorno de usuario y sistema, llamada ASAP:

sudo apt install emacs



Las distribuciones en la aplicación se presentan en forma de sesiones. Puedes comenzar y cerrarlos.



Después de instalar la distribución, puede agregar un entorno de escritorio con comandos estándar.

Probablemente también necesitará formas alternativas de establecer una conexión para su distribución. El hecho de que haya instalado XSDL originalmente no significa que no deba modificarse todo el tiempo. Puede crear otra cuenta en la pestaña Sesión y seleccionar otro servidor. Solo asegúrese de especificarlo en el mismo sistema de archivos. UserLAnd intentará dirigirlo a la aplicación deseada para establecer un nuevo tipo de conexión: XSDL, ConnectBot para SSH o bVNC.

Sin embargo, la persistencia con la que la aplicación lo dirige automáticamente a Play Store cuando intenta reconectarse puede ser molesto. Para detener esto, simplemente cambie el servidor instalando una aplicación especial. Para instalar SSH, seleccione el antiguo VX ConnectBot probado. Simplemente ingrese el puerto 2022 en su estación de trabajo con su nombre de usuario y contraseña. Para conectarse al servidor VNC, es suficiente instalar el comercial, pero en muchos aspectos la aplicación Jump Desktop avanzada, y marcar la dirección 127.0.0.1►951.

Esperamos que recuerde la contraseña de VNC que se configuró cuando creó el sistema de archivos.
También puede acceder a la sesión actual de UserLAnd utilizando herramientas similares en otra computadora en su red. Es suficiente conectar SSH a una sesión de trabajo (con un tipo de conexión SSH, por supuesto) usando un terminal Linux, por ejemplo, Konsole, o conectarse a una sesión VNC usando KRDC. Simplemente reemplace las direcciones locales en la pantalla de la computadora con las direcciones IP de su Android.

Combinada con un par de aplicaciones portátiles, esta instalación le brindará un práctico sistema Linux portátil al que puede conectarse utilizando cualquier computadora que esté actualmente disponible para usted.

All Articles