Installeer Linux-desktop op Android

Hé Habr! Ik presenteer onder uw aandacht een vertaling van een artikel uit het tijdschrift APC.

Installeer Linux-desktop op Android
Dit artikel behandelt de volledige installatie van de Linux-besturingsomgeving samen met de grafische desktopomgeving op Android-apparaten.

Een van de sleuteltechnologieën die veel van de Linux-systemen op Android gebruiken, is pWortel. Dit is een userspace-implementatie van het chroot-hulpprogramma dat erg populair is op Linux-desktops en -servers. De chroot-tool vereist echter rootgebruikersrechten, die standaard niet beschikbaar zijn op Android. pRoot daarentegen biedt dit voordeel door een directory-affiniteit tot stand te brengen.

Linux-terminals

Niet alle Linux-terminalemulators voor Android hebben een set BusyBox-hulpprogramma's, in tegenstelling tot bijvoorbeeld Termux. De reden hiervoor is het feit dat het hele doel van dergelijke systemen is om een ​​"volledige" installatie van alle OS-componenten te bieden, terwijl BusyBox is ontworpen om alle vele algemene hulpprogramma's in één binair bestand samen te brengen. Op systemen waarop BusyBox niet is geïnstalleerd, wordt de bootloader voor Linux gebruikt, die de volledige versies van de programma's bevat.
Installeer Linux-desktop op Android"

Stel de gebruikersnaam en het wachtwoord in voor de distributie en VNC in UserLAND.

Deze systemen hebben echter aanvullende technologie waarvoor Termux niet vereist is. Dit artikel behandelt een volledige installatie van een Linux-distributie en een GUI-desktop. Maar eerst moet u een manier kiezen om het grafische systeem te installeren.

Linux op Android

Zoals eerder vermeld, draaien de softwarepakketten die we gaan installeren in gebruikersruimte.

Dit betekent dat ze alleen toestemming hebben voor de huidige gebruiker, wat in het geval van Android OS altijd een normale gebruiker is, d.w.z. heeft geen beheerdersrechten. Om een ​​Linux-desktop te installeren, moeten we echter een grafische server zoals X of Wayland installeren. Als we dit zouden doen in de Linux-besturingsomgeving, dan zou het starten als een normale gebruiker, zonder toegang te hebben tot het grafische niveau van het Android-besturingssysteem. En daarom moeten we kijken naar het installeren van de server op de "standaard" Android-manier, zodat deze toegang heeft tot de hardware en de mogelijkheid heeft om een ​​grafische omgeving te onderhouden.

De slimmeriken in de ontwikkelaarsgemeenschap bedachten twee oplossingen voor dit probleem. De eerste is om je eigen versies van Linux te gebruiken (meestal de X-server). Nadat ze op de achtergrond beginnen te werken, heb je via VNC toegang tot dit achtergrondproces. Als u al een VNC-viewer op uw Android-apparaat hebt om op afstand met andere computers te communiceren, gebruikt u deze gewoon om op afstand toegang te krijgen tot de lokale host. Dit is een gemakkelijke oplossing, maar sommige gebruikers melden dat ze problemen hebben met het programma.

De tweede optie is om een ​​server te installeren die speciaal is ontworpen voor Android-apparaten. Sommige servers zijn beschikbaar in de Play Store in betaalde en gratis versies. Voordat u gaat installeren, moet u controleren of de gekozen optie wordt ondersteund, of in ieder geval werkt met het Linux voor Android-softwarepakket dat u gaat installeren. We gaven de voorkeur aan het X-Server-systeem en gebruikten daarom het XServer XSDL-softwarepakket (link). Dit artikel beschrijft het installatieproces voor deze server, hoewel het enigszins kan verschillen als u een andere toepassing hebt geïnstalleerd of als u VNC gebruikt.

Systeem selectie

Net als in het geval van X-Servers zijn er verschillende applicaties in de Play Store voor het installeren van distributies van het Linux-systeem. Hier, evenals bij Termux, zullen we ons concentreren op opties die geen root-toegang vereisen, wat op zijn beurt een zeker risico met zich meebrengt. Deze applicaties bieden alle functionaliteit die de meeste gebruikers nodig hebben, terwijl ze uw gegevens veilig houden. Hieronder staan ​​voorbeelden van dergelijke apps in de Play Store:

- GebruikerLAND: Een zeer populaire keuze van gebruikers. De applicatie bevat een reeks algemene distributies: Debian, Ubuntu, Arch en Kali. Vreemd genoeg bevat UserLAnd, ondanks het ontbreken van op RPM gebaseerde opties, Alpine Linux voor apparaten met minder geheugen.

- EenLinux: Deze applicatie helpt bij het installeren van een of meer lijsten met grote distributies en kan Ubuntu/Debian, Fedora/CentOS, openSUSE en zelfs Kali bevatten. Daar kunt u ook goedkope desktopopties kiezen: Xfce4, MATE, LXQ en LXDE. Het vereist dat Termux is geïnstalleerd en het Android-besturingssysteem moet van 5.0 en hoger zijn.

- Andronix zeer vergelijkbaar met AnLinux. Mogelijk beter ontworpen dan de vorige applicatie, maar ondersteunt minder distributies.

- GNUroot WheezyX: Dit project is begonnen als een variant van Linux op Android en is ontwikkeld voor open source software. Zoals de naam suggereert, richt het zich op Debian-distributies, terwijl de 'X' aan het einde betekent dat de applicatie grafisch desktop-georiënteerd is. En ondanks het feit dat de makers de ontwikkeling van het project hebben stopgezet omwille van UserLAnd, is GNURoot WheezyX nog steeds beschikbaar in de Play Store als iemand het nodig heeft.

De auteurs van dit artikel zullen de UserLAnd-app gebruiken om een ​​Linux-desktop op Android te installeren, en daar zijn verschillende redenen voor. Ten eerste is de applicatie open source (hoewel AnLinux het ook heeft). Ten tweede biedt het een goede set distributies (hoewel het geen Fedora of CentOS bevat), en het kan ook worden gebruikt om distributies te installeren met minimale systeemvereisten die niet veel ruimte innemen in het geheugen van de smartphone. Maar het belangrijkste voordeel van UserLAnd is dat het ondersteunende tools heeft voor het installeren van individuele applicaties in plaats van volledige distributies. Wat dit precies voor ons betekent, horen we later. Laten we nu UserLAND op uw apparaat installeren.

Applicatie UserLand

Download de app van Google Play of F-Droid (link) op Android OS. Het wordt geïnstalleerd zoals elke andere applicatie - hier hoeft niets speciaals te worden gedaan. Start het daarna vanuit de applicatielade.

Het eerste dat u daar ziet, is een lijst met distributies. Aan het einde vindt u een aantal desktopopties: LXDE en Xfce4. Afronding is de Firefox-app, een paar games en een paar kantoorhulpprogramma's: GIMP, Inkscape en LibreOffice. Dit tabblad heet Toepassingen. Het is ontworpen om applicaties te installeren.

Nadat u iets hebt geïnstalleerd, verschijnt er een corresponderende vermelding erover op het tabblad "Sessie". Hier kunt u de huidige sessie starten of stoppen en lopende processen bekijken.

"Bestandssystemen" is het laatste tabblad dat reeds voltooide installaties toont. Het is vermeldenswaard dat nadat u een element uit bestandssystemen hebt verwijderd, de informatie erover wordt gewist van het tabblad Sessie, wat echter niet het tegendeel bewijst. Dit betekent dat u een nieuwe sessie kunt maken op basis van het huidige bestandssysteem. Begrijpen hoe deze relatie werkt, is veel gemakkelijker als je het in actie ziet, dus we beginnen met het installeren van de applicatie in de UserLAnd-systeemomgeving.
Installeer Linux-desktop op Android

Voordat u de distributiekit op uw smartphone installeert, moet u UserLAND toegang geven tot de opslag.

Uitkeringen in UserLAND

Selecteer een van de distributies op het Apps-scherm om op uw apparaat te installeren. We gebruiken Ubuntu als voorbeeld. Als u op het pictogram klikt, verschijnt er een dialoogvenster waarin om een ​​gebruikersnaam, wachtwoord en VNC-wachtwoord wordt gevraagd. Selecteer vervolgens de methode waarmee u toegang krijgt tot de distributie. De download begint, waarbij de basisafbeelding van de geselecteerde distributie wordt gebruikt. Het bestand wordt uitgepakt in de UserLAND-directory.

Wanneer het downloaden is voltooid, keert u terug naar de xterm terminal-emulator. U kunt een serviceopdracht invoeren om erachter te komen welke versie van Linux u hebt geïnstalleerd:

uname –a

De volgende stap is het installeren van de desktop met behulp van de Ubuntu-hulpprogrammaopdracht:

sudo apt install lxde

