本文环境
- CentOS 7.6 64bit
- root用户
目的
新买了一个华为的云服务器,安装一些python开发常用的软件和环境,包括
- python环境
- 安装最新的git
- zsh(神器,必备,建议没有了解过的小伙伴了解一下)
前提
本文适用于Centos环境下,对Vim编辑器有一点了解能够完成简单的修改的操作的人群。
安装过程
准备
服务器中默认的ssh连接的过期时间有点短,可以设置长一点,省的在找一些资料的时候回去发现ssh连接断掉了
1 | echo "ClientAliveCountMax 10" >> /etc/ssh/sshd_config |
我这边设置的过期时间是10分钟,对应ClientAliveCountMax 10
这里的10,可以根据自己的情况设置。
编译安装最新的git
本环节可跳过,直接使用yum -y install git
安装git 即可
Centos使用yum -y install git
安装的git是版本比较旧的,在后续使用时总会出现各种各样的问题,所以干脆我们一开始就安装一个比较新的git版本,省的后续再麻烦,虽说是编译安装,但是整体过程还是非常简单的,
首先使用yum来安装我们编译需要使用的依赖
1 | yum -y install gcc gcc-c++ curl-devel expat-devel gettext-devel openssl-devel zlib-devel perl-ExtUtils-MakeMaker autoconf |
首先我们要先检查一些我们是否安装了git,
1 | git --version |
上面的命令可以查看当前是否安装了git,并可以查看git 的版本,我这边的结果是
1 | git version 1.8.3.1 |
说明已经安装了git,但是是比较旧的版本,如果是-bash: aria2c: command not found
则说明没有安装git,如果已经安装了git,可以使用yum remove git
来卸载掉。
完成依赖的安装后,使用wget
命令来下载git的源码包,我这边最新的版本为2.25.2,
1 | wget https://www.kernel.org/pub/software/scm/git/git-2.25.2.tar.gz |
完成下载后,使用tar命令解压压缩包,然后进入到解压后的文件夹里,
1 | tar -zxvf git-2.25.2.tar.gz |
然后依次使用以下命令进行编译和安装
1 | ./configure --prefix=/usr/local/git |
其中make过程较慢,需要稍微等待一下,完成后就成功的将git安装到了/usr/local/git下,下面需要将这个path加入到环境变量中
1 | echo "export PATH=$PATH:/usr/local/git/bin" >> /etc/profile && source /etc/profile |
这时使用git --version
即可查看安装的git版本,如下图
到此为止,就完成了git的安装,另外可将原来的安装文件删除
1 | rm git-2.25.2.tar.gz git-2.25.2 -rf |
zsh安装[^ 1]
先放成果图
安装zsh和oh-my-zsh
关于zsh的介绍,这里就不多说,介绍部分大家可以查看zsh官网,
安装的过程非常简单,(我们默认是在root下的,不需要使用sudo,如果不是root,则需要sudo)
- 对于Centos 使用
yum -y install zsh
- 对于Ubuntu 使用
apt-get -y install zsh
完成zsh的安装之后,可以使用cat /etc/shells
查看当前系统下有哪些shell,会发现多了一个zsh,
使用chsh -s /bin/zsh root
命令为root用户更换shell到zsh
但是这时zsh还是没有配置的状态,而zsh最强大的地方就是它可以经过配置,安装许多对应功能的插件,以提供各种各样的功能,
但是zsh的配置是比较复杂的,想要全部了解还是比较难的,可以使用一下公用的配置,即oh-my-zsh,
使用以下命令进行安装oh-my-zsh
1 | wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O - | sh |
众所周知的原因,后面的git clone
会比较慢,等待即可,安装完成后显示
这时使用exit
退出连接,然后再重连,即可看到变化,如下图,可以看到shell指示符变成了一个箭头,
其他问题:安装后会遇到Home和End键失灵的情况,对应的键改为,如果使用不习惯,可以通过配置解决,可以参考 配置失灵修复,但是个人感觉笔记本Ctrl a Ctrl e 比较好按,按照个人情况选择吧。
Home = Ctrl + a
End = Ctrl + e
安装插件
安装过oh-my-zsh后,在本地个人的工作目录下,会有一个.zshrc文件(~/.zshrc
)
该文件即为oh-my-zsh的配置文件,可以文件中配置一些主题和插件,首先配置一些插件,下面都是我比较常用的,
1 | plugins=( |
对于插件安装的方法,在使用命令安装完成后,只需要在~/.zshrc
中添加即可,使用vim打开~/.zshrc
,找到如图所示的位置,添加对应的插件名,下面是我已经添加了三个插件的结果,添加完使用命令source ~/.zshrc
即可让配置生效
- git插件,可以在命令行中显示当前本地Repo的一些信息,包括当前所在的分支等,效果如下
- 这个插件是默认自带
- zsh-syntax-highlighting
- 这个插件的功能是,如果你的命令输入正确了,会提供一个高亮显示,显示为绿色,否则为红色
- 使用以下命令安装即可,并在.zshrc中加入
zsh-syntax-highlighting
即可使用 git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
- 效果如下
- zsh-autosuggestions
- 该插件的功能是可以根据历史输入的命令,对当前输入的命令进行补全,安装命令如下,安装后在.zshrc中加入
zsh-autosuggestions
即可 git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
- 效果如下
- 注意看光标的位置,只是输入了tar,这个命令非常方便,且非常常用
- 该插件的功能是可以根据历史输入的命令,对当前输入的命令进行补全,安装命令如下,安装后在.zshrc中加入
我只安装了这几个,所有的插件参考 所有插件 ,喜欢折腾的可以自己选择
安装主题
同样oh-my-zsh提供了许多主题,所有的主题和其预览可以查看 https://github.com/robbyrussell/oh-my-zsh/wiki/Themes
我这里使用的是powerlevel9k/powerlevel9k,下面是安装步骤[^ 2]
使用命令git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k
下载主题对应的文件,
在文件的对应位置,如下图
将ZSH_THEME设置为如下内容即可:
1 | ZSH_THEME="powerlevel9k/powerlevel9k" |
另外在文件开头,加入以下语句
1 | export TERM="xterm-256color" |
然后执行source ~/.zshrc
命令即可 ,退出vim编辑器即可看到shell已经变啦
python安装[^ 3]
安装python环境
前面安装了一些基础的部分,下面开始安装python环境,本文使用Pyenv来进行python环境的管理,
首先使用以下命令安装Pyenv
1 | sudo curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/master/bin/pyenv-installer | bash |
安装结束后,将下列命令加入到.zshrc中,然后执行source ~/.zshrc
1 | export PATH="$HOME/.pyenv/bin:$PATH" |
接下来就可以开始使用Pyenv的命令啦,如果对pyenv不了解的话,可以看一下简单教程,使用还是非常简单的
教程链接,这里就不再赘述了
首先安装一些编译安装python所需的依赖,
1 | yum -y groupinstall "Development tools" |
如果是ubuntu,可以使用下面的命令来安装
1 | sudo apt-get install -y gcc make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev liblzma-dev |
下面安装python环境,这里使用pyenv的淘宝镜像来安装python,下载对应的文件放到~/.pyenv/cache
中,并使用pyenv进行安装,下面是一个傻瓜脚本,参考自使用pyenv安装python
1 | v=3.7.3;wget https://npm.taobao.org/mirrors/python/$v/Python-$v.tar.xz -P ~/.pyenv/cache/;pyenv install $v |
其中v=3.7.3
代表我们想要安装3.7.3版本,如果想要安装其他版本只需修改此部分即可。
如果安装过程中出现如上图所示的错误,使用yum -y install libffi-devel xz-devel
安装缺少的依赖,再次执行v=3.7.3;pyenv install $v
继续安装即可
由于安装python需要编译,所以需要花费一点时间,
- 安装完成后,使用
pyenv versions
查看当前所有的python环境的版本,可以看到有我们刚刚安装的3.7.3, - 使用命令
pyenv global 3.7.3
即可设置全局的python版本为3.7.3, - 最后再使用
source ~/.zshrc
即可,如下图所示可以看到python的版本为对应的3.7.3
pip换源
完成python环境安装后,还有一步,就是对pip换源,pip原本的源在国外,在安装一些大的依赖时非常慢,所以我们需要换成国内速度比较快的源,
这是换源使用的也是一个python的库,叫pqi,使用下面的命令安装即可
1 | pip install pqi |
安装成功后,使用pqi ls
可以显示当前有哪些源可以使用,可以使用pqi show
显示当前使用的源,如下图:
一般在非教育网的环境下可以使用aliyun或者douban,在教育网环境下可以使用tuna或者ustc
使用以下命令可以使用aliyun的源
1 | pqi use aliyun |
使用pqi show
查看当前源发现已经换成了aliyun的源了,速度比之前pypi的要快上不少。
换源之后安装numpy,速度还是很快的
参考链接: