文章目录
环境变量搞乱了话复制过来
今天在linux服务器上创建的用户,登录后发现此用户的CRT的终端提示符显示的是-bash-4.2# 而不是user@主机名 + 路径的显示方式,以往一直用的脚本也不能执行起来;
原因是在用useradd添加普通用户时,有时会丢失家目录下的环境变量文件,丢失文件如下:
cp /etc/skel/.bashrc . && cp /etc/skel/.bash_profile .
安bash装pyenv
# 下载 pyenv
git clone https://github.com/pyenv/pyenv.git /usr/local/pyenv
# 下载 pyenv 虚拟环境
git clone https://github.com/pyenv/pyenv-virtualenv.git /usr/local/pyenv/plugins/pyenv-virtualenv
设置环境变量
vim /etc/profile
# 添加以下内容
# Pyenv 环境变量
export PYENV_ROOT=/usr/local/pyenv
export PATH=$PYENV_ROOT/bin:$PATH
# 增加pyenv到shell
eval "$(pyenv init -)"
# pyenv 虚拟环境变量
eval "$(pyenv virtualenv-init -)"
# 刷新配置文件
source /etc/profile
重启shell
exec "$SHELL"
安装并使用python版本
# 查看可用版本
1) pyenv install --list
# 安装一个如
2) pyenv install 3.6.5
# 如果报错
BUILD FAILED (Ubuntu 16.04 using python-build 1.1.3-21-g005a2e8)
# Ubuntu/Debian:
sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \
xz-utils tk-dev
# edora/CentOS/RHEL:
dnf install zlib-devel bzip2 bzip2-devel readline-devel sqlite sqlite-devel openssl-devel xz xz-devel
离线安装Python
pyenv 安装很慢的解决办法:
# 1.先在 ~/.pyenv 目录下创建一个 cache目录
mkdir ~/.pyenv/cache
# 2.进入cache目录
cd ~/.pyenv/cache
# 3.下载3.7.2版本
wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tar.xz
# 4.开始安装3.7.2版本,会比较慢因为需要验证版本,有问题会重新下载
pyenv install -v 3.7.2
查看版本
# 查看所有版本
pyenv versions
# 查看当前版本
pyenv version
# system 代表当前系统的python 版本
*表示当前的python版本, 可以看到, 我们还在使用的是默认的system 自带的python版本
切换python默认版本
pyenv global 3.7.2
创建一个3.7.2虚拟环境
pyenv virtualenv 3.7.2 Name
# 这条命令在本机上创建了一个名为env362的python虚拟环境,这个环境的真实目录位于:~/.pyenv/versions/
pyenv versions
使用3.7.2虚拟环境
pyenv activate Name
关闭3.7.2虚拟环境
pyenv deactivate
卸载3.7.2虚拟环境
pyenv uninstall Name
虚拟环境Django位置
/Users/akiraka/.pyenv/versions/3.6.5/envs/DTest/lib/python3.6/site-packages/django/contrib/admin/templates/admin
.bash_profile和.bashrc的区别(如何设置生效)
/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.
/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.
~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.
~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.
安装常见依赖
pip install pyspark
pip install mysqlclient
解决堡垒机用户 sudo 无法使用 pyenv
ln -s /usr/local/pyenv/bin/pyenv /bin/