De laatste stap is om ervoor te zorgen dat uw nieuwe desktopomgeving klaar is voor gebruik. Om dit te doen, moet u het bestand bewerken .xinitrcbestand, die momenteel slechts één regel heeft /usr/bin/twm. Het moet worden gewijzigd in /usr/bin/startlxde. Verlaat nu de XSDL-sessie (zorg ervoor dat u op de STOP-knop in het systeemvak klikt), houd de knop "Ubuntu-lijst" op het tabblad Sessies ingedrukt, klik vervolgens op "Stop Sessions" en start de sessies opnieuw. Na een paar seconden zou de LXDE-systeemomgeving moeten verschijnen. Daarin kun je hetzelfde doen als op een gewone desktop. Het is misschien iets kleiner en iets langzamer: je moet langer wachten om op een knop op een apparaat te drukken dan wanneer je het met een toetsenbord en muis zou doen. Laten we eens kijken hoe we specifiek de Linux-systeemomgeving op een smartphone kunnen verbeteren.

Snelgids voor UserLAND

Een nauwkeurig onderzoek van de inhoud van de desktop onthult een exacte reproductie van de desktopversie. Als u UserLAnd gebruikt op een apparaat met een toetsenbord en muis (al dan niet verbonden via Bluetooth), kunt u zich gemakkelijk aanpassen aan het gebruik van de Linux-systeemomgeving in dit formaat. Afgezien van een kleine vertraging, die wordt veroorzaakt door het feit dat de X-Windows-cursor is gesynchroniseerd met de cursor van het Android-apparaat, werkt alles soepel.

Misschien is het eerste dat u wilt doen, het standaardlettertypesysteem aanpassen, omdat de lettergrootte van het bureaublad te groot is voor het telefoonscherm. Ga naar het hoofdmenu en selecteer vervolgens "Instellingen" → "Uiterlijk en widgets aanpassen" → "Widget". Hier kunt u de standaardlettergrootte wijzigen in iets dat geschikter is voor uw telefoon.

Vervolgens wilt u misschien uw favoriete programma's op een Linux-systeemomgeving installeren. Zoals hierboven vermeld, werken serviceopdrachten in dit geval niet, dus voel je vrij om een ​​echt onmisbare tool te gebruiken die is geïnstalleerd in de UserLAnd-systeemomgeving genaamd ASAP:

sudo apt install emacs

Installeer Linux-desktop op Android

Uitkeringen in de applicatie worden gepresenteerd in de vorm van sessies. Je kunt ze starten en sluiten.

Installeer Linux-desktop op Android

Na het installeren van de distributie kun je een desktopomgeving toevoegen met standaardcommando's.

U zult waarschijnlijk ook alternatieve verbindingsmethoden nodig hebben voor uw distributie. Het feit dat u XSDL in eerste instantie hebt ingesteld, betekent niet dat dit altijd hetzelfde moet zijn. U kunt een ander account aanmaken op het tabblad Sessie en een andere server selecteren. Zorg er wel voor dat u het naar hetzelfde bestandssysteem verwijst. UserLAnd zal proberen u naar de juiste toepassing te leiden om een ​​nieuw verbindingstype tot stand te brengen: XSDL, ConnectBot voor SSH of bVNC.

De persistentie waarmee de app u automatisch naar de Play Store leidt wanneer u opnieuw verbinding probeert te maken, kan echter vervelend zijn. Om dit te stoppen, volstaat het om de server te wijzigen door een speciale applicatie te installeren. Selecteer de oude vertrouwde VX ConnectBot om SSH te installeren. Log gewoon in op poort 2022 op het werkstation met uw gebruikersnaam en wachtwoord. Om verbinding te maken met een VNC-server hoeft u alleen maar de commerciële, maar in veel opzichten geavanceerde Jump Desktop-toepassing te installeren en het adres 127.0.0.1:5951 te kiezen.

We hopen dat u het VNC-wachtwoord onthoudt dat u hebt ingesteld toen u het bestandssysteem maakte.
U kunt ook toegang krijgen tot de huidige UserLAND-sessie met vergelijkbare tools op een andere computer in uw netwerk. Het volstaat om SSH te verbinden met een actieve sessie (uiteraard met verbindingstype SSH) met behulp van een Linux-terminal, zoals Konsole, of verbinding te maken met een VNC-sessie met behulp van KRDC. Vervang gewoon de lokale adressen op uw computerscherm door de IP-adressen van uw Android.

Gecombineerd met een paar draagbare applicaties, geeft deze opstelling je een handig draagbaar Linux-systeem waarmee je verbinding kunt maken met elke computer die je op dit moment beschikbaar hebt.

Bron: www.habr.com

Voeg een reactie