Ubuntu 上安裝 Node.js 最完整指南|三大方法比較、步驟與常見問題全解析

目次

1. 前言:為什麼要在 Ubuntu 上使用 Node.js?

Ubuntu 與 Node.js 的高度相容性

Node.js 是一個可以在伺服器端運行 JavaScript 的平台,廣泛應用於 Web 應用程式與工具開發。而 Ubuntu 則是深受開發者與系統管理員喜愛的 Linux 發行版。將兩者結合,可以打造出穩定、靈活又高速的開發環境。

在 Ubuntu 上導入 Node.js,您可以獲得以下優點:

  • 作業系統輕量,無多餘功能,可高效利用資源
  • 從開發、測試到正式環境,都可統一使用 Linux 基礎
  • 與 Node.js 高度相容,各種工具(如 npm、nvm 等)整合順暢

因此,Ubuntu 與 Node.js 的組合,無論是前端還是後端開發,都非常有吸引力

本篇文章的目標讀者與目的

本文章適合以下讀者:

  • 第一次想在 Ubuntu 上使用 Node.js 的人
  • 想知道哪種安裝方式最適合自己的開發者
  • 希望使用最新版 Node.js,但對設定有疑慮者

讀完本篇,您將可以從三個角度比較 Ubuntu 安裝 Node.js 的方法,依照需求與技能挑選最合適的方案。同時也會介紹 npm、yarn 等周邊工具的安裝,以及常見錯誤的處理方式,讓您安心打造 Node.js 開發環境。

2. Ubuntu 上 Node.js 安裝方式總覽比較

三種安裝方式,各有特色

在 Ubuntu 上安裝 Node.js 主要有以下三種方法:

  1. APT(Advanced Package Tool)標準套件安裝
  2. 使用 NodeSource 提供的 PPA 安裝
  3. nvm(Node Version Manager)靈活多版本管理安裝

每種方式都有優缺點,適用的情境和系統結構也略有不同。以下是各自的特點整理比較表。

Node.js 安裝方式比較表

安裝方式主要特色優點缺點推薦對象
APT(標準)使用 Ubuntu 官方套件庫簡單、安全版本可能較舊想最快體驗的新手
NodeSource PPA可用 APT 管理最新版 Node.js支援較新版本需額外加入 PPA想用穩定新版的開發者
nvm可切換多版本靈活、最適合多專案需設定 Shell學習或開發用途皆推薦

為什麼比較很重要?

Ubuntu 雖然以穩定著稱,但官方 APT 套件庫中的軟體版本通常較舊。想用最新功能或需切換多版本時,APT 以外的方法更合適。
反之,若您只是「想快速嘗試」、「不想對伺服器加裝太多設定」,APT 安裝即可滿足需求。

該怎麼選?

結論來說,對開發者或有中長期需求者,最推薦用 nvm 安裝 Node.js。
原因如下:

  • 輕鬆切換新版或舊版
  • npm 一併安裝
  • 較少遇到權限問題(不需 sudo)

3. 方法①:APT 套件(Ubuntu 官方)簡單安裝 Node.js

APT 是什麼?Ubuntu 標準套件管理系統

APT(Advanced Package Tool)是 Ubuntu 與 Debian 系 Linux 發行版的標準套件管理工具。透過 APT,您能用指令輕鬆安裝、更新、移除軟體。

Ubuntu 官方套件庫內已收錄 Node.js 套件,所以不需特別準備即可安裝 Node.js,這是此法的最大優點。

安裝步驟

  1. 先更新 APT 套件清單:
   sudo apt update
  1. 安裝 Node.js 與 npm:
   sudo apt install nodejs npm
  1. 確認安裝成功:
   node -v
   npm -v

如果這兩個指令能顯示版本號,代表安裝成功。

優點:簡單又安全

  • 通過 Ubuntu 官方套件庫,可靠度高
  • 指令簡單,新手也不易迷失
  • APT 管理,能和系統更新同步

特別適合「想先試試看 Node.js」、「不希望伺服器做太多改動」的場合。

缺點:版本可能較舊

APT 著重穩定性,Node.js 套件可能落後數個版本

例如 Ubuntu 22.04 上,APT 安裝的 Node.js 可能是 v12 或 v14,不包含最新功能或安全修正
另外,難以管理多版本,不適合同時需要多專案版本。

