# 01. Node.js & nvm ## 检查 ```bash command -v nvm || (export NVM_DIR="$HOME/.nvm" && [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" && nvm --version) node --version which node # 应该在 ~/.nvm/ 下,不是 /usr/bin/node ``` ✅ 达标:nvm 已安装,node 版本 >= v24 (LTS),由 nvm 管理(路径在 `~/.nvm/versions/` 下) ## 安装 ### 1. 安装 nvm ```bash curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash ``` 安装完毕后加载 nvm: ```bash export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" ``` ### 2. 写入 .profile 确保每次登录自动加载 nvm: ```bash cat >> ~/.profile << 'EOF' # nvm export NVM_DIR="$HOME/.nvm" [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" EOF ``` ### 3. 安装 Node.js LTS ```bash nvm install --lts nvm alias default lts/* ``` ### 4. 清理旧的系统 Node(如果有) 如果之前通过 apt/nodesource 装过系统级 Node,建议卸载避免冲突: ```bash # 检查是否有系统 Node dpkg -l | grep nodejs # 如果有,卸载 sudo apt remove -y nodejs sudo rm -f /etc/apt/sources.list.d/nodesource.list /etc/apt/keyrings/nodesource.gpg ``` ### 5. 处理 .npmrc 冲突 如果旧的 .npmrc 里有 `prefix=` 设置,会和 nvm 冲突,需要移除: ```bash grep prefix ~/.npmrc 2>/dev/null && mv ~/.npmrc ~/.npmrc.bak ``` ### 6. 创建系统级符号链接(可选) 某些非 shell 工具(如 Hermes 浏览器引擎)可能找不到 nvm 管理的 node,创建符号链接解决: ```bash sudo ln -sf $(which node) /usr/local/bin/node ``` ⚠️ 注意:切换 node 版本后需要重新执行此命令更新符号链接。 ### 7. 安装全局 npm 包 切换 node 版本后全局包需要重装: ```bash npm i -g @shazhou/cfg @shazhou/hermes-harness @nocoo/pew @oc-forge/secret ``` ## 验证 ```bash nvm --version # 应显示 0.40.x node --version # 应显示 v24.x.x which node # 应在 ~/.nvm/versions/ 下 npm --version # 应显示 11.x cfg env > /dev/null && echo "cfg ✓" pew --version && echo "pew ✓" ```