python3安装及配置环境变量+/etc/profile和/root/.bash_profile区别

1、依赖包安装

yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel

2、下载包:

wget https://www.python.org/ftp/python/3.8.1/Python-3.8.1.tgz

3、解压:

tar -zxvf Python-3.8.1.tgz

4、安装:

cd Python-3.8.1
./configure --prefix=/usr/local/python3
make && make install

5、建立软连接

ln -s /usr/local/python3/bin/python3.8 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.8 /usr/bin/pip3
配置环境变量

主要是能快速使用pip安装命令

执行 vi ~/.bash_profile,打开配置文件,添加如下配置:

#配置python
export PYTHON_HOME=/root/training/Python-3.6.5
export PATH=$PYTHON_HOME/bin:$PATH**

保存退出(:wq),执行source ~/.bash_profile命令使配置生效。

执行echo命令,查看是否配置成功,如:

echo $PYTHON_HOME
/etc/profile和/root/.bash_profile区别
  • /etc/profile,优先级最高,是全局的,是私有的,用于整个系统所有用户
  • ~/.bashrc和 ~/.bash_profile, ~/.profile 用于各个用户,这里的"~"符号就是各当前用户的$HOME
  • ~/.bash_profile 和 ~/.profile 只在登陆时读取一次
  • ~/.bashrc 每次都读取
~/.bash_profile 和 ~/.profile 的区别在于
  • bash 只读取~/.bash_profile;而对于 ~/.profile 来说,不光bash, 其他shell 也读 ~/.profile

参考:
https://www.jb51.net/article/184282.htm

### 在 Linux 中通过 `/root/.bashrc` 定义环境变量的方法及其作用范围 在 Linux 系统中,`.bashrc` 文件是一个隐藏文件,位于用户的主目录下。对于根用户(root),该文件路径为 `/root/.bashrc`。此文件主要用于配置特定于用户的 shell 环境设置[^4]。 #### 如何在 `.bashrc` 文件中定义环境变量 要在 `/root/.bashrc` 文件中定义环境变量,可以通过以下方式实现: 1. 打开 `/root/.bashrc` 文件并编辑: ```bash nano /root/.bashrc ``` 2. 添加新的环境变量到文件中。例如,定义一个名为 `MY_VAR` 的环境变量: ```bash export MY_VAR="This is a test variable" ``` 3. 保存文件并退出编辑器。 4. 让更改生效,重新加载 `.bashrc` 文件: ```bash source /root/.bashrc ``` 这样,环境变量 `MY_VAR` 就被成功定义,并可以在当前 root 用户的 shell 会话中使用[^1]。 #### 环境变量的作用范围 根据环境变量的分类创建位置的不同,其作用范围也有所不同[^3]。 - **全局环境变量** 如果希望某个环境变量对所有用户都可用,则应将其添加到系统的全局配置文件中,如 `/etc/profile` 或 `/etc/environment`。而 `/root/.bashrc` 中定义的变量仅限于 root 用户使用的 bash shell 会话中有效,因此不属于全局环境变量。 - **本地环境变量** 当前用户在其个人 `.bashrc` 文件中定义的变量属于本地环境变量。这意味着只有当该用户启动一个新的 bash 终端时,这些变量才会被加载并应用。其他用户无法直接访问由另一个用户在自己的 `.bashrc` 文件中定义的变量。 - **程序可见性** 对于运行在 root 权限下的程序来说,如果它们依赖于从环境中读取某些值,则能够看到 `/root/.bashrc` 中导出的环境变量。然而需要注意的是,除非显式传递给子进程或者脚本继承父进程的环境,否则非交互式的子进程可能不会自动获取这些变量[^2]。 综上所述,在 `/root/.bashrc` 文件中定义的环境变量只适用于 root 用户本身所开启的新终端 session 由此衍生出来的子进程中。普通用户或其他未指定继承机制的情况下均不可见此类变量。 ```python # 示例 Python 脚本验证环境变量是否存在 import os if 'MY_VAR' in os.environ: print(f'MY_VAR is set to {os.environ["MY_VAR"]}') else: print('MY_VAR is not defined') ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值