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

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

rrr2 2018-12-13 09:29:20   2123   收藏
分类专栏: Ubuntu
版权
目录
1 PATH
1.1 环境变量分类
1.1.1对所有用户生效的永久性变量(系统级)
/etc/profile
/etc/bashrc(Ubuntu和Debian中是/etc/bash.bashrc
/etc/environment
1.1.2 用户级
~/.profile(推荐首选)
~/.bashrc
~/.bash_profile 或 ~./bash_login
1.2 环境变量执行顺序
1.3 查看当前环境变量:
1.4 修改:
2 LD_LIBRARY_PATH
1 PATH
可执行程序的查找路径

1.1 环境变量分类
在Linux系统中,环境变量按照其作用范围不同大致可以分为系统级环境变量和用户级环境变量。

系统级环境变量:每一个登录到系统的用户都能够读取到系统级的环境变量
用户级环境变量:每一个登录到系统的用户只能够读取属于自己的用户级的环境变量

1.1.1对所有用户生效的永久性变量(系统级)
/etc/profile
在系统启动后第一个用户登录时运行,并从/etc/profile.d目录的配置文件中搜集shell的设置,使用该文件配置的环境变量将应用于登录到系统的每一个用户。
使生效

source /etc/profile
1
/etc/bashrc(Ubuntu和Debian中是/etc/bash.bashrc
在 bash shell 打开时运行,修改该文件配置的环境变量将会影响所有用户使用的bash shell。

注意:这里的bash shell有不同的类别,不同的类别所使用的环境变量配置文件也有所不同。一般情况下,非登录shell不会执行任何profile文件,非交互shell模式不会执行任何bashrc文件。

/etc/environment
在系统启动时运行,用于配置与系统运行相关但与用户无关的环境变量,修改该文件配置的环境变量将影响全局。

1.1.2 用户级
~/.profile(推荐首选)
当用户登录时执行,每个用户都可以使用该文件来配置专属于自己使用的shell信息。

~/.bashrc
当用户登录时以及每次打开新的shell时该文件都将被读取,不推荐在这里配置用户专用的环境变量,因为每开一个shell,该文件都会被读取一次,效率肯定受影响。

~/.bash_profile 或 ~./bash_login
1.2 环境变量执行顺序
一般情况下,Linux加载环境变量配置文件的执行顺序为:

==> /etc/profile
==> ~/.bash_profile | ~/.bash_login | ~/.profile
==> ~/.bashrc
==> /etc/bashrc
==> ~/.bash_logout

1.3 查看当前环境变量:
echo $PATH

1.4 修改:
修改/.bashrc或/.bash_profile或系统级别的/etc/profile

sudo vim ~/.bashrc
sudo vim /etc/profile

增加:

export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export PYTHONPATH=/usr/local/lib/python2.7/dist-packages:$PYTHONPATH


生效

2. source .bashrc 
1
(Source命令也称为“点命令”,也就是一个点符号(.)。source命令通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录)

2 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
1
2. source .bashrc

方法三:这个没有修改LD_LIBRARY_PATH但是效果是一样的实现动态库的查找

/etc/ld.so.conf下面加一行/usr/local/mysql/lib

保存过后ldconfig一下

ldconfig 命令的用途:
在默认搜寻目录(/lib和/usr/lib)以及动态库配置文件/etc/ld.so.conf内所列的目录下,搜索出可共享的动态链接库(格式如前介绍,lib*.so*),进而创建出动态装入程序(ld.so)所需的连接和缓存文件.缓存文件默认为/etc/ld.so.cache,此文件保存已排好序的动态链接库名字列表.)

方法三设置稍微麻烦,好处是比较不受用户的限制。

ref
https://www.cnblogs.com/aaronLinux/p/5837702.html
https://blog.csdn.net/pengjunlee/article/details/81585726
————————————————
版权声明:本文为CSDN博主「rrr2」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_35608277/article/details/84982318

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值