iSH es un proyecto activo para ejecutar un shell de Linux en iOS. Ofrece un entorno Alpine Linux, completo con el apk
gerente de empaquetación. La aplicación se basa en la emulación x86 en modo de usuario.
Puede descargar iSH de la App Store. Las nuevas instalaciones incluyen un apk
por defecto. Es factible que los usuarios existentes de la aplicación deban instalarla manualmente apk
siguiendo los pasos en la documentación.
Empezando
Comience instalando iSH desde la App Store. Inicie la aplicación y será enviado de forma directa a un entorno de terminal Alpine Linux.
¡Puede comenzar a ejecutar comandos familiares de Linux! Puede usar todas las utilidades de Unix proporcionadas por BusyBox, incluyendo cat
, grep
, ls
, sed
y wget
.
iSH proporciona su propia banda de iconos de teclado para simplificar el uso del terminal con pantalla táctil. Los cuatro botones a la izquierda de la tira son Tab, Control, Escape y flechas 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 posibilita personalizar algunas opciones. La página Apariencia le posibilita determinar la fuente y cambiar entre temas claros y oscuros. En la página de íconos de aplicaciones, puede seleccionar entre varios íconos de aplicaciones. Esta opción le posibilita hacer coincidir iSH con el estilo visual de las otras aplicaciones en su pantalla de inicio de iOS.
El teclado externo le posibilita controlar cómo debe manejar iSH un teclado físico conectado a través de Bluetooth o un adaptador USB. Al mismo tiempo de las alternativas 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 esconder la banda de iconos de iSH cuando utilice un teclado externo habilitando la configuración «Esconder 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 comenzar, verá un único sistema de archivos «predeterminado» que contiene la instalación incorporada de Alpine.
Presione «Buscar 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 de Sistemas de archivos.
El caso de uso práctico para sistemas de archivos le posibilita ejecutar varias instalaciones autónomas. Actualmente, solo funcionarán imágenes mínimas de Alpine similares al original de iSH.
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 nuevamente seleccionando «Arrancar desde este sistema de archivos».
Agregar paquetes
Puedes utilizar regular 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 utiliza por defecto sus propios repositorios de paquetes. Esto posibilita que la aplicación pase la revisión de la App Store asegurándose de que sea absolutamente autónoma.
usted puede cambiar a la 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 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/apk
pseudo-sistema de archivos con los repositorios ofrecidos por Alpine Linux. Entonces necesitarás 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 utilizar 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 root
usuario. los sshd
ejecutable se invoca para iniciar el servidor SSH. Ahora podrá conectarse a su dispositivo como el root
usuario.
iSH no admite servicios de inicio automático de forma predeterminada. Usted puede configurar esto editando la tercera línea de /etc/inittab
para ::sysinit:/sbin/openrc
. Siguiente ejecución rc-update add sshd
para que el servidor SSH se inicie automáticamente cuando inicie una sesión iSH.
Ejecución de un servidor web
Como se ve en el ejemplo de SSH, iSH utiliza la pila de red de su dispositivo. Puede alojar un servidor web que podrá navegar en sus otros dispositivos.
Correr apk install apache2
para agregar Apache. Utilizar httpd
para iniciar el procedimiento de Apache. A continuación, visite la dirección IP de su dispositivo iOS en un navegador web; debería ver el mensaje predeterminado de Apache «¡Funciona!» texto.
Hoy en día, 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 utiliza un iPhone. En un iPad, es factible abrir un navegador en vista dividida: iSH permanece activo en su lado de la pantalla.
Apache se puede configurar de la forma frecuente. Encontrarás 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á ejecutando un entorno Alpine Linux en su dispositivo iOS. Agregue los paquetes que tengan sentido para su trabajo. Hay una lista creciente de software de trabajo que incluye grapas Unix y lenguajes de programación completos. Node.js, Python, PHP, Ruby y Git están operativos.
A pesar de esto, no todos los paquetes funcionarán. El software que realiza llamadas al sistema que no se han traducido se bloqueará. Como iSH es un emulador, el rendimiento además puede ser inferior a la media en ocasiones.
Puede ejecutar un servidor VNC si desea usar aplicaciones gráficas. Los pasos detallados se proporcionan en el Wiki de iSH. Las limitaciones de rendimiento se aclararán con una carga de trabajo gráfica, pero es técnicamente factible. El procedimiento implica la instalación xorg-server
, configurando una configuración sin cabeza y posteriormente agregando un .xinitrc
archivo para establecer 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 posibilita conectarse a una máquina Linux remota. A pesar de esto, iSH es la respuesta más completa hasta el momento, dado que ofrece un entorno Linux que admite una lista cada vez mayor de software popular.
Con iSH en su iPhone o iPad, puede usar el software x86 Linux familiar dondequiera que se encuentre. Emparéjelo con un teclado externo y tendrá un dispositivo de productividad portátil que verdaderamente podría reemplazar su computadora portátil.