V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
Devin
V2EX  ›  Android

安卓手机是否可以作为一台 Linux 主机使用?

  •  1
     
  •   Devin · Dec 27, 2020 via Android · 22020 views
    This topic created in 1954 days ago, the information mentioned may be changed or developed.
    旧手机性能不比树莓派差,可以用来跑一些 Linux 小服务之类的
    49 replies    2020-12-28 21:55:14 +08:00
    GlobalNPC
        1
    GlobalNPC  
       Dec 27, 2020   ❤️ 1
    基于 Termux 有好几种安装 Linux 方案
    GlobalNPC
        2
    GlobalNPC  
       Dec 27, 2020   ❤️ 9
    auin
        3
    auin  
       Dec 27, 2020   ❤️ 1
    楼上说了 Termux,正好推荐个 B 站的视频:BV174411d7Hr
    eason1874
        4
    eason1874  
       Dec 27, 2020   ❤️ 2
    怕是有兼容性问题,要是我,可能的话就当二手机卖掉,换树莓派。
    cs8425
        5
    cs8425  
       Dec 27, 2020   ❤️ 1
    喜欢折腾的话还行
    有 root 比较方便
    需要动到内核的通常都不能用
    设定开机自启动服务比较麻烦
    可能有些坑要自己想法解决
    之前有 node.js 的磁碟 IO 巨慢的问题
    不知修正没
    所以我后来只拿来跑 go 写的小东西(简单的 web, 远端操作手机)
    wangbenjun5
        6
    wangbenjun5  
       Dec 27, 2020
    没啥意义,不用 root 也能跑,你下个终端 APP 就可以执行 shell 命令,用 go 写的应用编译成 arm 的直接可以跑,图啥呢,云主机又不是很贵
    Kasumi20
        7
    Kasumi20  
       Dec 27, 2020
    就算可以安装原生 Linux 系统, 不能插网线, 如何连接是个问题
    Atomo
        8
    Atomo  
       Dec 27, 2020   ❤️ 1
    @Kasumi20 #7 网线是可以的使用的,如果手机是 type 口的,买一个 type-c 的 Rj45 扩展坞,即插即用
    dotiean
        9
    dotiean  
       Dec 27, 2020 via iPhone
    安静 吵到我用 tnt 了?
    leighton
        10
    leighton  
       Dec 27, 2020
    termux chroot 安装其他发行版,再加上 android 自带的 desktop mode 或者 Samsung dex,连接任意 type c 显示器应该可以当个 linux 主机用了
    debuggerx
        11
    debuggerx  
       Dec 27, 2020   ❤️ 1
    除了大家熟悉的 Termux,再推荐一下国产的 AID learning,试试就知道,很强大,我通过 ssh -x 在手机上跑 pycharm 竟然都非常流畅,还能直接执行用 pyqt5 写的软件
    zengming00
        12
    zengming00  
       Dec 27, 2020
    我的旧手机是用 linuxdeploy 搞的一个图形化系统,用 vnc 连接进去,主要需要解决下面这些问题:
    1. vnc 连接时鼠标显示为 x:编辑 xstartup 文件
    2. 解决图形界面下中文乱码:安装中文字体
    3. 安装中文输入法
    4. 安装 arm 版本 vscode (不推荐,因为 headmelted 版本在 linuxdeploy 下并不好用,可以用谷歌浏览器和 code-server 代替)

    另外,安装系统时,sdcard 文件系统可能不支持大文件,最好的办法是直接使用 /data/里面的文件夹

    折腾好之后,是可以当成开发机使用的,我有一段时间需要开发 arm 版本的 l 程序就是在这个手机上完成的

    不足之处就是很多软件安装起来非常折腾
    love
        13
    love  
       Dec 27, 2020
    电源是个麻烦,总不能 24 小时充电吧,怕烧了
    手机拿掉电池只接 USB 启动不了的吧?
    zackkk
        14
    zackkk  
       Dec 27, 2020
    @love 手机拿掉电池只接 usb,可以的。
    AmrtaShiva
        15
    AmrtaShiva  
       Dec 27, 2020 via iPhone
    @love HTC 一直充电好几个月了不拔下来
    fox0001
        16
    fox0001  
       Dec 27, 2020 via Android
    @zackkk #14 不是每个手机都可以这样玩
    fox0001
        17
    fox0001  
       Dec 27, 2020 via Android
    楼主,可以做,并不代表能做好…玩下,开心过就算了
    zhhww57
        18
    zhhww57  
       Dec 27, 2020
    终于有人提这个方案了,android 做 linux 主机,需要解决的问题,就是一边充电一边 otg 的问题,最好找个支持 pd 协议的,然后咸鱼收分线器,我归纳下:
    1 、支持一边 otg 一边充电,(方法包括但是不限于:无线充电,pd 充电等各种方法)
    2 、接口最好是 usb3.0 的,或者 usb3.1 的,otg 的时候可以接 hub,千兆网卡等
    zhhww57
        19
    zhhww57  
       Dec 27, 2020
    3 、完整功能的 USB TYPE-C 支持三个东西,是同时进行的,usb3.0,hdmi 输出,充电
    4 、这个时候需要给你的手机安一个 ssh,我记得 magisk 有个插件,不过是通过 ssh key 实现的,只要装了就可以自己生成 ssh key,这样通过 wifi 可以随时 ssh 上去,一开机就启用的那种,权限是 root
    zhhww57
        20
    zhhww57  
       Dec 27, 2020
    5 、也可以弄个原生 linux,弄 android 手机 linux 内核的源码,自己搞个版本出来,比如 debian 啥的,只要兼容供电+usb,基本问题不大,充电方面的话,可以这样安排,电量低于百分之二十开始充电,然后高于百分之八十停止充电,规则自己设定,反正长时间百分百充着我感觉并不好,或者电力百分之八十停止,百分之七十开始充电,需要写个守护进程进去负责这一块
    zhhww57
        21
    zhhww57  
       Dec 27, 2020
    之前就研究手机作 linux 系统,我发现最大的阻碍反倒是,边充电,边接 usb 分线器的问题,不能啥都走 wifi 和蓝牙啊。。。。。,把手机拆开,魔改添加 dc 口啥的。。。。感觉有点失去便携性了。。。。emm 。。。。
    systemcall
        22
    systemcall  
       Dec 27, 2020
    @Kasumi20 #7
    OTG 接个 USB 网卡就好了。试了一下好多手机都是支持的,哪怕是 MicroUSB 的也没有影响,只要支持 OTG 并且系统里面有对应的驱动
    供电的话,试过一些设备。直接在 OTG 模式的情况下给 Vbus 加上 5V 的供电,是可以对其供电的,不过不排除一些设备不能够这样
    zhhww57
        23
    zhhww57  
       Dec 27, 2020
    有了完整 type-c 的话,可以外接个 4k 显示器,运行个 debian,分出两三个 usb3.0,然后外界充电
    zhhww57
        24
    zhhww57  
       Dec 27, 2020
    pd 充电宝给便携式显示器供电,然后再给手机供电,手机再分出 usb3.0,手机再接便携式显示器,系统移植一个 ubuntu arm 版本,接个鼠标键盘,然后 3d 打印一个外壳,妥妥的笔记本啊。电池就是充电宝
    systemcall
        25
    systemcall  
       Dec 27, 2020
    可以。如果是老点的手机,root 之后 chroot 跑 Linux,就可以了
    如果是新点的手机,装个 Termux,再装个 tmoe,用 tmoe 装 Linux 就可以了
    图形界面不一定要在本机上显示,甚至不一定需要图形界面。图形界面可以用 noVNC 来解决
    上面说到了 AID Learning,感觉软件可以,就是要的权限太多了,而且很大。总感觉里面不干净
    安卓的磁盘 I/O 性能真的烂。用过就知道了。这几年头一次见到写入一个比较大的文件可以把整个系统卡死的,挂 bt 都难
    zhhww57
        26
    zhhww57  
       Dec 27, 2020
    手机存储不够也不要怕,外界个硬盘盒,usb3.0 外接硬盘壳,接 sata 的 ssd,比如接个 1t 的,然后做个槽,rec 下再做个开机选单,手机放进去,启动到 rec 选择你自己的模式,秒变笔记本。linux 系统的
    zhhww57
        27
    zhhww57  
       Dec 27, 2020
    @systemcall 要是能 root 的话,可以试试看关掉 userdata 分区加密,然后分区改 f2fs,弄个内核模块,我以前的老小米 5,我这样干过,要是实在压不住,可以考虑外接移动硬盘组个 raid0 和内置存储
    zhhww57
        28
    zhhww57  
       Dec 27, 2020
    内存大的话,可以牺牲 1G 的内存作为硬盘缓存,用来加速的
    @systemcall
    FurN1
        29
    FurN1  
       Dec 28, 2020
    @zhhww57 是的,otg 是正确方法!
    kwanzaa
        30
    kwanzaa  
       Dec 28, 2020
    可以,之前外出的时候拿手机工作过。
    蓝牙键盘+ipad ssh 在 Termux 上直接开干。
    yfwl
        31
    yfwl  
       Dec 28, 2020
    可以,自己 DD 就行了
    nguoidiqua
        32
    nguoidiqua  
       Dec 28, 2020 via Android
    其实有个 postmarketOS,直接把手机刷成 Linux,而非 chroot proot 什么的,基于 Alpine,用起来和一般 Linux 发行版差不多了。

    不过刷起来不是那么简便,可能需要自己编译对应手机 ROM 。

    另外还有个 MaruOS,是在 LineageOS 的基础上通过容器提供了一个 Linux 环境( Debian ),插上显示器就会显示 Linux 桌面( Xfce )。不过支持的设备就几款,除此之外的也需要自己去编译。
    ma2553047
        33
    ma2553047  
       Dec 28, 2020 via Android
    为啥不考虑国产的电视盒子
    cwyalpha
        34
    cwyalpha  
       Dec 28, 2020 via iPhone
    @infun 这个教程太丧心病狂了
    dingwen07
        35
    dingwen07  
       Dec 28, 2020 via Android
    Z1on
        36
    Z1on  
       Dec 28, 2020 via Android
    @love 可以用 AccA 控制开始和结束充电的范围(需要 root )
    ligiggy
        37
    ligiggy  
       Dec 28, 2020
    @dotiean 哈哈哈,这个梗放到这里就很搞笑……
    zengming00
        38
    zengming00  
       Dec 28, 2020
    正规厂家的手机和充电器是可以 7x24 小时充电的,如果担心有问题那干脆直接把电池拆了接个 4.2v 电源
    darknoll
        39
    darknoll  
       Dec 28, 2020
    电池爆炸
    evilcoming
        40
    evilcoming  
       Dec 28, 2020
    可以用,就怕电池爆炸
    raptor
        41
    raptor  
       Dec 28, 2020
    不建议折腾。装原生 LINUX 面临驱动问题,直接在 android 上弄其实并不好用
    LiYanHong
        42
    LiYanHong  
       Dec 28, 2020
    电信 4g 有公网,流量需求不大的话,用起来还是挺方便的
    knightdf
        43
    knightdf  
       Dec 28, 2020
    树莓派不香?
    julyclyde
        44
    julyclyde  
       Dec 28, 2020
    @zhhww57 USB-C 的视频信号是 DP 的,不是 HDMI 的
    jigong1234
        45
    jigong1234  
       Dec 28, 2020
    可以但是没必要,太折腾了
    mylara
        46
    mylara  
       Dec 28, 2020
    @dotiean 哈哈哈哈哈哈
    Lemeng
        47
    Lemeng  
       Dec 28, 2020
    玩玩就好了
    cache
        48
    cache  
       Dec 28, 2020
    zhhww57
        49
    zhhww57  
       Dec 28, 2020
    @julyclyde 这个知道的,其实说的时候我就知道,不过感谢指正,其实确实是 dp 信号,不过不少卖转接器的厂家,是加装了芯片,把 dp 转成 hdmi 的,之前闲鱼有不少走私(怀疑)的 type-c 一分三,特别便宜 30-40 元就可以买到,是分别转成:1 、usb pd 充电 2 、usb 3.0 3 、hdmi 接口 ,后来查询资料知道,这个 hdmi 接口是用芯片把 dp 信号转成 hdmi 的
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   754 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 99ms · UTC 21:10 · PVG 05:10 · LAX 14:10 · JFK 17:10
    ♥ Do have faith in what you're doing.