Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Was nützt Linux Deploy?

Was nützt Linux Deploy?

青灯夜游
青灯夜游Original
2023-04-12 16:40:302057Durchsuche

Linux Deploy wird zum Bereitstellen einer Linux-Umgebung auf Android-Geräten verwendet. Das Prinzip besteht darin, einen Chroot- oder Proot-Container auf der Linux-Ebene von Android auszuführen und dann ein anderes Linux-System auszuführen, das wir im Container vorbereitet haben. . Bevor Sie Linux Deploy verwenden können, müssen Sie die Root-Berechtigung Ihres Telefons einholen.

Was nützt Linux Deploy?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Dell G3-Computer.

Linux Deploy ist eine Anwendung, die eine Linux-Umgebung auf Android-Geräten bereitstellen kann. Ihr Prinzip besteht darin, einen Chroot- oder Proot-Container auf der Linux-Ebene von Android auszuführen und dann das auszuführen, was wir im Container vorbereitet haben. Ein weiteres Linux-System. Es ist erwähnenswert, dass sich dies von der uns bekannten virtuellen Maschinentechnologie unterscheidet. Das neue Linux-System wird parallel zum Android-System ausgeführt (lassen Sie sich nicht auf die Erklärung für Laien ein).

Bevor Sie Linux Deploy verwenden, Wir müssen die Root-Berechtigung des Mobiltelefons einholen (erforderlich) Nachdem wir die Root-Berechtigung erhalten haben, ist dies aufgrund des unvollständigen Linux-Befehlssatzes erforderlich wird mit der Originalmaschine geliefert. Wir müssen Busybox installieren, um den Linux-Befehlssatz zu erweitern (Sie können dies tun, ohne es zu installieren) .

Linux Deploy muss im Google Store installiert werden, der in anderen Android-App-Stores nicht verfügbar ist. Die unten genannte Software kann nur im Google Store installiert werden Ende des Artikels
# 🎜🎜# Was nützt Linux Deploy?
Nach Abschluss der Installation verwenden wir Linux Deploy, um das bereitzustellen Ubuntu-System auf Android-Geräten:

Klicken Sie auf die Schnittstelle. Das „Download“-Symbol in der unteren rechten Ecke ruft die Konfigurationsdatei-Einstellungsschnittstelle auf und nimmt die folgenden Einstellungen vor (ich weiß nicht, warum der Entwickler solche verwendet). ein „Download“-Symbol als Symbol für die Konfigurationsdatei-Einstellungsschnittstelle):

Containerisierungsmethode: „chroot“ (Ubuntu 16.10)

Quelladresse:

#🎜 🎜#http://

mirror.tuna.tsinghua.edu.cn

#🎜🎜 #/ubuntu-ports/

#🎜 🎜#(Hier stellen wir die Standardmethode bereit, dh indem wir Linux-Komponenten und erforderliche Softwarepakete von der Softwarequelle herunterladen, da die Geschwindigkeit der Standardquelle nicht gut ist. Um zu vermeiden, dass das Herunterladen den ganzen Tag und die ganze Nacht dauert, verwenden wir Die Open-Source-Bildquelle der Tsinghua-Universität. Wenn Sie das Repository zum Bereitstellen verwenden (wird in einem späteren Artikel erläutert), sollte die „Quelladresse“ hier mit der lokalen Repository-Datei (Suffix ist tgz/tar.gz) ausgefüllt werden oder Remote-Pfad)

Benutzername: Diese Option ist der Benutzername beim Anmelden am System. Der Standardwert ist „android“ und kann nach Belieben geändert werden.

Benutzerpasswort: Diese Option ist das Passwort des Benutzers im Ubuntu-System. Sie können es nach Ihren eigenen Gewohnheiten eingeben.

${ENV_DIR}/rootfs/linux,即安装在/data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux目录下。"安装类型"选择"文件"时,这个选项将定义Linux系统安装在哪个镜像文件中,默认值为外置存储/linux.img Privilegierte Benutzer: Behalten Sie den Standardwert bei

