欢迎光临散文网 会员登陆 & 注册

Termux 上装 GNU/Linux 报错“Error: /proc must be mounted”

2023-05-12 21:55 作者:做宗的Xihi  | 我要投稿

问题

我最近在做一个名叫 Xtilo(https://github.com/Xihihhh/xtilo)的程序,它是 Atilo(https://github.com/YadominJinta/atilo)的改版,可以在 Termux 上装 GNU/Linux。测试系统时发现一个问题,使用 ps 时报错:

在网上(https://blog.csdn.net/weixin_45853881/article/details/127450301)只找到一个办法,就是把系统中的 ps 二进制文件替换为 toybox,可是这样显示的进程有点别扭,会显示属于Termux 的进程,且700多K的 toybox 只用一个 ps,其他 procps 工具也用不了,所以自己找办法

解决办法

查看 Termux 官方的 proot-distro,发现官方的解决办法是伪造 /proc 下的文件(locdavg,stat,uptime,version,stat),要在启动命令里挂载伪造的文件,所以只要在任意 Termux 的目录创建 uptime 文件,启动命令中间加一句

即可使用 procps

当然,如果你不嫌麻烦,也可以伪造其他文件,完整文件内容:

loadavg:

stat:

uptime:

version(可自定义):

vmstat:

关于Xtilo,你可能要问:“为什么不直接用官方的proot-disro?”我的本意是让安卓5、6的旧手机无Root用上Linux,安卓5、6可用不了那个脚本,所以我自己拿大佬的脚本来改

Termux 上装 GNU/Linux 报错“Error: /proc must be mounted”的评论 (共 条)

分享到微博请遵守国家法律