最近手机重置了,Termux 也得重新装,所有配置都得从头弄。说实话,在 Termux 客户端里用微信输入法敲命令确实别扭,我还是习惯用 JuiceSSH 来连——它会调起密码键盘,输命令顺畅多了。
索性写篇文章当备忘录,主要是不想下次重装或者在其他设备上配置时,又得四处找教程。统一存在这里,到时候直接上来 copy 步骤就行
在 Termux 中安装并启用 OpenSSH 服务,可以方便地在其他设备上远程连接并进行操作。以下是详细步骤:
安装 SSH 和远程登录 1. 安装 OpenSSH 执行以下命令安装:
2. 查询用户名 获取用于 SSH 登录的用户名:
输出示例 :
3. 设置登录密码 为当前用户设置 SSH 登录密码:
注意: 需要输入两次密码(设置和确认),两次输入必须一致。
输出示例 :
1 2 3 New password: Retype new password: New password was successfully set .
4. 启动 SSH 服务
5. 远程连接 确保远程设备与手机处于同一局域网且网络互通 ,在远程设备上执行:
1 ssh [你的用户名]@[手机IP地址] -p 8022
输入步骤 3 设置的密码即可成功连接。
连接成功示例 :
1 2 3 4 $ ssh u0_a123@192.168.1.100 -p 8022 u0_a123@192.168.1.100's password: Welcome to Termux! $
设置 Termux 启动时自动运行 SSH 1. 创建状态检查脚本 创建并编辑脚本文件.start_sshd.sh:
粘贴以下内容:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 #!/bin/bash echo "═══════════════════════════════════════" echo "用户: $(whoami) " echo "SSH端口: 8022" echo "═══════════════════════════════════════" check_sshd () { if pgrep -x "sshd" >/dev/null; then echo -e "🔵 sshd状态: \033[32m运行中 (PID: $(pgrep -x "sshd" ) )\033[0m" return 0 else echo -e "🟡 sshd状态: \033[33m未运行\033[0m" return 1 fi }if ! check_sshd; then echo -n "▶ 尝试启动sshd..." if sshd >/dev/null 2>&1; then sleep 1 if check_sshd; then echo -e "\033[32m 成功\033[0m" else echo -e "\033[31m 失败 (可能端口冲突或权限问题)\033[0m" fi else echo -e "\033[31m 启动命令执行失败\033[0m" fi fi
保存退出 (Ctrl+O → 回车 → Ctrl+X),并赋予执行权限:
1 chmod +x ~/.start_sshd.sh
2. 配置开机自启 编辑 Termux 的启动配置文件:
在文件末尾添加:
保存退出,并赋予执行权限:
3. 验证效果 重启 Termux 应用后,系统将自动执行脚本,检查并启动 SSH 服务。
启动后输出示例 :
1 2 3 4 5 6 7 ═══════════════════════════════════════ 用户: u0_a123 SSH端口: 8022 ═══════════════════════════════════════ 🟡 sshd状态: 未运行 ▶ 尝试启动sshd... 成功 🔵 sshd状态: 运行中 (PID: 12345)
当SSH已运行时输出示例 :
1 2 3 4 5 ═══════════════════════════════════════ 用户: u0_a123 SSH端口: 8022 ═══════════════════════════════════════ 🔵 sshd状态: 运行中 (PID: 12345)