Cómo ejecutar un Linux Shell en iOS

ISHes un proyecto activo para ejecutar un Linux cáscara en iOS. Ofrece un paisaje alpino Linux medio ambiente, completo con elapkgerente de empaquetación. La aplicación se basa en la emulación del modo de usuario x86.

Puedes descargar iSHde la tienda de aplicaciones. Las nuevas instalaciones incluyen un pleno funcionamientoapkpor defecto. Los usuarios de aplicaciones existentes pueden necesitar instalar manualmenteapksiguiendo los pasosen la documentación.

Empezando

Comience instalando iSH desde la App Store. Inicie la aplicación y lo llevarán directamente a un Alpine Linux entorno terminal.

Puedes empezar a correr familiarizado Linux comandos! Puede utilizar todas las utilidades de Unix proporcionadas porcaja ocupadaincluidocat,grep,ls,sedywget.

imagen de usar Linux comandos en iSH en iOS

iSH proporciona su propia franja de iconos de teclado para simplificar el uso de terminales con pantalla táctil. Los cuatro botones a la izquierda de la franja son Tabulador, Control, Escape y teclas de flecha respectivamente. Deslice el botón de la tecla de flecha en la dirección en la que desea que navegue el cursor.

imagen del teclado de iSH

Los tres botones de la derecha abren la interfaz de configuración, pegan el texto de la iOS portapapeles y ocultar el teclado. Toque en cualquier lugar para recuperar el teclado después de ocultarlo.

Configuración iSH

El menú Configuración le permite personalizar algunas opciones. La página Apariencia le permite configurar la fuente y cambiar entre temas claros y oscuros. En la página de iconos de aplicaciones, puede elegir entre varios iconos de aplicaciones. Esta opción le permite hacer coincidir iSH con el estilo visual de las otras aplicaciones en su iOS pantalla de inicio.

imagen del menú de configuración del shell iSH para iOS

El teclado externo le permite controlar cómo debe manejar iSH un teclado físico conectado a través de Bluetooth o un adaptador USB. Además de iOS’ opciones de reasignación incorporadas, puede reasignar la opción y las teclas de acento grave a las teclas iSH meta y escape. Puede ocultar la banda de iconos de iSH cuando usa un teclado externo habilitando la configuración “Ocultar con teclado externo”.

sistemas de archivos

iSH admite el uso de múltiples sistemas de archivos. Dirígete a la página “Sistemas de archivos” en el menú de configuración para administrarlos. Para empezar, verá un único sistema de archivos “predeterminado” que contiene la instalación integrada de Alpine.

Presione “Examinar archivos” para abrir el sistema de archivos en iOS’Aplicación de archivos. Esto lo ayuda a copiar rápidamente archivos de iSH a otras ubicaciones en su iOS dispositivo.

imagen de la configuración del sistema de archivos shell iSH para iOS

Puede exportar todo el sistema de archivos con la opción “Exportar”. Los sistemas de archivos se pueden importar a iSH usando el botón “Importar” en la página principal de Sistemas de archivos.

El caso de uso práctico parasistemas de archivosle permite ejecutar varias instalaciones independientes. En la actualidad, solo funcionarán imágenes mínimas de Alpine similares al iSH original.

Puedes probar Alpine’s“Mini sistema de archivos raíz”– descárguelo, impórtelo y presione “Arrancar desde este sistema de archivos” para reiniciar iSH usando el sistema de archivos. Vuelva al sistema de archivos predeterminado seleccionando su entrada de menú y seleccionando nuevamente “Arrancar desde este sistema de archivos”.

Agregar paquetes

Puedes usar normalapkcomandos para administrar paquetes en su entorno iSH.

# Update the package lists
apk update

# Upgrade existing installed packages
apk upgrade

# Install SSH
apk add openssh

# Remove SSH
apk del openssh

Tenga en cuenta que iSH utiliza por defecto sus propios repositorios de paquetes. Esto permite que la aplicación pase la Revisión de la tienda de aplicaciones al garantizar que sea completamente independiente.

puede cambiar a laalpino oficial Linux repositorios si lo prefiere. Esto le da acceso a la lista completa de software de Alpine. Muchos paquetes tendrán versiones más nuevas en los repositorios principales de Alpine que las que se ofrecen en los repositorios de iSH.

