1. 使用包管理器安装
1.1 CentOS/RHEL
EPEL仓库方式(较旧版本)
- # 安装EPEL仓库<br>sudo yum install epel-release -y<br><br># 安装Node.js<br>sudo yum install nodejs -y<br><br># 验证安装<br>node -v<br><br># 完全卸载<br>sudo yum remove nodejs npm -y<br>sudo yum clean all
复制代码 NodeSource仓库方式(推荐)
- # 添加NodeSource仓库(以Node.js 20.x为例)<br>curl -fsSL https://rpm.nodesource.com/setup_20.x | sudo bash -<br><br># 安装Node.js<br>sudo yum install -y nodejs<br><br># 验证安装<br>node -v<br>npm -v<br><br># 完全卸载<br>sudo yum remove -y nodejs<br>sudo rm -rf /etc/yum.repos.d/nodesource*.repo<br>sudo yum clean all<br><br># 删除可能的残留文件<br>sudo rm -rf /usr/lib/node_modules<br>sudo rm -rf /usr/local/lib/node_modules<br>sudo rm -rf ~/.npm
复制代码 1.2 Ubuntu/Debian
- # 添加NodeSource仓库<br>curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -<br><br># 安装Node.js<br>sudo apt-get install -y nodejs<br><br># 验证安装<br>node -v<br>npm -v<br><br># 完全卸载<br>sudo apt-get purge -y nodejs<br>sudo apt-get autoremove -y<br>sudo rm -rf /etc/apt/sources.list.d/nodesource.list<br>sudo apt-get update<br><br># 删除残留文件<br>sudo rm -rf /usr/lib/node_modules<br>sudo rm -rf /usr/local/lib/node_modules<br>sudo rm -rf ~/.npm
复制代码 2. 使用NVM安装(推荐)
NVM (Node Version Manager) 允许在同一系统上安装和管理多个Node.js版本。- # 安装NVM<br>curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash<br><br># 加载NVM环境(或重新打开终端)<br>export NVM_DIR="$HOME/.nvm"<br>[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"<br>[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"<br><br># 查看可用的Node.js版本<br>nvm list-remote<br><br># 安装特定版本的Node.js<br>nvm install 20.19.4<br><br># 切换Node.js版本<br>nvm use 16.20.2<br><br># 设置默认版本<br>nvm alias default 20.19.4<br><br># 验证安装<br>node -v<br>npm -v<br><br># 卸载特定版本<br>nvm uninstall 20.19.4<br><br># 完全卸载NVM及所有Node.js版本<br>rm -rf ~/.nvm<br># 从 ~/.bashrc, ~/.zshrc, ~/.profile 等文件中删除NVM相关行<br># 例如删除以下类似行:<br># export NVM_DIR="$HOME/.nvm"<br># [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"<br># [ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"
复制代码 3. 从源代码编译安装
3.1 安装依赖
- # CentOS/RHEL<br>sudo yum groupinstall -y "Development Tools"<br>sudo yum install -y python3 gcc-c++ make openssl-devel<br><br># Ubuntu/Debian<br>sudo apt-get update<br>sudo apt-get install -y python3 g++ make libssl-dev
复制代码 3.2 下载源代码
- # 下载Node.js源代码<br>wget https://nodejs.org/dist/v20.19.4/node-v20.19.4.tar.gz<br><br># 解压源代码<br>tar -xzf node-v20.19.4.tar.gz<br><br># 进入源代码目录<br>cd node-v20.19.4
复制代码 3.3 编译安装
- # 配置编译选项(指定安装目录)<br>./configure --prefix=/usr/local/node<br><br># 编译(使用多核加速)<br>make -j$(nproc)<br><br># 安装<br>sudo make install<br><br># 配置环境变量<br>echo 'export PATH=/usr/local/node/bin:$PATH' | sudo tee /etc/profile.d/nodejs.sh<br>source /etc/profile.d/nodejs.sh<br><br># 验证安装<br>node -v<br>npm -v<br><br># 卸载源码编译安装的Node.js<br>sudo rm -rf /usr/local/node<br>sudo rm -f /etc/profile.d/nodejs.sh<br># 重新登录终端或执行以下命令使环境变量更改生效<br>source /etc/profile
复制代码 4. 系统要求与版本选择
4.1 系统要求
Node.js版本最低系统要求Node.js 20.xCentOS/RHEL 8+, Ubuntu 20.04+, GCC 10+Node.js 18.xCentOS/RHEL 7+, Ubuntu 18.04+, GCC 8+Node.js 16.xCentOS/RHEL 7+, Ubuntu 16.04+, GCC 6+4.2 版本选择建议
- 生产环境:优先选择LTS(长期支持)版本
- 开发环境:可以使用最新的Current版本
- 旧系统:CentOS 7等旧系统建议使用Node.js 16.x
5. 故障排除
5.1 权限问题
- # 解决全局包安装权限问题<br>mkdir -p ~/.npm-global<br>npm config set prefix ~/.npm-global<br>echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc<br>source ~/.bashrc
复制代码 5.2 依赖问题
- CentOS 7编译错误:如果遇到C++编译器版本过旧错误,可使用devtoolset:
- sudo yum install -y centos-release-scl<br>sudo yum install -y devtoolset-10-gcc devtoolset-10-gcc-c++<br>source /opt/rh/devtoolset-10/enable<br># 然后再次尝试编译
复制代码
- 库版本不兼容:如果出现GLIBC或GLIBCXX版本错误,建议使用NVM安装兼容的Node.js版本。
5.3 卸载检查
- # 检查是否有残留Node.js文件<br>which node<br>which npm<br><br># 查找可能的残留文件<br>find /usr -name "*node*"<br>find /usr/local -name "*node*"<br>find /opt -name "*node*"<br><br># 检查全局npm包<br>ls -la /usr/lib/node_modules<br>ls -la /usr/local/lib/node_modules<br><br># 检查环境变量中的Node.js相关路径<br>echo $PATH | tr ':' '\n' | grep -i node<br><br># 检查配置文件中的Node.js相关设置<br>grep -r "node" ~/.bashrc ~/.profile /etc/profile /etc/profile.d/
复制代码 6. 完全卸载Node.js的通用步骤
无论使用何种方式安装,以下步骤可以帮助彻底清除Node.js:- # 1. 使用相应的包管理器卸载<br># 对于yum/dnf:<br>sudo yum remove -y nodejs npm<br># 对于apt:<br>sudo apt-get purge -y nodejs npm<br><br># 2. 删除NVM(如果使用了NVM)<br>rm -rf ~/.nvm<br># 从配置文件中删除NVM相关行<br><br># 3. 删除源码安装的Node.js<br>sudo rm -rf /usr/local/node<br>sudo rm -rf /usr/local/bin/node<br>sudo rm -rf /usr/local/bin/npm<br>sudo rm -f /etc/profile.d/nodejs.sh<br><br># 4. 删除全局npm包和缓存<br>sudo rm -rf /usr/lib/node_modules<br>sudo rm -rf /usr/local/lib/node_modules<br>rm -rf ~/.npm<br><br># 5. 删除Node.js配置文件<br>rm -rf ~/.node-gyp<br>rm -f ~/.npmrc<br><br># 6. 检查并删除其他可能的安装位置<br>sudo rm -rf /opt/node<br><br># 7. 更新系统缓存<br># 对于yum/dnf:<br>sudo yum clean all<br># 对于apt:<br>sudo apt-get update<br><br># 8. 检查是否完全删除<br>which node<br>which npm
复制代码 来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |