尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

我在Android手机运行了Tex Live

我在Android手机运行了Tex Live
📅 发布时间:2026/6/24 3:36:40

时间2026年6月22日,小米9已root运行Xelatex
ubuntu chroot版本v4.4,作者:ravindu644
SElinux permissive版本v3.1,作者:Denis Efremov(@evdenis)
系统Project Infinity X cepheus
链接https://xdaforums.com/t/eol-rom-16-cepheus-retrofit-unofficial-infinity-x-19-01-26.4772397/(内置kernels,官方没有以LKM方式(.ko)提供KernelSU,而是直接编译进内核了(Built-in模式),kernelsu-next版本v1.1.1)
使用(动态分区)OrangeFox-R12.1_0-retrofit-cepheus-20240629.img刷,第三方recovery刷入
我在营火虫官方小米9那里找到的,地址:
https://www.yhcres.top/
已备份基带

1. “先解除root身份再完整install?” → 千万不要!
在 chroot 环境里,必须用 root 身份安装。因为安装软件包需要写入 /usr/bin、/etc 等系统目录,普通用户没有权限。而且这是在 Ubuntu chroot 容器里操作,完全隔离,不会影响你小米9的主系统(类原生)。放心用 root@ubuntu:~# 这个身份直接装,别退出。

2. “ubuntu一般不用换源” → 在中国大陆,这句话是“美丽陷阱”!
默认源(archive.ubuntu.com)服务器在国外,你接下来要下载的 texlive-full 完整版有 1.5GB 左右。不换源直接装,下载速度可能只有 几十KB/s,大概率会超时断连,浪费一两个小时直接失败。

不用清华源,中科大,我在广西

中科大源(mirrors.ustc.edu.cn)是国内最老牌、最稳定的开源镜像之一,对教育网用户尤其友好,并且支持 HTTP/HTTPS/RSYNC 等多种协议。虽然地理上离广西不是最近,但国内骨干网带宽充足,速度绝对比默认的国外源快得多。

⚠️ 重要提示:下面的命令适用于 Ubuntu 24.04 (Noble)。如果你的 chroot 是其他版本(如 22.04 Jammy),需要将命令中的 noble 替换为你的版本代号(查看命令:cat /etc/os-release)。
执行root@ubuntu:~# cat /etc/os-release
得到
PRETTY_NAME="Ubuntu 24.04.4 LTS"
NAME="Ubuntu"
VERSION_ID="24.04"
VERSION="24.04.4 LTS (Noble Numbat)"
VERSION_CODENAME=noble
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=noble
LOGO=ubuntu-logo

最初Ai推荐我1. 一键替换源
命令:
sed -i.bak 's@//.*archive.ubuntu.com@//mirrors.ustc.edu.cn@g' /etc/apt/sources.list

这条命令会自动备份原文件为 sources.list.bak,并用中科大源替换默认官方源。
备份路径在/etc/apt/
你可以cd /etc/apt/
然后ls
得到
sources.list.bak和sources.list

2. 更新软件列表
apt update

这是会报错
虽然中科大的主源(mirrors.ustc.edu.cn)换好了,但你的系统里还藏着两个“龟速”的官方源:
1. ports.ubuntu.com(这是给ARM架构(骁龙855)用的官方源,默认走国外)
2. security.ubuntu.com(安全更新源,也是国外)
再加上两个PPA(launchpad.net),这些国外地址一叠加,1MB/s的网速是正常的。如果不修,接下来下载1.5GB的texlive-full,你得等25分钟以上,还容易断连。
Ai修复一下
404 Not Found 错误,是因为中科大的 ubuntu-ports 镜像暂时没有同步或缺少 Ubuntu 24.04 (noble) 的 arm64 架构软件包。
Ai修复一下
Ubuntu chroot 环境把 CPU 架构识别成了 amd64(x86_64),但小米9的骁龙855是 arm64 架构。
检查CPU架构
dpkg --print-architecture
如果输出是 amd64,就印证了问题。
🛠️ 一键修复(强制切换为 arm64)
1. 彻底重写源列表(arm64 专用)
cat > /etc/apt/sources.list <<EOF
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ noble main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ noble-updates main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ noble-backports main restricted universe multiverse
deb http://mirrors.tuna.tsinghua.edu.cn/ubuntu-ports/ noble-security main restricted universe multiverse
EOF
2.强制设置架构为 arm64
dpkg --add-architecture arm64
apt update