推薦族群

  • 只想快速體驗 Node.js 的新手
  • 對穩定版就滿意的工作環境
  • 不需要切換多版本的情境

4. 方法②:用 NodeSource PPA 安裝最新版

NodeSource 是什麼?

NodeSource 為 Node.js 提供穩定和最新版套件,是相當可靠的來源。
特別適合想在 Ubuntu 或 Debian 上用 APT 管理 Node.js,但又要最新版本的用戶。
Node.js 官方網站也推薦,企業用戶也常用這個方法。

安裝步驟(以 Node.js 18.x 為例)

  1. 更新套件清單:
   sudo apt update
  1. 如果尚未安裝 curl,請先安裝:
   sudo apt install curl
  1. 執行 NodeSource 安裝腳本:
   curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash -
  1. 安裝 Node.js:
   sudo apt install -y nodejs
  1. 確認安裝:
   node -v
   npm -v

優點:APT 操作感用最新版

  • 可安裝最新/穩定版 Node.js
  • 維持原有 APT 流程,習慣無須大變
  • npm 會同步安裝

不依賴 Ubuntu 官方套件,可維持更新鮮的開發環境。

缺點:需加入 PPA

  • 步驟比一般 APT 多,對新手略有門檻
  • 須判斷來源是否可信(NodeSource 安全性高)

推薦族群

  • 需要穩定新版 Node.js 的開發者
  • 不滿足於官方套件但也不想用 nvm 的用戶
  • 想維持 APT 管理套件習慣的人

5. 方法③:用 nvm 靈活管理多版本(推薦)

什麼是 nvm?方便切換 Node.js 多版本的小工具

nvm(Node Version Manager) 是能管理多個 Node.js 版本的 CLI 工具。
適合開發者針對不同專案或同時測試 LTS/最新版,非常便利。

使用 nvm,您無需直接在 Ubuntu 系統層安裝 Node.js,一切皆於用戶環境下完成,開發更彈性

nvm 安裝步驟

  1. curl 執行安裝腳本:
   curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
  1. 讀取 Shell 設定檔(依登入 Shell 而異):
   source ~/.bashrc

若為 Zsh:

   source ~/.zshrc
  1. 確認 nvm 是否安裝:
   command -v nvm

若顯示 nvm 即代表安裝成功。

用 nvm 安裝 Node.js

  1. 安裝 LTS 版本:
   nvm install --lts
  1. 安裝指定版本:
   nvm install 18
  1. 切換版本:
   nvm use 18
  1. 設定預設版本:
   nvm alias default 18
  1. 確認版本:
   node -v
   npm -v

優點:彈性強、管理方便

  • 可共存、隨時切換多版本
  • npm 自動一併安裝
  • 無需 sudo權限問題少
  • 不污染系統層,非常適合開發環境

缺點:初次設定需注意

  • 忘記載入 .bashrc.zshrc 則 nvm 失效
  • 安裝於用戶(非系統全域)需注意

推薦族群

  • 需切換新版/舊版 Node.js 的開發者
  • 多專案需不同版本的人
  • 想避免權限問題的新手也很適合

6. 善用 npm 與 yarn 的安裝與管理

npm 是什麼?Node.js 必備的套件管理工具

npm(Node Package Manager) 是 Node.js 的套件管理工具,可輕鬆安裝全球開發者發佈的函式庫與工具。用 Node.js 開發時,npm 幾乎不可或缺。

用 APT、NodeSource 安裝 Node.js 時,通常會自帶 npm。用 nvm 安裝時 nvm install 也會自動包含 npm。

查看版本指令:
npm -v

npm 基本用法

操作內容指令範例
安裝套件npm install <套件名稱>
全域安裝npm install -g <套件名稱>
解除安裝npm uninstall <套件名稱>
初始化專案npm initnpm init -y
顯示套件列表npm listnpm list -g

npm 能讓您針對每個專案,獨立管理所需函式庫,非常重要。

yarn 是什麼?npm 的熱門替代方案

yarn 由 Facebook 開發,作為 npm 的替代工具,主打更快、更穩定的套件管理
指令幾乎與 npm 兼容,npm 能做的事情,yarn 基本也能做到。

yarn 安裝步驟(npm 安裝)

npm install -g yarn

安裝完成後,輸入下列指令檢查:

yarn -v

yarn 基本用法