DNS-Server: Sie können den Standardwert beibehalten oder die DNS-Serveradresse anpassen (z. B. 114.114.114.114 usw.).

Lokalisierung: Es wird empfohlen, den Standardwert POSIX beizubehalten, z Wenn die Anzeigesprache der grafischen Benutzeroberfläche Chinesisch ist, wählen Sie „zh_CN.UTF8“ aus.

  INIT/MOUNTS-Element: Es kann bei Bedarf festgelegt und bei Bedarf ignoriert werden.

 Starten des SSH-Servers zulassen: Aktivieren Sie diese Option

 SSH-Einstellungen: Behalten Sie die Standardeinstellung bei

 Starten der grafischen Benutzeroberfläche zulassen: Sie können dies bei Bedarf festlegen, aber diese Option wird hier vorerst nicht aktiviert (die Im folgenden Artikel erfahren Sie, wie Sie die grafische Benutzeroberfläche bereitstellen.

Was nützt Linux Deploy?

Nachdem die Einstellung abgeschlossen ist, drücken Sie die Eingabetaste, um zur Hauptoberfläche der Anwendung zurückzukehren, drücken Sie die Menütaste und wählen Sie „Installieren“, um die Installation des Linux-Systems zu starten Für diesen Vorgang müssen Sie eine Netzwerkverbindung aufrechterhalten (es wird empfohlen, die Installation unter WLAN durchzuführen, was etwa mehrere hundert Megabyte Datenverkehr erfordert).

  Wenn Sie die Terminalausgabe „>>>deploy“ sehen, bedeutet dies, dass die Installation begonnen hat:

Was nützt Linux Deploy?

Wenn Sie die Terminalausgabe „

Was nützt Linux Deploy?

Klicken Sie unten in der Hauptoberfläche auf die Schaltfläche „Start“, um das neu installierte System zu starten, und klicken Sie auf „Stop“, um das System zu stoppen.

Was nützt Linux Deploy?

 An dieser Stelle wird der Systembereitstellungsteil beschrieben.

  Nach der Bereitstellung müssen wir SSH-Tools wie lJuiceSSH/ConnectBot verwenden, um uns beim System anzumelden (hier nehmen wir JuiceSSH als Beispiel).

  Nach erfolgreichem Systemstart öffnen wir JuiceSSH, klicken auf „Verbinden“ – die Schaltfläche „+“ in der unteren rechten Ecke, um die neue Verbindungsschnittstelle aufzurufen:

  Spitzname: Sie können ihn nach Belieben ausfüllen, wir nehmen „Localhost“. - Android“ als Beispiel Typ: SSH-Adresse: 127.0 .0.1

Was nützt Linux Deploy?

Authentifizierung: Wählen Sie „Neu“, um zur Schnittstelle „Neue Authentifizierung“ zu springen: Spitzname: Sie können ihn auch nach Belieben ausfüllen. Wir verwenden auch „ „Localhost – Android“ als Beispiel. Benutzername: Füllen Sie die Schnittstelle „Profileinstellungen“ aus. „Benutzername“, der Standardwert ist Android. Passwort: Füllen Sie das in der Schnittstelle „Profileinstellungen“ festgelegte „Benutzerkennwort“ aus

Was nützt Linux Deploy?

Klicken Sie zum Speichern auf das Symbol „√“ in der oberen rechten Ecke und kehren Sie zur Benutzeroberfläche „Neue Verbindung“ zurück. Klicken Sie zum Speichern erneut auf das Symbol „√“ und klicken Sie in der „Verbindungsliste“ auf das neu erstellte Projekt, mit dem Sie eine Verbindung herstellen möchten Das System, das wir gerade bereitgestellt haben, sieht nach erfolgreicher Verbindung wie folgt aus:

Was nützt Linux Deploy?

Da wir uns über einen normalen Android-Benutzer beim System anmelden, müssen wir als Nächstes das Passwort des Superusers (Root) festlegen und uns als Superuser beim System anmelden:

Geben Sie Folgendes ein Terminal:

sudo passwd root

 Das Terminal fordert den Benutzer auf, das Passwort des Root-Benutzers einzugeben und es zur Bestätigung erneut einzugeben (das Passwort ist bei der Passworteingabe nicht sichtbar und auch * wird nicht angezeigt). Geben Sie nach Abschluss der Einstellung den Befehl su in das Terminal ein und geben Sie den gerade festgelegten Befehl ein. Mit dem Root-Benutzerkennwort können Sie zum Root-Benutzer wechseln.

Dateiverwaltung: Wenn Sie das Linux-System über die „Verzeichnis“-Methode bereitstellen, können Sie direkt mit dem R.E. Manager auf /data/user/0/ru.meefik.linuxdeploy/env/rootfs/linux zugreifen, um die Dateien im neuen System zu verwalten. , müssen Sie sich für die Dateiverwaltung und andere Vorgänge auf SFTP verlassen (natürlich ist die Verwendung von SSH kein Problem, aber ich denke trotzdem, dass SFTP bequemer ist). Wenn wir uns als normaler Benutzer bei SFTP anmelden, haben wir aus Berechtigungsgründen keine Berechtigung zum Betrieb der meisten Dateien. Wir müssen uns also als Superuser bei SFTP anmelden. Die Standardkonfiguration erlaubt es dem Root-Benutzer jedoch nicht, sich bei SSH und SFTP anzumelden, daher müssen wir die folgenden Einstellungen vornehmen:

Starten Sie das bereitgestellte System in Linux Deploy, melden Sie sich bei SSH als Android-Benutzer an und führen Sie es im aus Terminal:

sudo apt- get install -y vim #Vim-Editor installieren

Natürlich können Sie auch den mit dem System gelieferten vi-Editor verwenden. Wenn Sie mit dem vi-Editor vertraut sind, können Sie auch den vi-Editor verwenden um Dateien zu bearbeiten. Nachdem der vim-Editor installiert ist, führen wir ihn weiterhin im Terminal aus:

vim /etc/ssh/sshd_config #Verwenden Sie den vim-Editor, um die Datei /etc/ssh/sshd_config zu öffnen

Geben Sie nach dem Öffnen der Datei i ein Wechseln Sie in den Bearbeitungsmodus und klicken Sie auf eine beliebige Stelle auf dem Terminal. Die Sondertastentastatur kann an der leeren Position angezeigt werden. Verwenden Sie die Auf- und Ab-Cursor, um durch die Datei zu scrollen und das Element „PermitRootLogin“ im Abschnitt „#Authentication“ zu ändern Ja. Nachdem die Änderung abgeschlossen ist, klicken Sie auf die Taste „ESC“, um den Bearbeitungsmodus zu verlassen. Geben Sie „wq!“ auf der Tastatur ein, um die Datei zu speichern und zu beenden.

Was nützt Linux Deploy?

 Öffnen Sie Linux Deploy, stoppen Sie das Linux-System und starten Sie es dann. Öffnen Sie „Turbo Client“ – Seitenleiste – Neues Konto erstellen – SFTP, um eine neue SFTP-Verbindung zu erstellen (einige Dateimanager, wie z. B. ES File Explorer (ESFile Explorer) und SE File Manager (Solid Explorer) verfügen ebenfalls über SFTP-Funktionen, wenn Sie dies nicht tun Wenn Sie TurboFTP nicht installieren möchten, können Sie sie stattdessen verwenden):

Was nützt Linux Deploy?

Wo:

Benutzername: Root-Passwort ist das Passwort des Root-Benutzers, das gerade festgelegt wurde. Hostname: 127.0.0.1

Andere behalten Klicken Sie auf die Standardelemente und klicken Sie auf das Symbol „Speichern“ in der oberen rechten Ecke, um die Konfiguration zu speichern. In der Verbindungsliste in der Seitenleiste stellen wir als Root-Benutzer eine Verbindung zu SFTP her und verwalten die Dateien:

1Was nützt Linux Deploy?

Natürlich können Sie nach dem Ändern der Datei sshd_config, nach dem Stoppen und Starten des Linux-Systems auch als Root-Benutzer direkt eine Verbindung zu SSH herstellen. Nachdem wir die Installation vorgestellt haben, führen wir die Deinstallation ein. ~ Sie können Linux Deploy mit den folgenden Methoden vollständig deinstallieren:

 1. Wenn Sie die „Verzeichnis“-Methode verwenden, um das Linux-System bereitzustellen, „stoppen“ Sie das Linux-System in Linux Deploy, deinstallieren Sie dann Linux Deploy direkt und starten Sie das Telefon neu, um es vollständig zu deinstallieren ) „Methode zum Bereitstellen des Linux-Systems verwenden, müssen Sie zuerst das Linux-System „stoppen“ und dann die im integrierten Speicher abgelegte Image-Datei löschen. Der Image-Dateipfad ist der oben erwähnte „Installationspfad“, bevor Sie Linux bereitstellen Wenn dieses Element nicht geändert wurde, lautet der Spiegelpfad 外置存储/linux.img,接着卸载Linux Deploy并重启手机即可完全卸载。

