linux环境变量设置方法总结(PATH/LD_LIBRARY_PATH)

本文详细介绍了如何设置和修改PATH及LD_LIBRARY_PATH环境变量,包括临时设置和持久化配置的方法,并解释了不同设置方式的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

PATH:  可执行程序的查找路径
查看当前环境变量:
echo $PATH
设置: 
方法一:export PATH=PATH:/XXX 但是登出后就失效
方法二:修改~/.bashrc或~/.bash_profile或系统级别的/etc/profile
        1. 在其中添加例如export PATH=/opt/ActivePython-2.7/bin:$PATH
        2. source .bashrc  (Source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录)
LD_LIBRARY_PATH: 动态库的查找路径
设置:
方法一: export  LD_LIBRARY_PATH=LD_LIBRARY_PATH:/XXX 但是登出后就失效
方法二: 修改~/.bashrc或~/.bash_profile或系统级别的/etc/profile
         1. 在其中添加例如export PATH=/opt/ActiveP/lib:$LD_LIBRARY_PATH
         2. source .bashrc  (Source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录)
方法三:这个没有修改LD_LIBRARY_PATH但是效果是一样的实现动态库的查找, 
         1. /etc/ld.so.conf下面加一行/usr/local/mysql/lib
         2. 保存过后ldconfig一下(ldconfig 命令的用途,主要是在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如前介绍,lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件.缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表.)
        方法三设置稍微麻烦,好处是比较不受用户的限制。
例如:
对于用户production的LD_LIBRARY_PATH进行分析如下:
1、 production@Africa :~> echo $LD_LIBRARY_PATH
/home/production/cpst/cptools/lib:/home/production/cpst/campost/lib:/home/production/tuxedo/lib:/home/production/tuxedo/jre/lib/amd64/server:/home/production/tuxedo/jre/jre/bin:/usr/lib:/usr/lib64:/lib:/lib64:/usr/local/lib:/usr/local/lib64:/oracle/product/11gR2/db/lib:/oracle/product/11gR2/db/ctx/lib
2、查看.profile:
.profile中有: . ~/cpst/campost/config/setenv,说明用户启动是运行脚本setenv。
3、setenv中有:
export CAMPOST_HOME=$HOME/cpst/campost
export CPTOOLS_ROOT=$HOME/cpst/cptools
export LD_LIBRARY_PATH=$CPTOOLS_ROOT/lib:$CAMPOST_HOME/lib:$LD_LIBRARY_PATH
4、setenv中有$LD_LIBRARY_PATH,进root查看:
(1)Africa:~ # echo $LD_LIBRARY_PATH
/usr/lib:/usr/lib64:/lib:/lib64:/usr/local/lib:/usr/local/lib64:/oracle/product/11gR2/db/lib:/oracle/product/11gR2/db/ctx/lib
(2)etc/profile中有:
export LD_LIBRARY_PATH=/usr/lib:/usr/lib64:/lib:/lib64:/usr/local/lib:/usr/local/lib64:$LD_LIBRARY_PATH
(3)/etc/profile.d/oracle.sh中有:
LD_LIBRARY_PATH=${LD_LIBRARY_PATH:+$LD_LIBRARY_PATH:}$ORACLE_HOME/lib:$ORACLE_HOME/ctx/lib

-----------------------------------------------------------------------------------------------------------------------

 “/bin”、“/sbin”、“/usr/bin”、“/usr/sbin”、“/usr/local/bin”等路径已经在系统环境变量中了,如果可执行文件在这几个标准位置,在终端命令行输入该软件可执行文件的文件名和参数(如果需要参数),回车即可。

  如果不在标准位置,文件名前面需要加上完整的路径。不过每次都这样跑就太麻烦了,一个“一劳永逸”的办法是把这个路径加入环境变量。命令 “PATH=$PATH:路径”可以把这个路径加入环境变量,但是退出这个命令行就失效了。要想永久生效,需要把这行添加到环境变量文件里。有两个文件可 选:“/etc/profile”和用户主目录下的“.bash_profile”,“/etc/profile”对系统里所有用户都有效,用户主目录下 的“.bash_profile”只对这个用户有效。

  “PATH=$PATH:路径1:路径2:...:路径n”,意思是可执行文件的路径包括原先设定的路径,也包括从“路径1”到“路径n”的所 有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可执行文件并交给系统核心执行。那个“$PATH”表示原先设定的路径 仍然有效,注意不要漏掉。某些软件可能还有“PATH”以外类型的环境变量需要添加,但方法与此相同,并且也需要注意“$”。

  注意,与DOS/Window不同,UNIX类系统环境变量中路径名用冒号分隔,不是分号。另外,软件越装越多,环境变量越添越多,为了避免造成混乱,建议所有语句都添加在文件结尾,按软件的安装顺序添加。

  格式如下():

  # 软件名-版本号

  PATH=$PATH:路径1:路径2:...:路径n

  其他环境变量=$其他环境变量:...

  在“profile”和“.bash_profile”中,“#”是注释符号,写在这里除了视觉分隔外没有任何效果。

  设置完毕,注销并重新登录,设置就生效了。如果不注销,直接在shell里执行这些语句,也能生效,但是作用范围只限于执行了这些语句的shell。

  相关的环境变量生效后,就不必老跑到软件的可执行文件目录里去操作了。

### 修改环境变量 `PATH` 和 `LD_LIBRARY_PATH` 在 Linux 及类 Unix 系统中,通过编辑 shell 配置文件可以实现对环境变量 `PATH` 和 `LD_LIBRARY_PATH` 的持久化设置。对于临时性的更改,则可以直接利用终端内的 `export` 命令。 #### 设置 `PATH` 环境变量 为了向现有 `PATH` 中添加新的目录,可以在命令行输入如下指令: ```bash export PATH=$PATH:/new/directory/path ``` 这会将 `/new/directory/path` 添加至当前用户的 `PATH` 列表末端[^1]。 若要使此变更永久生效,需将其加入个人的 Shell 初始化脚本(如 `.bashrc`, `.zshrc`),具体取决于所使用的Shell类型。 #### 调整 `LD_LIBRARY_PATH` 环境变量 针对动态链接器所需的库路径列表——即 `LD_LIBRARY_PATH` ,同样可以通过 `export` 来即时更新其值: ```bash export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/path/to/new/library/folder ``` 上述操作使得新指定的库位置被纳入考虑范围之内,在程序启动期间加载必要的共享对象时发挥作用[^2]。 同样地,要让这种变化长期有效,应该把相应的 `export` 行追加到合适的shell配置文件里去。 #### 示例:将特定路径添加到 `PATH` 和 `LD_LIBRARY_PATH` 假设希望增加 `/opt/myapp/bin` 至 `PATH` 并且把 `/opt/myapp/lib` 加入 `LD_LIBRARY_PATH`,那么可在`.bashrc` 或者其他适用的初始化文件内添加下面两行代码: ```bash export PATH=$PATH:/opt/myapp/bin export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/myapp/lib ``` 完成之后记得重新加载该配置文件以应用改动: ```bash source ~/.bashrc ``` 这样就完成了对这两个重要环境变量的手动设定过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值