首頁 > 常見問題 > 什麼是Linux Deploy

什麼是Linux Deploy

藏色散人
發布: 2023-03-28 09:40:42
原創
5860 人瀏覽過

Linux Deploy是一款可以在Android設備上部署Linux環境的應用,其原理大概是在Android的Linux層跑一個chroot或proot容器,然後再在容器中運行我們準備好的另外一個Linux系統。

什麼是Linux Deploy

本教學操作環境:linux5.9.8系統、Dell G3電腦。

什麼是Linux Deploy?

Linux Deploy是一款可以在Android裝置上部署Linux環境的應用,其原理大概是在Android的Linux層跑一個chroot或proot容器,然後再在容器中運行我們準備好的另外一個Linux系統。值得注意的是,這與我們熟知的虛擬機器技術不同,新的Linux系統將和Android系統平行運作(非專業解釋不要深究)。

Linux Deploy 指南

本文檔排版約定:

介面的文字表示方式:

使用豎屏方式辨識:

软件主界面 = 刚打开linuxdeploy显示的界面
左滑动菜单栏 = 左上角的滑动菜单
linux设置区 = 右下角的设置(或下载)标志按钮内
操作菜单 = 主界面右上角的3个点点开
app设置 = 滑动菜单里面的设置
登入後複製

需要環境

  • 擁有root權限

  • 擁有300MB 的空餘空間

  • #已安裝busybox

安裝linuxdeploy

下載位址:

https://github.com/meefik/linuxdeploy/releases
登入後複製

本教學使用Linux Deploy 2.2.0

初始化運行環境

開啟Linuxdeploy

軟體主介面-> 左滑選單列-> app設定-> 勾選: 啟用cli -> 點更新環境- > 授權root -> 等待更新完成

設定linux

軟體主介面->linux設定區

引導設定

容器類型

建議使用chroot

  • proot 目前在linuxdeploy不完備,可能無法在安裝

發行版GNU/linux

選擇你需要的發行

架構

選擇你手機支援的架構

發行版GNU/Linux版本

選擇你需要的發行的版本

來源位址

建議使用國內的來源位址

安裝類型

映像檔

將GNU/linux安裝到一個鏡像檔(虛擬磁碟)​​中

如果你將GNU/linux安裝到fat32的sd卡中請使用該選項

安裝路徑為鏡像檔案的絕對路徑預設為/sdcard/linux.img

鏡像大小為鏡像檔案的大小預設為自動

如果鏡像路徑設定在fat32記憶體卡的目錄下鏡像大小應不大於4096mb (fat32檔案系統檔案大小限制)

檔案系統為鏡像檔案內要使用的分割區的檔案系統預設為ext4

目錄

將GNU/linux安裝在一個ext4或f2fs分割區的一個目錄裡

安裝路徑為要安裝到的目錄預設為linuxdeploy的應用程式資料目錄(在data分割區)

安裝目錄請勿使用fat32分割區的目錄,以及/sdcard/內部共用儲存目錄, 它們不支援linux檔案系統的基本權限

分割區

#格式化一個分割區並將GNU/Linux安裝到裡面

安裝路徑為一個區塊裝置分區檔案的絕對路徑預設為/dev/block/mmcblkXpY

如果要安裝到記憶體卡的第一個分割區請寫: /dev/block/mmcblk1p1

#如果要安裝到otg u碟的第一個分割區請寫: /dev/block/sda1

檔案系統格式化分割區所指定的檔案系統預設為ext4

RAM

建立一個ramdisk並將linux安裝到裡面

#安裝路徑為ramdisk的掛載路徑預設為/data/local/ram

#鏡像大小為ramdisk的大小

ramdisk會在關機後清除

使用者名稱

要建立的普通帳戶的使用者名稱

使用者密碼

要建立的普通帳戶的密碼

建議別設定過於簡單或簡短的密碼,否則可能設定失敗

#特權使用者

預設為root

建議不要修改

DNS

#指定GNU/Linux要使用的DNS位址

##預設為自動

本地化

設定GNU/Linux要使用的在地化設定(語言設定)

預設為POSIX 標準英文中文請設定為

zh_CN.UTF-8
登入後複製

初始化

初始化為linuxdeploy啟動linux時自動執行的腳本設定

初始化系統

run-parts
##在啟動linux時執行指定的腳本

初始化路徑要執行的腳本的路徑初始使用者要執行腳本的使用者

sysv

如果你安裝的linux支援並安裝sysv請選擇此選項

初始化等級為init運行類型預設為3(default)

初始使用者為執行init的使用者預設為root