安装图形环境

修改以下配置项:

  INIT:   打勾:启用自定义脚本执行   (INIT的其他配置保持不变)

  图形界面:

  打勾:允许图形界面启动

  图形子系统:VNC

  图形化界面设定:保持默认配置

  桌面环境:按需选择,这里选择的是LXDE 

1Was nützt Linux Deploy?
1Was nützt Linux Deploy?
1Was nützt Linux Deploy?

  配置完毕后,回到主界面,按下"菜单键",选择"配置"让我们刚才的的设置生效:

1Was nützt Linux Deploy?
1Was nützt Linux Deploy?

  配置完毕后,点击底部的"停止"按钮停止Linux系统,再点击"启动"按钮启动Linux系统,接着我们登入SSH,在终端中执行:

sudo apt-get install ttf-wqy-zenhei    #安装中文字库

  中文字库安装完毕后,执行以下命令启动VNC:

vncserver

  终端会返回以下结果:

New 'X' desktop is localhost:1  Starting applications specified in /home/android/.vnc/xstartup Log file is /home/android/.vnc/localhost:1.log
复制

  证明vncserver已启动成功。

  (注意,在某些时候,第一次执行vncserver命令时系统将要求你设定一个小于8位数的VNC密码,你需要输入两次密码之后提交,VNC密码设定完成之后还会有一个提示,不用理会,键入nSenden)

