Fråga:
Enkelt och effektivt sätt att köra GNU / Linux ovanpå Android på en x86-enhet?
Revetahw says Reinstate Monica
2016-06-25 13:26:09 UTC
view on stackexchange narkive permalink

Jag har en ganska kraftfull x86-64 Android-telefon. Jag vill köra en GNU / Linux-skrivbordsdistro (helst Debian-baserad) ovanpå Android.

Jag har lager firmware, men rotad och med Xposed Framework.

Jag vet om Komplett Linux Installer, och det verkar utmärkt. Men de har en förberedd bild. Jag antar att bilden är ARM, så den fungerar inte? Rätt? De säger också att min ROM måste stödja "loop-enheter." Gör det? Och om det inte finns finns det några justeringar för att aktivera det?

Men jag är säker på att det också måste finnas massor av andra sätt att göra det? FWIW Jag har tillgång till en bärbar dator med en Intel-processor som jag kan använda för processen. (Men jag är inte så angelägen om timmars bråk för att få det att fungera.)

Förutom det vill jag verkligen dra nytta av telefonens specifikationer. En användarvänlig process är också ett plus.

Observera att även om jag har accepterat mitt eget svar här välkomnar jag fortfarande mycket svar.

Komplett Linux Installer kraschar på min rotade Samsung S4 som kör CM13. Linux Deploy fungerar dock.
@Matthieu CLL kraschade också på min rotade Samsung S3. Försökte aldrig LD på Samsung.
Du behöver inte använda någon tredjepartsapp för att köra Linux på Android-enhet.Hämta bara rotfilerna för vilken distro du vill köra, montera den och `chroot` in den från valfri terminalemulatorapp som Termux.Mycket minimal konfiguration behövs vanligtvis t.ex.lägga till ny användare, lägga till DNS-server etc. Jag använder Ubuntu, ArchLinuxARM och VoidLinux på detta sätt på min enhet.Förutom `chroot` använder jag även monterings-, PID-, nätverks- och UTS-namnområden för att ytterligare isolera Linux-miljö från Android.Det går också att använda VNC eller XServer, men jag brukar inte göra det.
Ett svar:
Revetahw says Reinstate Monica
2016-06-29 22:51:30 UTC
view on stackexchange narkive permalink

Jag hittade sätt att göra detta som jag är väldigt nöjd med.

Jag använde Linux Deploy. (Det kräver root, men här är ett alternativ för dem som inte vill rota.)

Här är en nästan full version av Xubuntu 16.04 ( x86-64) körs på min telefon.

enter image description here

Det fungerar riktigt bra. Jag hade inga prestationsproblem. Observera att detta inte är en virtuell maskin. Android och Xubuntu delar samma Linux-kärna samtidigt. Om jag växlar till OS-skärm (i Android) medan detta är igång, kan jag faktiskt se de enskilda processerna från Xubuntu ( dpkg , etc.) som körs och hur mycket av processorn de använder. (Det måste dock aktiveras i en inställning.)

Ett externt tangentbord och en mus är ett måste (men inte strikt krävs). Och en extern bildskärm är också en bra idé. Eller så kan du bara VNC i detta system direkt från en annan dator. Linux Deploy stöder det direkt.

Installationen är väldigt enkel. Standardinställningarna för Linux Deploy fungerar ganska mycket. Välj bara din distributions- och skrivbordsmiljö. Men som standard skapar systemet en 2 GB .img -fil som ett filsystem. Det räckte inte för mig. Så eftersom den interna lagringen av min telefon är ext4 formaterad kunde jag ställa in den på 40 GB. Om din är FAT32 är maximalt 4 GB. Men det är också möjligt att ha en katalog eller partition istället för en .img -fil. (Även om jag inte räknat ut hur man gör det.)

Processen är beskrivs i detalj här. Hoppa ner till avsnittet "Linux Deploy". Det är viktigt att du installerar rätt version av Busy Box. Annars fungerar det inte.

Den här typen av saker har potential. Om du har en tillräckligt kraftfull telefon kan den faktiskt ersätta din stationära dator i många fall.

Du nämnde * ett externt tangentbord och en mus är ett måste *. Du menar att du faktiskt kan installera en * på * din telefon? Jag skulle vara intresserad av att göra det, eftersom min rotade Samsung S4-mikrofon är död, men telefonen är kraftfull.
Du kanske också vill acceptera ditt eget svar. Jag tycker att det är vettigt att se VirtualBox köras på Android! :)
@Matthieu Visst, tangentbord och mus är möjliga på S4. Få bara en USB-OTG-kabel och en hub. Ännu bättre, få en OTG som stöder laddning samtidigt (sällsynt.) Anslut till en extern skärm och din telefon har blivit en riktig stationär dator. Personligen använder jag Bluetooth för tangentbordet och musen. När det gäller Virtual Box, medan jag lyckades installera den, kunde jag [fortfarande inte ha kunnat] (http://askubuntu.com/q/792896/451919) faktiskt få den att fungera (det skulle dock vara _so_ coolt). ) Jag tror att på din Samsung måste du ARM sammanställa många paket från källan? Kan S4 hantera det, tror du?
Jag är inte säker. En av anledningarna till att jag ville ha en fullständig Linux var att få gcc att kompilera inbyggda saker, men jag kunde inte hitta det hittills (jag försökte inte särskilt hårt heller). Virtual Box på ARM behöver förmodligen många av dem. Tack för USB-OTG, det låter trevligt!
@Matthieu VirtualBox skulle aldrig ens vara möjligt att installera på ARM. Det är enbart för x86. (Min telefon är x86.) Men för de flesta andra FOSS-program kan du kanske ARM-kompilera från källan. Vissa saker är också tillgängliga via `apt-get`. Men det är definitivt lättare med x86. Och ja, OTG är ganska coolt. Du kan även ansluta lagringsenheter och (med en driven hub) hårddiskar. Och med root kan du få Android-drivrutiner för NTFS och HFS +. Det blir mer och mer som en riktig stationär dator.
Jag försökte Ubuntu och dess `apt-get` men det misslyckades för gcc-paketen, förmodligen på grund av att libc inte var så standard. Utan en kompilator är det svårt att få något att fungera (utöver vad som redan fungerar förstås). Även om Terminal IDE låter som ett trevligt projekt när det gäller att kompilera på Android ...
@Matthieu Finns det inget annat sätt att få en kompilator?
Jag tycker att Terminal IDE är den bästa (gratis) satsningen.
@Matthieu Jag är säker på att du kommer att räkna ut det.
@beeshyams Jag känner att det att motta mitt eget svar avskräcker ytterligare svar. Och jag vill uppmuntra fler svar. Det finns flera sätt att göra detta. Jag känner att det faktiskt inte tjänar något syfte att acceptera mitt eget svar.
Avsikten är ädel, a) men du glömmer att du kan acceptera ett bättre svar vid en senare tidpunkt b) Detta är ett nischproblem, det betyder att det finns en fungerande lösning för de nischsökande - ditt val naturligtvis
@beeshyams Okej, jag har accepterat det. Kan alltid ändra det senare om något bättre kommer med.
Du kan till och med lägga till en anteckning i din fråga som säger att även om du har en lösning - skulle välkomna bättre lösningar - detta kan uppmuntra
@beeshyams Bra idé.


Denna fråga och svar översattes automatiskt från det engelska språket.Det ursprungliga innehållet finns tillgängligt på stackexchange, vilket vi tackar för cc by-sa 3.0-licensen som det distribueras under.
Loading...