Tex Live xxxx,没安装,就检查 Ubuntu 软件源里能装到什么版本。
命令:
apt policy texlive-latex-base
解释:
Ubuntu 24.04 LTS (Noble) 官方源里锁定的是 TeX Live 2023。

不着急安装
APT 仍然在请求 amd64 架构的包,导致 404。虽然 dpkg --print-architecture 显示为 arm64,但 APT 还保留了额外的 amd64 架构,需要手动移除。
# 1. 查看当前 APT 支持的所有架构
dpkg --print-foreign-architectures
如果输出包含 amd64,执行:
# 2. 移除 amd64 架构
我的输出
root@ubuntu:~# dpkg --remove-architecture amd64
得到
dpkg: error: cannot remove architecture 'amd64' currently in use by the database
dpkg 数据库里还残留着 amd64 架构标记,但系统里实际上并没有安装 amd64 的包(因为是 chroot 环境)。我们可以不删除架构,而是让 APT 忽略它,只请求 arm64 的包索引。
# 1. 告诉 APT 只使用 arm64 架构
echo 'APT::Architectures "arm64";' > /etc/apt/apt.conf.d/01architecture

# 2. 清除之前的缓存,避免残留
apt clean

# 3. 重新更新(现在只会请求 arm64 的索引)
apt update

执行后,你会看到所有 Get: 地址都变成 binary-arm64/Packages,不再有任何 amd64 的 404 错误。

📦 然后放心安装 TeX Live
apt install -y texlive-full texlive-xetex biber

如果清华源仍然有问题(极小概率),直接换成阿里云源:
sed -i 's@mirrors.tuna.tsinghua.edu.cn/ubuntu-ports@mirrors.aliyun.com/ubuntu-ports@g' /etc/apt/sources.list
apt update
apt install -y texlive-full texlive-xetex biber

💡 为什么不用 dpkg --remove-architecture?
因为你的 chroot 里可能有一些元数据依赖 amd64(即便没实际装包),强行移除可能破坏包管理状态。而 修改 APT 配置 是更安全、更直接的方法,完全不影响已安装的软件。

安装安成
This may take some time...
done.
Errors were encountered while
processing:
openjdk-21-jre-headless:arm64
openjdk-21-jre:arm64
default-jre-headless
default-jre
E: Sub-process /usr/bin/dpkg returned an error code (1)
root@ubuntu:~#
这个错误是因为安装 texlive-full 时,它依赖的 openjdk-21-jre 包在 arm64 架构下安装失败(可能由于之前的架构混乱导致配置不完整)。

chroot 环境缺少 /proc 文件系统的挂载,导致 Java 包的安装脚本无法执行;但后面我是直接移除报错宏包。Java 包的配置脚本在 chroot 里死活认不出 /proc,但你又完全不需要它。别跟它较劲,直接暴力移除。
# 1. 强制删除 Java 包(不运行任何脚本)
dpkg --remove --force-remove-reinstreq --force-depends openjdk-21-jre-headless openjdk-21-jre default-jre-headless default-jre

# 2. 修复因强制删除导致的依赖残留
apt --fix-broken install

# 3. 彻底清理无用的包和配置
apt autoremove --purge

如果第一步提示找不到某些包,直接执行:
dpkg --remove --force-remove-reinstreq openjdk-21-jre-headless

# 检查几个大型宏包是否存在(完整版特有的)
kpsewhich tikz.sty
kpsewhich biblatex.sty
kpsewhich libertine.sty

希望只生成宏包和字体的清单(列表文件),而不移动或复制任何文件,并将这些清单存放在 /storage/emulated/0/termux_exclusive/ 中,同时为 AI 安装所需的系统字体。这样既节省空间,又能让 AI 通过清单“理解”你的资源位置。

# 1. 创建外部存储目录
mkdir -p /storage/emulated/0/termux_exclusive

# 2. 安装 AI 常用的系统字体(如 Noto CJK、Liberation 等)
apt install -y fonts-noto-cjk fonts-noto-cjk-extra fonts-liberation fonts-dejavu-core

# 3. 生成 TeX Live 宏包完整清单(递归列出所有文件,约几万行,可能需数秒)(不建议)
ls -lR /usr/share/texlive/texmf-dist > /storage/emulated/0/termux_exclusive/宏包清单.txt

# 4. 生成系统字体完整清单(所有字体文件)(不建议)
ls -lR /usr/share/fonts > /storage/emulated/0/termux_exclusive/字体清单.txt

