在iphone上安裝linux的一種方法—在iOS上安裝iSH
1 安裝iSH
iSH是一個使用usermode x86模擬器將Linux shell引入IOS設備的工具,基於Alpine Linux,該程序佔用空間小,具備一定的安全性且易於上手。不過目前iSH還處於測試階段,部分功能還不完善。
由於目前iSH還是beta版,所以想要在IOS設備上安裝iSH,首先需要安裝APP–TestFlight,它可以幫助開發人員測試Beta版App。TestFlight運行環境要求: iOS 8 或更高版本的 iPhone、iPad 或 iPod touch。
安裝步驟:
(1)在蘋果應用市場App Store搜索TestFlight,獲取-安裝。安裝好後打開,如下圖所示。
(2)複製鏈接: https://testflight.apple.com/join/97i7KM8O ,在Safari瀏覽器打開,瀏覽器會自動跳轉打開TestFlight,在彈出的對話框中點擊“開始測試”(Start Testing),如上圖所示,就可以收到加入iSH測試版的邀請了。
(3)安裝iSH
安裝完畢後,出現iSH界面:
Alpine爲輕型的Linux發行版,Alpine 的意思是“高山的”,阿爾卑斯山。Alpine Linux網站首頁註明“Small!Simple!Secure!Alpine Linux is a security-oriented,lightweight Linux distribution based on musl libc and busybox.”概括了以下特點:
1、小巧:基於Musllibc和busybox,和busybox一樣小巧,最小的Docker鏡像只有5MB;
2、安全:面向安全的輕量發行版;
3、簡單:提供APK包管理工具,軟件的搜索、安裝、刪除、升級都非常方便。
4、適合容器使用:由於小巧、功能完備,非常適合作爲容器的基礎鏡像。
可以做一些簡單的命令測試和練習。
2 iSH基本使用
iSH自帶了多功能鍵盤:
上圖中的四個圖標分爲是:TAB鍵、Shift鍵、ESC鍵以及可以滑動的方向鍵,結合手機的鍵盤,基本可以滿足shell的一些操作。
常用命令:
apk update 更新源
apk info 列出當前已安裝的軟件包
apk search <query> 搜索可安裝包
apk add <package> 安裝軟件包
apk upgrade 升級軟件包
apk list [--installed] 列出所有的軟件包信息
apk del <package> 刪除軟件包
chmod 修改文件權限
chown 修改文件歸屬
...
3 配置iSH
(1)更新國內源
Alpine的源文件爲:/etc/apk/repositories,默認的源地址爲:http://dl-cdn.alpinelinux.org/,可以將其更新爲國內源。
法一 編輯源文件,輸入命令
vi /etc/apk/repositories
採用國內阿里雲的源,將其文件內容修改爲:
# http://dl-cdn.alpinelinux.org/alpine/v3.11/main/
# http://dl-cdn.alpinelinux.org/alpine/v3.11/community/
https://mirrors.aliyun.com/alpine/v3.11/main/
https://mirrors.aliyun.com/alpine/v3.11/community/
編輯好後按ESC退出,輸入:wq
保存修改並退出
法二:如果不能熟練使用vi編輯器,可以使用如下命令來修改:
echo "https://mirrors.aliyun.com/alpine/v3.11/main/" > /etc/apk/repositories
echo "https://mirrors.aliyun.com/alpine/v3.11/community/" >> /etc/apk/repositories
(2)更新源:
apk update
apk upgrade
(3)安裝gcc
使用如下命令可在Alpine容器中進行gcc的安裝
apk add build-base(gcc的一個依賴文件)
apk add gcc
注意:安裝過程中屏幕不可以待機,請耐心等待,否則會安裝失敗
安裝成功確認:使用-v可以確認已安裝的gcc版本信息
gcc –v
(4)安裝gdb
apk add gdb
安裝成功確認:使用-v可以確認已安裝的gdb版本信息
gdb –v
4 在iSH和iCloud之間傳輸文件
現在,有了iSH就可以通過IOS設備進行實際的開發以及測試工作了,因此,通過iCloud將文件傳輸至iSH也是非常容易的。
安裝了iSH後,系統的文件管理中會創建一個新的路徑,以便用戶能夠隨時訪問iSH文件系統,並且能夠通過該文件夾將文件發送至其他位置,例如iCloud Drive,手機內存或Dropbox中。
打開 文件 應用app,添加iSH文件系統位置,如下:
如果想要從iSH中傳輸文件,只需要選擇該文件,然後點擊“發送”以及“另存爲”就可以了。目前這種文件傳輸還是單向的,iSH還是隻出不進的狀態(主目錄在/root目錄下)。不過用戶也可以使用wget將文件傳輸至iSH。
參考資料:
你可曾想過在iOS上跑Linux?
iSH官網
iSH github