8wDlpd.png
8wDFp9.png
8wDEOx.png
8wDMfH.png
8wDKte.png
你可曾想过在iOS上跑Linux?
aiyun 2018-11-19

你可曾想过在IOS设备上运行Linux系统?或者用shell来传输文件、编写脚本,又或者使用Vi来开发代码?

Here is a good news,现在有了一个叫iSH的东西,你可以使用它在IOS设备上来进行上述操作。

iSH是一个使用usermode x86模拟器将Linux shell引入IOS设备的工具,基于Alpine Linux,该程序占用空间小,具备一定的安全性且易于上手,几乎没有各种广告、插件之类的东西干扰用户。

流程

想要在IOS设备上安装iSH,首先需要安装TestFlight,有了它呢就能在设备上安装测试版的程序了,美滋滋。

装完TestFlight后,跳转到这个链接:https://testflight.apple.com/join/97i7KM8O,然后点击“开始测试”,如图所示,就可以打开TestFlight并收到加入iSH测试版的邀请了。

install-ish.jpg

通过TestFlight安装iSH

一旦安装了iSH,就可以在IOS设备上正常打开了,程序会有ash shell,但是可以使用APK包管理器执行相关命令以及安装其他的包。

iSH-installed.jpg

iSH安装完成

当然,iSH才刚刚上线不久,并且只能在模拟器下运行,所以并不是所有的Linux程序都能使用(一些满脑子骚操作的朋友们克制一下自己)。但是仍然有搞头,例如SSH还是可用的。iSH提供了一些用户可能在Linux中用到的基础程序,例如Vi,wget,zip/unzip,tar等。(这些都可以在文末的内置命令列表中查看)

wget-vim.jpgwget和Vi的使用界面

使用APK在iSH中安装软件

Alpine Linux使用APK包管理器来进行相应程序的安装。

APK的操作很简单,可用于搜索、安装、罗列、删除包等一系列操作。

输入apk info,列出当前已安装的软件包。

输入apk search [package_name],搜索需要添加的新包。例如,若需要搜索PHP,则输入apk search php。

输入apk add [package_name],安装新的包,例如,安装php,可输入apk add php,若要安装Python,则输入apk add python。

python-php.jpg

在iSH中安装php和python

最后,若需要删除已安装的包,则可输入apk del [package_name],例如,删除php,只需输入apk delete php。

在iSH和iCloud之间传输文件

现在,有了iSH就可以通过IOS设备进行实际的开发以及测试工作了,因此,通过iCloud将文件传输至iSH也是非常容易的。

安装了iSH后,系统的文件管理中会创建一个新的路径,以便用户能够随时访问iSH文件系统,并且能够通过该文件夹将文件发送至其他位置,例如iCloud Drive,手机内存或Dropbox中。

files-trasnfer.jpg

文件系统的位置

如果想要从iSH中传输文件,只需要选择该文件,然后点击“发送”以及“另存为”就可以了。

比较遗憾的是,目前这种文件传输还是单向的,iSH还是只出不进的状态。不过用户也可以使用wget将文件传输至iSH。

/bin/命令可用汇总

arch  ash  base64  bbconfig  busybox  cat  chgrp  chmod  chown  conspy  cp  date  dd  df  dmesg  dnsdomainname  dumpkmap  echo  ed  egrep  false  fatattr  fdflush  fgrep  fsync  getopt  grep  gunzip  gzip  hostname  ionice  iostat  ipcalc  kbd_mode  kill  link  linux32  linux64  ln  login  ls  lzop  makemime  mkdir  mknod  mktemp  more  mount  mountpoint  mpstat  mv  netstat  nice  pidof  ping  ping6  pipe_progress  printenv  ps  pwd  reformime  rev  rm  rmdir  run-parts  sed  setpriv  setserial  sh  sleep  stty  su  sync  tar  touch  true  umount  uname  usleep  watch  zcat

/usr/bin/可用命令汇总

awk  basename  beep  blkdiscard  bunzip2  bzcat  bzip2  cal  chvt  cksum  clear  cmp  comm  cpio  crontab  cryptpw  cut  dc  deallocvt  diff  dirname  dos2unix  du  dumpleases  eject  env  expand  expr  factor  fallocate  find  flock  fold  free  fuser  getconf  getent  groups  hd  head  hexdump  hostid  iconv  id  install  ipcrm  ipcs  killall  ldd  less  logger  lsof  lsusb  lzcat  lzma  lzopcat  md5sum  mesg  microcom  mkfifo  mkpasswd  nc  nl  nmeter  nohup  nproc  nsenter  nslookup  od  passwd  paste  patch  pgrep  pkill  pmap  printf  pscan  pstree  pwdx  readlink  realpath  renice  reset  resize  scanelf  seq  setkeycodes  setsid  sha1sum  sha256sum  sha3sum  sha512sum  showkey  shred  shuf  smemcap  sort  split  ssl_client  strings  sum  tac  tail  tee  test  time  timeout  top  tr  traceroute  traceroute6  truncate  tty  ttysize  udhcpc6  unexpand  uniq  unix2dos  unlink  unlzma  unlzop  unshare  unxz  unzip  uptime  uudecode  uuencode  vi  vlock  volname  wc  wget  which  whoami  whois  xargs  xxd  xzcat  yes

OK,以上就是对iSH的初步介绍,各位有兴趣的童鞋也可以自己下载来试试看,只不过要注意别把自己手机玩坏了。

转载至freebuf网站:freebuf

最新回复 (0)
    • Ai云
      2
        立即登录 立即注册
返回