Cómo ejecutar un shell de Linux en iOS

Ilustración que muestra el icono iSH

iSH es un proyecto activo para ejecutar un shell de Linux en iOS. Ofrece un entorno Linux alpino, completo con apk gerente de empaquetación. La aplicación se basa en la emulación de modo de usuario x86.

Puede descargar iSH de la App Store. Las nuevas instalaciones incluyen un apk por defecto. Es posible que los usuarios existentes de la aplicación deban instalarla manualmente apk siguiendo los pasos en la documentación.

Índice de contenidos
  1. Para comenzar
  2. Configuración de ISH
  3. Sistema de archivos
  4. Agregar paquetes
  5. Usando SSH
  6. Ejecutando un servidor web
  7. ¿Y ahora?
  8. Conclusión

Para comenzar

Comience instalando iSH desde la App Store. Inicie la aplicación y se le colocará directamente en un entorno de terminal Alpine Linux.

¡Puede comenzar a ejecutar comandos familiares de Linux! Puede utilizar todas las utilidades de Unix proporcionadas por BusyBox, Incluyendo cat, grep, ls, sed es wget.

iSH proporciona su propia barra de iconos de teclado para simplificar el uso del terminal de pantalla táctil. Los cuatro botones a la izquierda de la tira son las teclas Tab, Control, Esc y Flecha respectivamente. Deslice el botón de la tecla de flecha en la dirección en la que desea que navegue el cursor.

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

Configuración de 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 diferentes iconos de aplicaciones. Esta opción le permite hacer coincidir iSH con el estilo visual de otras aplicaciones en la pantalla de inicio de iOS.

El teclado externo le permite controlar cómo iSH maneja un teclado físico conectado a través de Bluetooth o un adaptador USB. Además de las opciones de reasignación integradas de iOS, puede reasignar la opción y las teclas de tilde a la meta iSH y las teclas de escape. Puede ocultar la banda de iconos iSH cuando utilice un teclado externo habilitando la configuración "Ocultar con teclado externo".

Sistema de archivos

iSH admite el uso de múltiples sistemas de archivos. Vaya a la página "Sistema de archivos" en el menú de configuración para administrarlos. Para empezar, verá un único sistema de archivos "predeterminado" que contiene la instalación incorporada de Alpine.

Presione "Examinar archivos" para abrir el sistema de archivos en la aplicación Archivos de iOS. Esto le ayuda a copiar rápidamente archivos de iSH a otras ubicaciones en su dispositivo 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 del sistema de archivos.

El caso de uso práctico para sistema de archivos le permite realizar varias instalaciones independientes. Por el momento, solo funcionarán imágenes alpinas mínimas 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. Regrese al sistema de archivos predeterminado seleccionando su elemento de menú y seleccionando "Arrancar desde este sistema de archivos" nuevamente.

Agregar paquetes

Puedes usar normal apk comandos 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 usa sus propios repositorios de paquetes de forma predeterminada. Esto permite que la aplicación pase la revisión de la App Store asegurándose de que sea completamente autónoma.

usted puede cambiar a Repositorios oficiales de Alpine Linux si lo prefiere. Esto le da acceso a la lista completa del software Alpine. Muchos paquetes tendrán versiones más recientes en los repositorios principales de Alpine que las que se ofrecen en los repositorios 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/apk pseudo-sistema de archivos con repositorios ofrecidos por Alpine Linux. Entonces tendrás que correr apk update para obtener las nuevas listas de paquetes.

Usando SSH

Puede instalar OpenSSH con apk add openssh.

El cliente trabajará de inmediato, intente ssh me@myserver.

Para usar su dispositivo iOS como 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 el archivo root usuario. los sshd ejecutable se invoca para iniciar el servidor SSH. Ahora podrá conectarse a su dispositivo como root usuario.

iSH no admite servicios de inicio automático de forma predeterminada. lata configurar esto cambiando la tercera línea de /etc/inittab por ::sysinit:/sbin/openrc. Próxima carrera rc-update add sshd para que el servidor SSH se inicie automáticamente cuando inicie una sesión iSH.

Ejecutando un servidor web

Como se ve en el ejemplo de SSH, iSH usa la pila de red de su dispositivo. Puede alojar un servidor web que puede explorar en sus otros dispositivos.

Correr apk install apache2 para agregar Apache. Usar httpd para iniciar el proceso de Apache. A continuación, visite la dirección IP de su dispositivo iOS en un navegador web; debería ver el valor predeterminado "¡Funciona!" De Apache. texto.

Apache ejecutándose en iSH en iOS

Actualmente, iSH no admite la ejecución en segundo plano. Esto significa que no puede cambiar a Safari y navegar por sus páginas web mientras usa un iPhone. En un iPad, puede abrir un navegador en vista dividida: iSH permanece activo en el costado de la pantalla.

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

¿Y ahora?

Ahora está ejecutando un entorno Alpine Linux en su dispositivo iOS. Agregue paquetes que tengan sentido para su trabajo. Hay una lista creciente de archivos software de trabajo que incluye puntos 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 se han traducido se bloqueará. Dado que iSH es un emulador, el rendimiento a veces puede incluso estar por debajo del promedio.

Puede ejecutar un servidor VNC si desea utilizar aplicaciones de gráficos. Los pasos detallados se proporcionan en Wiki de iSH. Los límites de rendimiento se aclararán con una carga de trabajo de gráficos, pero es técnicamente posible. El proceso implica la instalación xorg-server, configurando una configuración sin cabeza y luego agregando un archivo .xinitrc archivo para definir el administrador de ventanas que se utilizará. Obtendrá los mejores resultados con un administrador de ventanas ligero como i3.

Conclusión

Parece que iSH se convertirá en una aplicación iOS imprescindible para desarrolladores y administradores de sistemas. Ya existen aplicaciones de calidad como como el infierno que proporcionan herramientas básicas de Unix, así como clientes SSH como Termius que le permite conectarse a una máquina Linux remota. Sin embargo, iSH es la solución más completa y ofrece un entorno Linux que admite una lista creciente de software popular.

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

Descubre más contenido

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información básica sobre protección de datos Ver más

  • Responsable: Nelida Haydee Saldivia.
  • Finalidad:  Moderar los comentarios.
  • Legitimación:  Por consentimiento del interesado.
  • Destinatarios y encargados de tratamiento:  No se ceden o comunican datos a terceros para prestar este servicio. El Titular ha contratado los servicios de alojamiento web a KnownHost que actúa como encargado de tratamiento.
  • Derechos: Acceder, rectificar y suprimir los datos.
  • Información Adicional: Puede consultar la información detallada en la Política de Privacidad.

Subir