termux 设置PATH环境变量

问题描述

在使用termux时,使用命令发现权限不够,用 su 切换到root 之后发现之前的很多命令用不了

先 echo $PATH 查看root的 环境变量

结果:/sbin/su:/su/bin:/su/xbin:/system/bin:/system/xbin

发现这三个全是根路径下的,没有/data/data/com.termux/files/usr/bin,自然执行不了这儿的命令

exit 切换到普通用户。

echo $PATH 查看环境变量

值为:/data/data/com.termux/files/usr/bin:/data/data/com.termux/files/usr/bin/applets

也就是说只需要将普通用户的变量告诉root就行了

以下为解决方案-------------------------------------------------------------------------------------------

为了确保系统安全,采用临时变量,省的出现错误

export PATH=/data/data/com.termux/files/usr/bin:/data/data/com.termux/files/usr/bin/applets:$PATH

(告诉root可执行文件

注意等号旁边没有空格,英文的冒号:分割,前面那部分是普通用户的 PATH 值:普通用户的lib路径(因为有的命令还需要我们下载的库文件呀),贴过去就好了

export LD_LIBRARY_PATH=/data/data/com.termux/files/usr/lib

(连接lib)

注意!!为了安全,我贴出来得操作是暂时性的,exit会原来的身份 或者 关掉重开 等都会导致还原,但这样绝对安全嘛。

为了大家的方便,可以创建一个脚本快速来使用已经下载的功能。

cd ~ (回到家目录)

vim getMyTermuxOrders (创建一个文件)

输入以下内容:

#!/bin/bash
export PATH=/data/data/com.termux/files/usr/bin:/data/data/com.termux/files/usr/bin/applets:$PATH
export LD_LIBRARY_PATH=/data/data/com.termux/files/usr/lib
echo "LYM_nb" #由此检测配置是否执行

:wq保存退出

然后exit回到原来的用户

以后再次想使用root权限的时候:

su 或者 tsu 来到root身份

直接在家目录运行source命令即可

source getMyTermuxOrders

如果输出LYM_nb则为已获取termux所有bin功能

也可以使用export、echo $PATH、env等命令确认

 

你可能感兴趣的:(Android,解决方案,termux,su,root,无法使用用户的命令,无法使用termux命令)