Geben Sie die grafische Oberfläche ein:

Dann verwenden wir VncViewer, um eine Verbindung zu der gerade bereitgestellten grafischen Oberfläche herzustellen:

Öffnen Sie VncViewer und klicken Sie auf Klicken Sie auf die Schaltfläche „+“ in der unteren rechten Ecke, um eine VNC-Sitzung hinzuzufügen:

Adresse: 127.0.0.1:5901 Name: Localhost – Ubuntu@Xfce

 Dabei ist das Element „Adresse“ die Adresse des VNC-Servers. Da wir eine Verbindung zum lokalen VNC-Server herstellen müssen, geben Sie einfach 127.0.0.1 ein. Außerdem müssen wir nach der Adresse auch den VNC-Port angeben, da die Informationen gerade vom Terminal zurückgegeben wurden: Neuer 'X'-Desktop is localhost:1 code> gibt die Desktop-Sitzungsnummer als 1 an, sodass der Port 5900+1=5901 ist. Wenn wir mehrere virtuelle Desktops öffnen<a href="https://www.php.cn/link/ec79d4bed810ed64267d169b0d37373e" class=" wrap external" target="_blank" rel="nofollow noreferrer">, ist ihre Sitzungsnummer 2, 3, 4 ..., dann sind die entsprechenden Ports 5902, 5903, 5904 ... und so weiter. Außerdem müssen die Serveradresse und der Port durch einen englischen Doppelpunkt getrennt werden. Das Element „Name“ ist die vom Benutzer für diese VNC-Sitzung angegebene Adresse. Um sie von anderen Sitzungen zu unterscheiden, geben wir „Localhost – Ubuntu@Xfce“ ein. Tatsächlich können Sie alles eingeben, was Sie möchten. </a><p data-pid="0xRWuzYV">Nachdem Sie diese Informationen eingegeben haben, klicken Sie zum Absenden auf die Schaltfläche „ERSTELLEN“: <code>New 'X' desktop is localhost:1指定了此次桌面会话号为1,所以端口就为5900+1=5901。如果我们开启了多个虚拟桌面,它们的会话号为2,3,4...,那么各自的端口即为5902,5903,5904...依次类推。并且,服务器地址与端口之间需要用英文冒号隔开。"Name"项为用户为此VNC会话指定的地址,我们为了区别其他会话,填写的是Localhost - Ubuntu@Xfce,实际上随便填写什么都可以。

  这些信息填写完毕后,点击"CREATE"按钮提交:

Was nützt Linux Deploy?
1Was nützt Linux Deploy?

  确认信息无误后,点击下面绿色的"CONNECT"按钮开始连接VNC会话(如果你之前没有设定过VNC密码,但在连接VNC连接过程中仍然需要你输入密码时,那么你可以输入android用户的密码试试):

1Was nützt Linux Deploy?
Was nützt Linux Deploy?

  好了...图形界面的部署过程到此为止,剩下的你们自己折腾吧(/doge脸)~

可能遇到的问题:

  1. 当你开启了一个VNC会话,停止Linux系统再启动Linux系统后,再次执行vncserver命令,系统可能会报出以下错误:

2Was nützt Linux Deploy?

  这时候,你可以执行以下两条命令:

rm -rf /tmp/.X[1-9]-lock
rm -rf /tmp/.X11-unix/X[1-9]

  执行完毕后,再执行vncserver,会话号就会被重置为1了。为了防止每次停止再启动Linux系统后带来的这个问题,我们可以编辑/etc/rc.local文件,在此文件的exit 0

Was nützt Linux Deploy?
Was nützt Linux Deploy?
1Was nützt Linux Deploy?2Was nützt Linux Deploy?

Nachdem Sie bestätigt haben, dass die Informationen korrekt sind, klicken Sie unten auf die grüne Schaltfläche „VERBINDEN“, um die Verbindung zu starten zur VNC-Sitzung (falls Sie zuvor kein VNC-Passwort festgelegt haben, das Passwort aber dennoch während des VNC-Verbindungsvorgangs eingeben müssen, können Sie versuchen, das Passwort des Android-Benutzers einzugeben):

Was nützt Linux Deploy?🎜19 .png🎜🎜🎜Was nützt Linux Deploy?🎜Was nützt Linux Deploy?🎜

 Okay ...der Bereitstellungsprozess der grafischen Oberfläche endet hier. Bis dahin können Sie den Rest selbst erledigen (/doge face)~🎜

Probleme, auf die Sie stoßen können:

 1. Wenn Sie nach dem Öffnen einer VNC-Sitzung, dem Stoppen des Linux-Systems und dem Neustart des Linux-Systems sowie dem erneuten Ausführen des vncserver-Befehls möglicherweise den folgenden Fehler melden: 🎜🎜🎜Was nützt Linux Deploy?🎜2Was nützt Linux Deploy? 🎜

Zu diesem Zeitpunkt können Sie die folgenden zwei Befehle ausführen: 🎜

rm -rf /tmp/.X[1-9]-lock
rm -rf /tmp/ Auf 1 zurücksetzen. Um dieses Problem zu verhindern, das durch jedes Mal Stoppen und Neustarten des Linux-Systems verursacht wird, können wir die Datei /etc/rc.local bearbeiten und diese beiden Befehle vor exit 0 in diese Datei einfügen: 🎜🎜sudo vim /etc/rc.local #Edit /etc/rc.local🎜🎜🎜🎜🎜🎜🎜🎜Nachdem die Bearbeitung abgeschlossen ist, speichern Sie es. Nach diesem Schritt wird Linux Deploy ausgeführt, nachdem Sie das Linux-System gestartet haben Führen Sie diese beiden Befehle für uns aus, damit keine Fehler mehr gemeldet werden ~🎜

 2. Die Standardauflösung von vncserver beträgt 1024×768, aber die Auflösung der meisten Mobiltelefonbildschirme auf dem Markt beträgt 720P (1280×720), 1080P (1920×1080) oder sogar 2K (2560×1440). Die Auflösung von vncserver beträgt möglicherweise 1024 x 768. Dies kann dazu führen, dass das VNC-Bild den Bildschirm nicht ausfüllt. Nach dem Test müssen wir die Einstellung für den 1080P-Bildschirm anpassen Durch die Auflösung auf 720P kann das VNC-Bild den Bildschirm ausfüllen, ohne den Anzeigeeffekt zu beeinträchtigen. Die Anpassungsmethode besteht darin, dass nach jeder Ausführung des vncserver命令时在后面加上-geometry参数,例如我需要把VNC分辨率调为720P(1280×720),那么在启动vncserver时,执行:

vncserver -geometry 1280x720

  即可将新开启的VNC虚拟会话屏幕分辨率设为1280×720。值得注意的是,命令中的1280x720里的x是小写字母x,而不是数学中的乘号×

  下面是1280×720分辨率和1024×768分辨率的对比(将VNC Viewer画面缩小到最小):

2Was nützt Linux Deploy?
2Was nützt Linux Deploy?

  很明显,1080P屏幕上,将VNC分辨率设为1280×720可使图像填充满屏幕且视觉效果更佳。

  如果你觉得每次启动vncserver时输这么一长串命令有点儿麻烦,那么可以编辑~/.bashrc文件,在下图所示的位置增加一行alias定义:

vim ~/.bashrc    #编辑~/.bashrc

alias vncserver='vncserver -geometry 1280x720'
复制

2Was nützt Linux Deploy?

  之后,每次执行vncserver-Befehls die Auflösung der neu geöffneten VNC-Sitzung auf 1280 x 720 eingestellt wird.

Ubuntu aktualisieren

Sie werden feststellen, dass Ubuntu nur bis 18.04 installiert werden kann

Die Upgrade-Methode besteht darin, Ubuntu zu installieren und dann direkt zu aktualisieren.

Nachdem Sie sich mit VNC am Desktop angemeldet haben, verwenden Sie das Terminal, um den Updater zu installieren „.gpg“ wird als Fehler „Authentifizierung fehlgeschlagen“ angezeigt. Installieren Sie zuerst gnupg und führen Sie die folgenden Anweisungen aus:

Wenn Sie dazu aufgefordert werden, installieren Sie bitte alle verfügbaren Updates vor dem Upgrade

sudo apt install update-manager-core

Führen Sie sudo do-release-upgrade erneut aus, geben Sie y ein, um mit der Aktualisierung des Systems zu beginnen, und befolgen Sie die Terminalanweisungen zum Aktualisieren.

Wenn sonst nichts schief geht, wurde das System normal aktualisiert.

Nach dem Upgrade müssen Sie noch einmal zu den Konfigurationselementen von Linux Deploy zurückkehren und den Benutzernamen in „root“ ändern. Der Grund dafür ist, dass der ursprüngliche Android-Benutzername nach dem Upgrade keine Root-Berechtigungen mehr hat

Nach dem Ändern des Benutzernamens klicken Sie unbedingt auf die Konfigurationsoption von Linux Deploy, um es neu zu konfigurieren

# Aktualisiert am 2023.3.8 Wenn Sie auf „Die erforderliche Abhängigkeit ‚apt (>= 2.0.4)‘ ist nicht installiert“ stoßen. Sie müssen die Datei /etc/apt/source ändern

Das obige ist der detaillierte Inhalt vonWas nützt Linux Deploy?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Welche Linux-Version ist Ros?Nächster Artikel:Welche Linux-Version ist Ros?