grep -v "file:///ish/apk/" /etc/apk/repositories | dd of=/etc/apk/repositories bs=4194304
echo https://dl-cdn.alpinelinux.org/alpine/v3.12/main >> /etc/apk/repositories
echo https://dl-cdn.alpinelinux.org/alpine/v3.12/community >> /etc/apk/repositories

Ejecute los comandos anteriores para reemplazar el contenido de iSH/ish/apkpseudo-filesystem con los repositorios ofrecidos por Alpine Linux. Entonces tendrás que ejecutarapk updatepara obtener las nuevas listas de paquetes.

Usando SSH

Puede instalar OpenSSH conapk add openssh.

El cliente funcionará de inmediato, intentessh me@myserver.

para usar tu iOS dispositivo como un servidor SSH, ejecute los siguientes comandos:

ssh-keygen -A
passwd
echo "PermitRootLogin yes" >> /etc/ssh/sshd_config
sshd

Esto generará claves de host SSH y le pedirá que establezca una contraseña para elrootusuario. Elsshdejecutable se invoca para iniciar el servidor SSH. Ahora podrá conectarse a su dispositivo como elrootusuario.

iSH no admite servicios de inicio automático de forma predeterminada. Puedeconfigura estoeditando la tercera línea de/etc/inittaba::sysinit:/sbin/openrc. siguiente carrerarc-update add sshdpara hacer que el servidor SSH se inicie automáticamente cuando inicie una sesión de iSH.

Ejecución de un servidor web

Como se ve en el SSH example, iSH utiliza la pila de red de su dispositivo. Puede alojar un servidor web que podrá navegar en sus otros dispositivos.

Correrapk install apache2agregar Apache. Usarhttpdpara empezar el Apache proceso. A continuación, visite su iOS la dirección IP del dispositivo en un navegador web; debería ver Apachepredeterminado “¡Funciona!” texto.

Apache  ejecutándose en iSH en iOS

iSH actualmente no admite la ejecución en segundo plano. Esto significa que no puede cambiar a Safari y navegue por sus páginas web mientras usa un iPhone. En una iPades posible abrir un navegador en vista dividida: iSH permanece activo en su lado de la pantalla.

Apache se puede configurar de la forma habitual. Encontrará su archivo de configuración en/etc/apache2/httpd.conf. La raíz del documento predeterminada, desde donde se sirven las páginas web, es/var/www/localhost/htdocs.

¿Ahora que?

Ahora estás manejando un Alpine Linux medio ambiente en su iOS dispositivo. Agregue los paquetes que tengan sentido para su trabajo. Hay una lista creciente desoftware de trabajoque incluye elementos básicos de Unix y lenguajes de programación completos. Node.js, Python, PHP, Ruby y Git están operativos.

Sin embargo, no todos los paquetes funcionarán. El software que realiza llamadas al sistema que no han sido traducidas fallará. Como iSH es un emulador, el rendimiento también puede ser inferior a veces.

imagen de usar Linux comandos en iSH en iOS

Puede ejecutar un servidor VNC si desea utilizar aplicaciones gráficas. Los pasos detallados se proporcionan en elwiki de iSH. Las limitaciones de rendimiento quedarán claras con una carga de trabajo gráfica, pero es técnicamente posible. El proceso consiste en instalarxorg-serverconfigurando una configuración sin cabeza y luego agregando una.xinitrcarchivo para definir el administrador de ventanas a usar. Obtendrá los mejores resultados con un administrador de ventanas liviano comoi3.

Conclusión

iSH parece listo para convertirse en una herramienta imprescindible iOS aplicación para desarrolladores y administradores de sistemas. Ya existen aplicaciones de calidad comocomo el infiernoque proporcionan herramientas básicas de Unix, así como clientes SSH comoTérminoque te permite conectarte a un control remoto Linux máquina. Sin embargo, iSH es la solución más completa hasta el momento, ya que ofrece una Linux entorno que soporta una lista creciente de software popular.

Con iSH en su iPhone o iPadpuedes usar x86 familiar Linux software estés donde estés. Combínelo con un teclado externo y tendrá un dispositivo de productividad portátil que realmente podría reemplazar su computadora portátil.

Actualizaciones del boletín

Ingrese su dirección de correo electrónico a continuación para suscribirse a nuestro boletín