Skip to content

在 Ubuntu 上卸載 fnm

本指南詳細介紹如何在 Ubuntu 系統上完全卸載 fnm。

快速卸載

使用卸載腳本

bash
curl -fsSL https://fnm.vercel.app/uninstall | bash

該腳本會:

  • 刪除 fnm 二進制文件
  • 清理 ~/.fnm 目錄
  • 提示你移除 Shell 配置中的 fnm 相關代碼

手動卸載步驟

步驟 1:刪除 fnm 目錄

bash
rm -rf ~/.fnm

步驟 2:刪除 fnm 二進制文件

根據安裝方式,fnm 可能位於不同位置:

bash
# 如果使用 curl 腳本安裝
rm -f ~/.fnm/fnm

# 如果手動安裝到 /usr/local/bin
sudo rm -f /usr/local/bin/fnm

# 如果使用 Homebrew 安裝
brew uninstall fnm

步驟 3:清理 Shell 配置

Bash

編輯 ~/.bashrc

bash
nano ~/.bashrc

刪除以下行:

bash
eval "$(fnm env --use-on-cd)"
export PATH="$HOME/.fnm:$PATH"

重新加載:

bash
source ~/.bashrc

Zsh

編輯 ~/.zshrc

bash
nano ~/.zshrc

刪除以下行:

bash
eval "$(fnm env --use-on-cd)"
export PATH="$HOME/.fnm:$PATH"

重新加載:

bash
source ~/.zshrc

步驟 4:清理環境變量

檢查並清理相關環境變量:

bash
# 查看當前環境變量
env | grep FNM

# 如果有殘留,編輯 Shell 配置文件移除

使用 apt 安裝的 fnm

如果你通過 apt 安裝了 fnm:

bash
# 查找包名
dpkg -l | grep fnm

# 卸載
sudo apt remove fnm
sudo apt autoremove

使用 Snap 安裝的 fnm

如果你通過 Snap 安裝:

bash
sudo snap remove fnm

清理 Node.js 版本

如果你想同時刪除 fnm 管理的 Node.js 版本:

bash
# 刪除所有 Node.js 版本
rm -rf ~/.fnm/node-versions

保留 Node.js 版本

如果你想保留已安裝的 Node.js 版本:

bash
# 備份 Node.js 版本
cp -r ~/.fnm/node-versions ~/node-backup

# 或導出到系統路徑
sudo cp -r ~/.fnm/node-versions/v20.10.0/installation /usr/local/node20
sudo ln -s /usr/local/node20/bin/node /usr/local/bin/node

驗證卸載

bash
# 應該輸出 "command not found"
fnm --version

# 檢查目錄是否已刪除
ls ~/.fnm

# 檢查 PATH 中是否還有 fnm
echo $PATH | grep fnm

常見問題

卸載後 Shell 啟動慢

檢查 Shell 配置文件中是否還有殘留代碼:

bash
grep -r "fnm" ~/.bashrc ~/.zshrc ~/.profile 2>/dev/null

node 命令找不到

卸載 fnm 後,如果沒有其他 Node.js 安裝:

bash
# 安裝系統 Node.js
sudo apt update
sudo apt install nodejs npm

# 或重新安裝 fnm
curl -fsSL https://fnm.vercel.app/install | bash

PATH 問題

如果 PATH 中仍有 fnm 相關路徑:

bash
# 檢查 PATH
echo $PATH

# 編輯 Shell 配置文件清理
nano ~/.bashrc  # 或 ~/.zshrc

重新安裝

如果需要重新安裝 fnm:

bash
curl -fsSL https://fnm.vercel.app/install | bash

# 配置 Shell
echo 'eval "$(fnm env --use-on-cd)"' >> ~/.bashrc
source ~/.bashrc

相關鏈接