zoukankan      html  css  js  c++  java
  • (转)在Linux里设置用户环境变量的方法

    背景:在linux下,root用户安装完jdk后,非root用户不能使用java环境变量。

    问题排查:

    通过在root和非root用户下分别执行echo $PATH 可以观察环境变量的异同。然后将需要的环境变量加入到非root用户中

    1 介绍

    在 linux 里设置环境变量的方法 ( export PATH )
    如果使用源码包安装的软件,在安装完成后一般情况下要设置该软件命令执行的路径,那就是 PATH 变量。如何来设置 PAHT变量呢?我们又三种方法实现
    例如:压力测试工具sysbench的命令目录为:/usr/local/sysbench/bin,想要将sysbench工具加入到系统环境变量里,使在root用户下,可以直接执行sysbench命令。

    1.1直接使用 export 命令

    # echo $PATH
    /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

    # export PATH=$PATH:/usr/local/sysbench/bin

    # echo $PATH
    /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/sysbench/bin

    注意: 直接使用 export 设置的变量都是临时变量,也就是说退出当前的 shell ,为该变量定义的值便不会生效了。如何能让我们定义的变量永久生效呢?那就看我们的第二种定义的方式
    ps:临时的变量 不推荐

    1.2 修改 /etc/profile

    # echo $PATH
    /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

    # vi /etc/profile
    export PATH=$PATH:/usr/local/sysbench/bin  # 在配置文件中加入此行配置
    需要注意的是:修改完这个文件必须要使用 以下命令在不用重启系统的情况下使修改的内容生效
    # source /etc/profile
    或者是:
    # . /etc/profile
     
    # echo $PATH
    /usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/sysbench/bin
    # 配置已经生效

    注意:修改 /etc/profile下虽然可以使环境变量永久生效,但在系统重启时,可能不再读取/etc/profile文件中的内容,需要在执行 "source /etc/profile"之后才能使环境变量生效;

    为了避免重启后环境变量不生效的问题,也可以在/etc/profile.d/目录下简历一个path.sh的文件,将export命令写入其中,这样每次系统重启时,都会自动读取文件内容,使环境变量生效。

    1.3修改 .bashrc 文件是在当前用户 shell 下生效

    # vi /root/.bashrc 在里面加入:
    export PATH=$PATH:/usr/local/mysql/bin
    修改这个文件之后同样也需要使用 source 或者是 . 使配置文件生效。
    再来使用 echo $PATH看下变量是否生效

    # echo $PATH

    以上是将一个工具命令加入到root用户下的环境变量中,对于非root用户,一般采用第二种方法,在进行 su - 命令切换时,自动读取 ~/bash_profile文件中的环境变量内容,就可以直接使用相关工具的命令了。

  • 相关阅读:
    JDK JRE Java虚拟机的关系
    apache和tomcat区别
    JBoss Web和 Tomcat的区别
    SOAP 与 restful service区别
    IntelliJ Idea 常用快捷键列表
    Win7用户文件夹转移
    相同IP和Mac地址的问题
    WebDriver 浅析
    Web UI 自动化测试
    python中xlrd模块的使用
  • 原文地址:https://www.cnblogs.com/lixuwu/p/7123370.html
Copyright © 2011-2022 走看看