# 5. 可选:生成更简洁的路径列表(只含文件名,不含权限信息)
find /usr/share/texlive/texmf-dist -type f > /storage/emulated/0/termux_exclusive/宏包路径列表.txt
(建议)
find /usr/share/fonts -type f > /storage/emulated/0/termux_exclusive/字体路径列表.txt
(建议)

现在尝试在ssh连接小米9的ubuntu的Tex Live 2023
小米9ubuntu账户
Enter username:不展示1
Enter password for ubuntu:不展示2

打开Forward Chroot Traffic(译:转发 Chroot 流量)
Forward localhost services (VNC,XRDP, SSH) from the chroot to a network interface.
This allows you to access chroot services from other devices on your network.
(译:将本地主机的服务(VNC、XRDP、SSH)从 chroot 环境转发到网络接口。
这使您能够从网络中的其他设备访问 chroot 服务。)
Network Interface(译:网络接口):选wlan0(手机网口)
选Start Forwarding(译:开始转发)
Stop Forwarding

执行
root@ubuntu:~# ifconfig wlan0 | grep inet
得到
inet 192.168.1.183 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fe80::bcd9:3bff:febe:4137 prefixlen 64 scopeid 0x20<link>
检查 SSH 状态:
执行
root@ubuntu:~# service ssh status
得到
* sshd is not running
Linux一般都有ssh功能
· 如果显示 sshd is running,直接下一步。
· 如果没运行,执行 service ssh start。
没有,运行一下ssh功能
root@ubuntu:~# service ssh start
得到
* Starting OpenBSD Secure Shell server sshd [ OK ]
检查ssh端口
root@ubuntu:~# netstat -tlnp | grep :22
22端口一般默认,于是得到
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 21016/sshd: /usr/sb tcp6 0 0 :::22 :::* LISTEN 21016/sshd: /usr/sb
进主力机Termux执行
ssh -p22 用户名(不展示1)@192.168.1.183

类原生得一直保持亮屏,否则ssh会卡

整体命令
在ubuntu的终端,sudo root身份
cd ~

创建一个名为 Xelatex_manufacture 的专用文件夹,里面放一个编译脚本,完全模拟你原来的操作习惯(自动进入目录、创建空模板、清理临时文件、调用xelatex+biber编译)。
mkdir ~/Xelatex_manufacture

创建一个手机目录存放Xelatex编译
mkdir -p /storage/emulated/0/xelatex编译

cd ~/Xelatex_manufacture

📄 第二步:创建一个空模板文件 ARGD923.tex(方便你用nano编辑)
touch ARGD923.tex
# 或者直接用 nano ARGD923.tex 写入内容

无视风险并编译,生成biber辅助文件,再执行一次编译,使用 bash 扩展通配符(最简洁)把生成好的移到手机目录,官方完整三连编
shopt -s extglob; \
/usr/bin/xelatex --interaction=nonstopmode ARGD923.tex ; \
/usr/bin/biber ARGD923 ; \
/usr/bin/xelatex --interaction=nonstopmode ARGD923.tex ; \
/usr/bin/xelatex --interaction=nonstopmode ARGD923.tex ; \
mv !(ARGD923.tex) /storage/emulated/0/xelatex编译/

后续
普通Termux终端cd到/storage/emulated/0/xelatex编译
清空文件并清理残留
> ARGD923.tex && rm -f ARGD923.{aux,log,out,toc,bbl,bcf,blg,run.xml,pdf,synctex.gz}
但一般mt文件管理就行了

相关新闻

  • 如何免费修复损坏的二维码:QRazyBox终极解决方案
  • 【PC】 桌面便签:PaperTodo 一张纸 v2.0
  • 如何快速上手STM32 NAND闪存编程器:开源硬件的完整入门指南

最新新闻

  • DCM BCM CCM三者区别详解
  • 【2027最新】基于SpringBoot+Vue的企业资产管理系统管理系统源码+MyBatis+MySQL
  • SWEET32漏洞实战:从检测到修复,构建安全的SSL/TLS加密通信
  • Python+Appium移动端自动化测试:从环境搭建到项目实战
  • LoadRunner性能测试实战:从零开始完成飞机订票系统压力测试
  • CVE-2023-27997漏洞检测工具实战指南:原理、使用与排错

日新闻

  • 终极指南:如何用shadPS4在电脑上免费畅玩PS4游戏
  • 打造个性化Instagram Clone:主题定制与用户体验优化技巧
  • 未来展望:RoseTTAFold-All-Atom的发展路线图与社区支持资源汇总

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号