安卓手机使用termux安装chroot debian系统

参考文章:

https://ivonblog.com/posts/termux-chroot-ubuntu/

https://github.com/LinuxDroidMaster/Termux-Desktops/blob/main/Documentation/chroot/debian_chroot.md

本文章基于以上文章所写,并作出了一些修改优化,如有更好的建议,欢迎评论补充

  • 默认挂载手机 “/sdcard/Download” 目录到Debian “/android” 目录
  • 安装了virglrenderer硬件加速👉使用方法
  • 其它

前提:magisk、良好的网络环境

测试设备:小米平板5-MIUI12

一、安装busybox Termux Termux X11

1.magisk刷入busybox模块

2.安装Termux

3.安装Termux X11

二、安装环境

打开Termux,复制以下代码到Termux中,回车,过程中提示是否同意,输入y按回车

如果没有魔法可以换源:Termux更换软件源(清华源)

pkg update
pkg upgrade
pkg install x11-repo
pkg install root-repo
pkg install sudo
pkg install termux-x11-nightly
pkg install pulseaudio
pkg install virglrenderer-android
pkg install wget

三、部署debian

1.在 /data/local/tmp 为 chroot 环境创建目录(需要同意root权限)

sudo mkdir /data/local/tmp/chrootDebian
cd /data/local/tmp/chrootDebian

2.下载debian12

sudo wget https://github.com/awsdxjh/blog_md/releases/download/debian12/debian-bookworm_arm64-rootfs.tar.xz

如果下载失败,复制后面的链接手动下载,并将压缩包复制到/data/local/tmp/chrootDebian

3.解压debian12-arm64.tar.gz并创建一些文件夹来挂载 SD 卡

sudo tar xpvf debian-bookworm_arm64-rootfs.tar.xz --numeric-owner

sudo mkdir android
sudo mkdir dev/shm

4.输入su回车

su

5.创建并编辑启动脚本

cd ../
vi start_debian.sh

复制并粘贴以下内容到start_debian.sh并保存:

#!/bin/sh

# debian系统目录
DEBIANPATH="/data/local/tmp/chrootDebian"

# Fix setuid issue
busybox mount -o remount,dev,suid /data

busybox mount --bind /dev $DEBIANPATH/dev
busybox mount --bind /sys $DEBIANPATH/sys
busybox mount --bind /proc $DEBIANPATH/proc
busybox mount -t devpts devpts $DEBIANPATH/dev/pts

# /dev/shm for Electron apps
su -c "mkdir $DEBIANPATH/dev/shm"
busybox mount -t tmpfs -o size=256M tmpfs $DEBIANPATH/dev/shm

# 挂载手机 /sdcard/Download 到 Debian /android
su -c "mkdir $DEBIANPATH/android"
busybox mount --bind /sdcard/Download $DEBIANPATH/android

# chroot into DEBIAN
busybox chroot $DEBIANPATH /bin/su - root

6.使脚本可执行并运行它

chmod +x start_debian.sh
sh start_debian.sh

7.粘贴以下内容,修正 DNS 和新增本机名称、安装常用工具

sudo rm /etc/resolv.conf
echo "nameserver 8.8.8.8" > /etc/resolv.conf
echo "127.0.0.1 localhost" > /etc/hosts

groupadd -g 3003 aid_inet
groupadd -g 3004 aid_net_raw
groupadd -g 1003 aid_graphics
usermod -g 3003 -G 3003,3004 -a _apt
usermod -G 3003 -a root

apt update
apt upgrade

apt install nano vim net-tools sudo git xfce4-terminal dbus-x11 fonts-noto-cjk

8.设置root用户密码

passwd root

9.创建一个名为 droidmaster 的新用户(或您喜欢的名称)

groupadd storage
groupadd wheel
useradd -m -g users -G wheel,audio,video,storage,aid_inet -s /bin/bash droidmaster
passwd droidmaster

10.将创建的用户添加到 sudoers 文件以具有超级用户权限:

nano /etc/sudoers

11.在root ALL=(ALL:ALL) ALL下一行添加(droidmaster为您的用户名):

droidmaster ALL=(ALL:ALL) ALL

12.切换到droidmaster用户(您的用户名)

su droidmaster

13.切换时区,执行后会弹出界面,选择 Asia→ Shanghai

sudo dpkg-reconfigure tzdata

四、安装桌面XFCE4

1.安装桌面环境XFCE4

sudo apt install xfce4

2.输入并执行exit退出用户

exit

​ 再次执行exit退出debian

exit

3.修改在步骤 第三步 5 中创建的 start_debian.sh 脚本

vi /data/local/tmp/start_debian.sh

​ 将最后一行 busybox chroot $DEBIANPATH /bin/su - root 更改为以下行:

busybox chroot $DEBIANPATH /bin/su - droidmaster -c 'export DISPLAY=:0 && export PULSE_SERVER=127.0.0.1 && dbus-launch --exit-with-session startxfce4'

(如果您的用户名不是droidmaster,记得将它修改成您的用户名)

4.设置一键启动

/data/local/tmp目录创建并编辑start_x11_debian.sh文件

vi /data/local/tmp/start_x11_debian.sh

​ 将以下代码复制到start_x11_debian.sh中,并保存

#!/bin/bash

# Kill all old prcoesses
killall -9 termux-x11 Xwayland pulseaudio virgl_test_server_android termux-wake-lock

## Start Termux X11
am start --user 0 -n com.termux.x11/com.termux.x11.MainActivity

su -c "busybox mount --bind $PREFIX/tmp /data/local/tmp/chrootDebian/tmp"
su -c "chmod 777 /data/local/tmp/chrootDebian/tmp"

XDG_RUNTIME_DIR=${TMPDIR} termux-x11 :0 -ac &

sleep 3

# Start Pulse Audio of Termux
pulseaudio --start --load="module-native-protocol-tcp auth-ip-	acl=127.0.0.1 auth-anonymous=1" --exit-idle-time=-1
pacmd load-module module-native-protocol-tcp auth-ip-acl=127.0.0.1 auth-anonymous=1

# Start virgl server
virgl_test_server_android &

# Execute chroot Ubuntu script
su -c "sh /data/local/tmp/start_debian.sh"

5.给start_x11_debian.sh文件执行权限

chmod +x start_x11_debian.sh

6.退出termux,清空后台,再次打开termux,执行命令(不要使用su执行)

sh /data/local/tmp/start_x11_debian.sh

​ 执行后会自动打开Termux X11,稍等会显示debian桌面

7.打开终端,安装 locales 套件并切换中文

sudo apt install locales
sudo dpkg-reconfigure locales

​ 执行完会弹出界面,上下箭头选择语言,空格选中,选中en_US.UTF-8zh_CN.UTF-8回车,再选中zh_CN.UTF-8回车

8.设置窗口缩放

​ 如果桌面界面太小,选择左上角所有应用程序-设置-外观-设置-窗口缩放-2x

​ 注销重新登录

结束


安卓手机使用termux安装chroot debian系统
https://blog.w6wg.cn/9.html
作者
爱忘事的小家伙
发布于
2025年8月7日
许可协议