有没有办法在安卓上直接运行二进制文件呢?(已 ROOT)

37 天前
 Ploter

比如说在后台自动运行 restic 进行备份文件,在通过 rsync 同步到 NAS 上。

当然,也可以通过 Syncthing 同步到 NAS 上,这我也在用,只是提供一个应用场景。

我想知道:

  1. 是否可行?重启后能否自启动。
  2. 是不是可以通过写一个 Magisk 模块来实现。(目前只会装模块,不太了解怎么写
3294 次点击
所在节点    Android
18 条回复
RightHand
37 天前
可以先用 adb 直接跑
hrdom
37 天前
”有没有办法在安卓上直接运行二进制文件“ 有办法,不过这个二进制文件编译时要配置好安卓的 c 库
BeautifulSoap
37 天前
termux 不就是干这个的
gam2046
37 天前
1 & 2:可以

与手动运行方式无异。程序得先通过 NDK 交叉编译到 Android ,如果直接通过 ARM 编译器静态编译,最终会出现域名无法解析的情况。
EvineDeng
37 天前
termux 你值得拥有,在里面直接安装 restic, rsync, syncthing 都可以。

如果需要开机自启,除了在手机中相关设置项中设置好外,termux 中还需要安装借助 cronie 来跑自动任务,借助 termux-service 这个包来创建自动启动任务。
Ploter
37 天前
@hrdom
@gam2046
好的,就是所有二进制文件都要自己通过源码加安卓 NDK 编译一次对吗,我去了解下。

@RightHand
@BeautifulSoap
我想问下,这样能保持在后台吗,开机能自启动吗,我不太了解
Ploter
37 天前
@EvineDeng wow ,我去看看 termux
Ploter
37 天前
@EvineDeng 我想问下,可以通过 SSH 到 termux 进行操作吗?在手机上敲命令行太痛苦了
Ploter
37 天前
@EvineDeng 在官方 Wiki 找到了
EvineDeng
37 天前
@Ploter #9 手动开就是运行 sshd ,自动开就安装 termux-service ,然后启用 sshd 的 service 。
EvineDeng
37 天前
@Ploter #9 国光的 termux 教程可以重点参考一下: https://www.sqlsec.com/2018/05/termux.html
holoto
37 天前
安装 Termux 然后通过 https://github.com/ochinchina/supervisord 挂一个 ttyd 后台。然后可以网页访问 ssh 了。静态文件服务器可以用 dufs
Magisk 模块可以设置自启动的。去 Magisk 模块目录修改下已经安装的 Magisk 模块。改启动 sh 文件 挂个 supervisord 后台就行
liujl
37 天前
@holoto 很感兴趣,ttyd 具体怎么做?
iceheart
37 天前
我以前玩过,13 年用一个很便宜的平板 root 了,改启动脚本,电源模式设为关屏,不断网,不休眠。从 linux deploy 里取出启动容器的脚本,启动时自动运行。这样就用安卓的 linux 内核跑了个 ubuntu 。
yolee599
37 天前
使用 NDK 编译就行了,编译出来的二进制文件可以用命令行执行
Ploter
37 天前
@EvineDeng #10 Termux: Boot 是不是只在系统启动时发挥作用而不是应用启动时,这样好奇怪啊
Ploter
37 天前
@Ploter #16 明白了,要用 termux-service 才是创建系统服务。Boot 主要是开机启动。
rev1si0n
35 天前
答案是可以的,即使不 root 也可以,区别大概只是权限问题

1. 用 termux ,有 termux boot 插件可以实现自启动
2. 本人开发的 https://github.com/firerpa/lamda 支持 magisk 模块自启动,可以远程连接操作,并且内置 shell 支持 rsync 命令以及 crontab 规则实现定期备份。
3. 如果命令还不够你折腾的,可以安装扩展插件实现内置小型的 debian 环境,可以 apt 安装大部分软件或者自行编译。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1088596

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX