ผมเล่น Android มาปีแล้ว แต่เห็น Processor ที่ใช้ใน Linux Boxes เล็กๆ รัน Android ทำให้ผมคิด: ถ้าติดตั้ง Linux Desktop เต็มรูปแบบบน Android Phone จะเป็นยังไง?
Android ก้าวไปในทิศทางนี้แล้ว มี Built-in Linux Terminal ใหม่ แต่ยัง Early Development และไม่ Useful เท่า Full Desktop Environment ผมจึงตัดสินใจติดตั้ง Linux Desktop เต็มรูปแบบบน Android และมัน Perform ดีกว่าที่คาด
จริงๆ แล้วอะไรกำลังรันบนโทรศัพท์?
คุณไม่ได้ Replace Android คุณ Piggyback บนมัน

ก่อนอื่น ตั้ง Expectations ให้ชัด คุณไม่ได้ Dual-boot ไม่ได้ Flash ROM และไม่ได้ Root โทรศัพท์ Android Modern มี Linux Kernel ใต้ฝาปิดอยู่แล้ว และ Tools อย่าง Termux รวมกับ proot-distro ติดตั้ง Debian หรือ Ubuntu เต็มรูปแบบบนมันได้ เพิ่ม Termux X11 เข้าไป ซึ่งเพิ่ม X Server จริงบน Android คุณก็ Ready
บนอุปกรณ์ที่รองรับ คุณใช้ Native Linux VM ที่ Android 16 เปิดเผยผ่าน Android Virtualization Framework ได้ นี่ให้ Debian VM จริงพร้อม Kernel และ Hardware Isolation ของตัวเอง แม้จะ Impressive แต่ Limited กลุ่มโทรศัพท์เล็ก (ส่วนใหญ่ Pixels) ขณะที่วิธี Termux ทำงานบน Android ครึ่งหนึ่งขึ้นไปได้
Setup ไม่ยาก — แต่ก็ไม่ Simple
Patience สำคัญกว่า Skill
ผมไม่ Sugarcoat แต่ถ้าคุณไม่เคยเล่น Linux Terminal หรือ Install Linux จากศูนย์ Installation อาจ Tricky ไม่ได้ Complicated แต่ต้อง Install Tools และ Dependencies หลายตัวใน Order ที่ถูกต้อง ไม่งั้นไม่ถึง Graphical Desktop
ขอขอบคุณ Install Scripts บน GitHub มากมายที่ Automate กระบวนการ แทนที่จะ Install Tools, Distro, และ XFCE Desktop ทีละตัว คุณแค่รัน Install Script ติดตั้งทุกอย่าง Auto ผมใช้ Mobile HackLab Script จาก jarvesusaram99 บน GitHub ติดตั้งทุกอย่างที่ต้องการ Plus Utilities เยอะอย่าง Firefox, Wget, cURL, VS Code, และแม้แต่ Wine ให้เริ่มต้น มี Terminal Interface ใช้ง่ายบอกว่าเกิดอะไรขึ้น
ขั้นแรก ติดตั้ง Termux และ Termux X11 จาก GitHub Repos อย่างเป็นทางการ Termux คือ Terminal ที่เราจะใช้ Install Linux Distro และ Termux X11 คือ X Server ที่จะ Display Linux GUI การใช้ X Server หลีกเลี่ยง Overhead ของ VNC Server ให้ Performance ดีกว่าและ Lag น้อยกว่า

Termux
OS Android
Price model Free, Open-source
Termux เป็น Android App นำ Linux Terminal Environment เต็มรูปแบบมาบนโทรศัพท์ ให้รัน Command-line Tools และ Packages ท้องถิ่น
ติดตั้งเสร็จ ต้อง Disable Android Phantom Process Killer Option นี้อยู่ใน Android Developer Settings โดยทั่วไปเป็น Toggle Disable child process restrictions เปิดแล้ว Restart โทรศัพท์ พร้อมแล้ว
พอโทรศัพท์ Restart เปิด Termux รันคำสั่ง:
curl -sL https://raw.githubusercontent.com/jarvesusaram99/termux-hacklab/main/install.sh | bash
คำสั่งใช้เวลา 15-30 นาที ตามที่ Script Claim ขึ้นอยู่กับ Processor และ Internet Speed ทั้ง Process ใช้เวลาไม่ถึง 10 นาทีบน Pixel 9a ของผม มี Security Tools บางตัวติดตั้งไม่ได้
ต่อไป รัน Termux X11 App เปิด App Minimize กลับไป Termux Terminal รันคำสั่งเริ่ม Desktop แล้วสลับไป Termux X11 App ควรเห็น Linux Desktop
เมื่อ Desktop โผล่ครั้งแรก
ใช้งานได้มากกว่าที่คุณนึก
ครั้งแรก XFCE โผล่ใน Termux X11 รู้สึก Native กว่าที่คิด มี Taskbar ด้านบน Whisker Menu File Manager และทุกอย่างที่คาดหวังจาก Linux รันปกติเหมือนเดิม
นี่ไม่ใช่ Streaming Hack จากเครื่องอื่น นี่คือโทรศัพท์ตัวมันเองรัน Debian Desktop การลากหน้าต่างลื่น Panel Animations ไม่สะดุด เปิด Terminal ทำงานในมันรู้สึกเหมือนบน Laptop เลย
ผมรัน Firefox Desktop Build เต็มรูปแบบบนโทรศัพท์กับ Tab หลาย Tab โดยไม่ Slowdown ถ้าเปิด htop ใน Terminal Window จะเห็นว่าโทรศัพท์ทำงานหนัก แต่ไม่ Overworked โดยเฉพาะด้วย Hardware Ceiling ต่ำที่ทำงานอยู่
ทำไมมันลื่นไหลบนโทรศัพท์ถึงขั้น ridicule
ไม่มี Virtualization ไม่มี Overhead แค่ X Server
เหตุผลที่ Linux ไม่กลายเป็น Slideshow พอเริ่มคือคุณไม่ Push Pixels ผ่าน VNC Termux X11 Draw ท้องถิ่น และ Lean บน GPU ได้ บน Snapdragon Phones เปิด Turnip Driver สำหรับ Adreno ส味着 OpenGL Workloads ถูก Accelerate แทนที่จะ Fallback ไป Software Rendering
แม้บนโทรศัพท์ Custom Processors เช่น Pixel 9a ของผมที่มี Tensor G4 SoC จาก Google Rendering ใกล้เคียง Perfect Script ไม่ Detect GPU ของโทรศัพท์ Fallback ไป Software Rendering แต่ผมไม่เจอ Performance Hiccups ใหญ่ในการทดสอบ

Termux X11
OS Android
Price model Free, Open-source
Termux X11 เป็น Companion App สำหรับ Termux ให้ Native X11 Display Server ให้รัน Linux GUI Desktops และ Apps บน Android โดยตรง ไม่ต้อง VNC
Linux บน Android มีประโยชน์จริงหรือแค่ Nerd Bait?
Linux บน Android เปิดมุมมองใหม่ของโทรศัพท์
Short Answer: ใช่ เสียบโทรศัพท์ USB-C Hub เพิ่ม Keyboard, Mouse, External Display คุณได้ Linux Machine เล็กๆ ที่ Handy ที่จุดนี้ Limited โดย Hardware Capabilities ของโทรศัพท์ ซึ่ง Admittedly ไม่ Great เท่า Desktop-grade Hardware แต่ทุกอย่างที่ทำได้บน Desktop Linux Machine ทำได้ที่นี่ มันยังเป็นเหตุผลดีที่จะเริ่มใช้ Samsung DeX ถ้าคุณมีโทรศัพท์รองรับ
เนื้อหาที่เกี่ยวข้อง
นี่ไม่แทนที่ Laptop หรือ Desktop ที่เหมาะสม และไม่ Make Sense ให้ทุกคน แต่ข้อเท็จจริงที่ Mid-range Android Phone โฮสต์ Linux Desktop เต็มรูปแบบ ลื่นพอสมควร โดยไม่ Root หรือ Custom ROM เป็นหลักฐานว่าโทรศัพท์ของคุณ Underused มาก ทุกอย่างที่ต้องการคือ Patience และ Termux Session