操作內容指令範例
安裝套件yarn add <套件名稱>
全域安裝yarn global add <套件名稱>
解除安裝yarn remove <套件名稱>
初始化專案yarn init
顯示套件列表yarn listyarn global list

npm 與 yarn,應該選哪個?

比較項目npmyarn
標準性Node.js 內建需另安裝
速度一般利用快取更快
鎖定檔package-lock.jsonyarn.lock
指令兼容大致兼容(需留意)

npm 近年已大幅進化,兩者差異不大,建議跟團隊慣用哪個就用哪個

7. 常見錯誤與問題處理

常見錯誤與解決方式

node: command not found

原因:
Node.js 尚未正確安裝,或路徑未設定。特別是用 nvm 安裝後沒載入設定檔時常發生。

解決:

  • 重新讀取 .bashrc.zshrc 啟用 nvm
  source ~/.bashrc
  • 仍不行的話,請嘗試重新登入或重啟

E: Unable to locate package nodejs

原因:
APT 套件清單過舊或未正確新增 PPA。

解決:

  • 更新 APT 清單
  sudo apt update
  • 若用 NodeSource,請再次執行安裝腳本

npm ERR! permission denied

原因:
嘗試全域安裝 npm 套件時,權限不足。

解決:

  • sudo 執行(但不推薦)
  sudo npm install -g <套件名稱>
  • 推薦用 nvm,無需 sudo 即可全域安裝

nvm: command not found

原因:
nvm 雖已安裝,但 shell 設定檔未載入。

解決:

  • 檢查 .bashrc 是否含有 nvm 設定
  • 手動載入
  export NVM_DIR="$HOME/.nvm"
  [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

避免問題的基本觀念

  • 經常檢查路徑設定
  • 盡量用 nvm 可避免多數環境問題
  • 留意 Ubuntu 及 Node.js 版本對應(老版 Ubuntu 可能套件庫沒新版本)

8. 常見問答(FAQ)

Q1. 如何查詢 Node.js 版本?

A. 終端機輸入下列指令即可。

node -v

若要查 npm 版本:

npm -v

Q2. Ubuntu 如何同時用多個 Node.js 版本?

A. 最簡單又安全的方法是使用 nvm(Node Version Manager)。安裝後用以下指令切換版本。

nvm install 16
nvm use 16

這樣就能根據不同專案靈活切換版本。

Q3. nvm 安裝的 Node.js 沒生效,怎麼辦?

A. 多半是shell 設定檔沒正確讀取。請安裝後執行:

source ~/.bashrc

若用 zsh,請執行 source ~/.zshrc

Q4. yarn 和 npm 差在哪?該選哪個?

A. 功能大致相同,但yarn 強調安裝速度快、依賴管理嚴謹(yarn.lock。npm v7 後也有顯著提升,基本上用哪個都可。

建議跟團隊慣例選擇

Q5. Node.js 與 Deno、Bun 有何不同?

A. Deno、Bun 都是針對 Node.js 缺點改進的新型執行環境。

  • Deno:支援 TypeScript、更高安全性,內建標準函式庫
  • Bun:比 Node.js 更快、內建套件管理

但現階段,Node.js 擁有 npm 豐富生態,仍是最實用選擇

9. 結論:依需求選擇安裝方式

在 Ubuntu 上安裝 Node.js 有多種方法,每種都有明顯的特性與適用場景。本文介紹三大主流安裝方式,並比較優缺點,協助您找到最合適方案。

再次整理重點如下:

APT(Ubuntu 官方)

  • 優點:最簡單、安全
  • 缺點:版本可能較舊
  • 推薦:想立刻體驗的新手

NodeSource PPA

  • 優點:用 APT 安裝新版 Node.js
  • 缺點:需額外加 PPA
  • 推薦:需穩定新版本的開發者

nvm(Node Version Manager)

  • 優點:可切換多版本,彈性高
  • 缺點:初次設定稍繁瑣
  • 推薦:中高階開發者、多專案工作者

此外,也介紹了 npm、yarn 套件管理,以及常見錯誤處理。Node.js 安裝看似複雜,其實只要選對方法,在 Ubuntu 也能輕鬆打造穩定的開發環境

如果您有更進一步開發需求,建議以 nvm 為基礎,拓展團隊協作或 CI/CD 自動化。

侍エンジニア塾