掛載

將GNU/linux外部的一個目錄掛載到GNU/linux供linux存取

請勿在掛載點清單填入區塊裝置檔案名稱

SSH

啟用SSH連線方式

連接埠ssh服務啟動的連接埠預設22

PulseAudio

啟用PulseAudio服務並轉送linux內的音訊輸出到目標pulseaudio伺服器

安卓可使用Pulsedroid作為輸出伺服器

也可以轉送到其他擁有pulseaudio的裝置上

host 目標主機ip

port 目標主機執行pulseaudio服務的連接埠

图形界面

图形子系统

桌面环境为要使用启动的桌面启动环境

使用安装的Linux里面的用户Home目录下的文件控制

x11: ~/.xinitrc
vnc: ~/.vnc/xstartup
framebuffer: ~/.xinitrc
登入後複製

如果图形连接不显示或者启动错误请修改x服务启动控制文件

vnc

启用vnc作为图形连接方式

vnc设置:

显示为要使用的显示DISPLAY变量 影响端口 默认为0

建议不要修改

与vnc监听端口的关系:

显示 0 端口 5900
显示 1 端口 5901
登入後複製

颜色深度为显示的颜色深度 默认为16bit 影响vnc画质

8bit 低画质 低网络占用

dpi为显示密度 默认为 75 dpi越高显示密度更大

建议保持默认不要修改

宽 高 为vnc的显示分辨率 默认为手机横屏取值

vnc选项 为vnc扩展选项默认空

x11

启用x11服务来访问图形

Linuxdeploy并不提供x11的服务器

x11服务的连接方式为:

x11客户端 (linuxdeploy里面的linux)          |^          ||
          v|
      x11服务器
登入後複製

如果要在安卓自身使用x11服务请安装安卓的XsdlServer app

并按照xsdlserver显示的设置x11服务

framebuffer

停止/暂停/冻结 安卓界面并让linux使用fb设备显示图形

在大多数设备上需要设置停止安卓界面来显示linux图形界面

在许多设备上无法此显示方式工作

显示为要使用的DISPLAY变量 默认为0 建议不要修改

视频设备为要使用的fb设备文件 建议不要修改

输入设备为触摸屏设备event设备文件 用于启用图形触摸屏支持 建议不要修改

x参数为x指定附加参数 建议不要修改

强制刷新缓存区 建议勾选

冻结安卓界面 建议选择停止

开始安装

主界面 -> 操作菜单 -> 安装

开始安装并等待安装

安装结束后会在最后几行输出

<<<deploy
登入後複製

验证安装

主界面 -> 启动

打开手机上的终端软件

执行:

android $ su
root # linuxdeploy shell -u root
登入後複製

如果顺利进入linux的shell说明安装成功

如果无法顺利进入请停止并检查安装,或者停止重新安装

连接ssh服务

如果手机自身连接请下载安卓ssh客户端:

  • connectbot
  • juicessh

并连接localhost和你设置的ssh端口 (端口默认为22) 使用你设置的用户名密码登录

可选操作:

登录后请更改默认密码为强密码

如果外部连接本linux请输入手机的局域网ip地址并连接指定ssh端口

连接vnc服务

手机自身连接

下载安卓vnc客户端:

  • vncviewer

连接localhost并输入密码为用户设置密码(用户名下面的那个)

vnc密码和账户密码没有关联,只是linuxdeploy设置的密码在安装时候会共享

连接x11

手机自身连接

下载xsdlserver并启动

启动xsdlserver后启动linuxdeploy里面的linux

使用framebuffer

启动linux的同时手机会黑屏

如果framebuffer启动成功则显示linux的图形界面

如果失败则黑屏 请手动重启

在linuxframebuffer启动的时候可以使用外部ssh到手机来操作

FAQ

问: linuxdeploy安装的linux可以运行什么? 答: linuxdeploy安装的linux是一个完备的linux系统,你可以使用包管理器或者编译方式扩展它的功能. 唯一限制为使用安卓的内核运行(你可能无法使用一些只提供安卓接口的硬件)

问: linuxdeploy安装的linux里面安装了xrdp,但为什么不能运行? 答: 安卓拥有一套特别的权限管理方式 ,由于xrdp在单独一个叫xrdp的账户运行守护进程, 所以需要把xrdp用户加入aid_inet用户组 :

root@linux # usermod -aG aid_inet xrdp  # 将xrdp加入套接字权限组 ,其他需要套接字权限的应用也可以这样设定
登入後複製

推荐学习:《linux视频教程

以上是什麼是Linux Deploy的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板