问题描述:

[XX@XX~]$ su - root

口令: 
[XX@XX:]~# gedit /etc/profile
Command 'gedit' is available in '/usr/bin/gedit'
The command could not be located because '/usr/bin' is not included in the PATH environment variable.
-su: gedit:找不到命令

问题分析及解决办法:

这主要是路径问题,先查看$PATH变量的设置。
命令为:echo $PATH
里面的格式是xxx:xxx:xxx:xxx
这应该没包含/usr/bin这个路径。

经过查阅资料发现以下几种方法可以解决上述问题

1.直接修改PATH值

  export PATH=/usr/bin/:$PATH   #将目标路径加入PATH

  echo $PATH  #查看是否添加成功

生效方法:立即生效   

有效期限:临时改变,shell关闭后则恢复原PATH设置

用户局限:仅对当前登录用户有效

2.通过修改 .bashrc 文件(隐藏文件)


   echo $PATH

   vi .bashrc  #打开 .bashrc文件后在最后一行加上         

   export PATH=$PATH:/xxx/xxx

生效方法:1.关闭当前shell,再打开即生效

                2.输入 source.bashrc   命令立即生效

有效期限:永久有效

用户局限:只限当前用户

3.修改profile 文件(在/etc目录下)

    vi /etc/profile

    在左后一行添加上 export PATH=$PATH:/xxx/xxx

生效方法:系统重启

有效期限:永久用户有效

用户局限:所有用户可用


4.修改  environment (在 /etc 目录下)


    vi /etc/environment

    在PATH=/....中添加":/xxx/xxx"

生效方法:系统重启

有效期限:永久

用户局限:所有用户可用