# linux中基本软件 git ssh nvm node python3 安装

By [juejin](https://paragraph.com/@juejin-2) · 2022-04-19

---

1、git

查看git版本

    git --version
    

ssh

    ssh-keygen -t rsa -C "your_email@example.com"
    

一路回车，然后复制生成文件内容（默认~/.ssh/id\_rsa.pub）放到github-setting-ssh中

2、nvm

    git clone git://github.com/creationix/nvm.git ~/nvm
    

验证安装

    command -v nvm
    

设置nvm自动运行

    echo "source ~/nvm/nvm.sh" >> ~/.bashrc
    source ~/.bashrc
    

查询Node.js版本

    nvm list-remote
    

安装Node.js版本

1.  设置默认开启的版本（防止重启失效）
    

    nvm alias default 14.18.1
    

3、python3(参考[https://zhuanlan.zhihu.com/p/142097087](https://zhuanlan.zhihu.com/p/142097087))

安装依赖

    yum -y install zlib*
    yum -y install libffi-devel
    yum -y install openssl-devel
    

下载（服务器网速慢，可先本地下载再上传）

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

解压

    tar -zxvf Python-3.7.0.tgz
    

新建一个python3的安装目录(位置可自定义)。

    mkdir /usr/lib/python3.7
    

进入Python-3.7.0目录下，「指定安装目录，设置启用ssl功能」。

    cd Python-3.7.0
    ./configure --prefix=/usr/lib/python3.7 --with-ssl
    

编译安装。

make && make install

### 创建软连接

上述步骤完成后，其实python3已经安装完毕，但是为了方便使用，一般会创建python3和pip3的软连接。创建后可直接在终端通过python命令进入python和pip3命令安装python包。

创建python3和pip3软连接：

    ln -s /usr/lib/python3.7/bin/pip3.7 /usr/bin/pip3
    ln -s /usr/bin/pip3 /usr/bin/pip
    

系统默认的python软连接指向的是python2，如果我们需要更方便使用，可以删除原有的python软连接，并建立新的python软连接指向python3。

    rm -f /usr/bin/python
    ln -s /usr/bin/python3 /usr/bin/python
    

查看最新的有python的软连接。

    ll /usr/bin/ |grep python
    

### 修改yum配置

Linux centos7自带的python版本是2.7，yum使用python2.7作为命令解释器。安装python3后，软连接/usr/bin/python指向的版本是python3，不修改yum的配置，会导致yum使用报错，无法安装包等。

修改yum配置文件，下面两个文件都要修改。

    vi /usr/bin/yum
    vi /usr/libexec/urlgrabber-ext-down
    

按i进入编辑模式，在第一行#!/usr/bin/python把修改为#!/usr/bin/python2.7，

按ESC退出编辑模式，:wq退出保存。

### centos puppeteer依赖安装

    yum install alsa-lib.x86_64 atk.x86_64 cups-libs.x86_64 gtk3.x86_64 ipa-gothic-fonts libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXrandr.x86_64 libXScrnSaver.x86_64 libXtst.x86_64 pango.x86_64 xorg-x11-fonts-100dpi xorg-x11-fonts-75dpi xorg-x11-fonts-cyrillic xorg-x11-fonts-misc xorg-x11-fonts-Type1 xorg-x11-utils

---

*Originally published on [juejin](https://paragraph.com/@juejin-2/linux-git-ssh-nvm-node-python3)*
