Ubuntu 24.04에서 nvm으로 Node.js 설치하는 방법 (최신 LTS·버전 변경)

Ubuntu 24.04 서버에 nvm으로 Node.js LTS를 설치하고, node·npm 설치 확인, 여러 버전 설치와 전환, 기본 버전 바꾸기, 「Command 'nvm' not found」·「sudo: node…

Ubuntu 24.04Node.js 24 LTSx86_64약 14분

검증된 문서입니다

클라우드 서버를 생성하여 이 문서의 명령을 처음부터 끝까지 그대로 실행하고 확인한 문서입니다.

운영체제
Ubuntu 24.04.5 LTS · x86_64
설치 버전
Node.js 24.22.0 (npm 11.19.1), nvm 0.40.8
테스트 서버
DigitalOcean · 1 vCPU / 1 GB RAM / 25 GB SSD (s-1vcpu-1gb, sgp1)
마지막 확인
2026-10-15

이 문서에는 제휴 링크가 포함되어 있습니다. 링크를 통해 가입하면 코드샌드가 일정 수수료를 받을 수 있으며, 문서 내용과 평가에는 영향을 주지 않습니다.

Ubuntu 24.04 서버에 nvm으로 Node.js LTS를 설치하고, node·npm 설치 확인, 여러 버전 설치와 전환, 기본 버전 바꾸기, 「Command 'nvm' not found」·「sudo: node: command not found」 오류 해결, 깨끗하게 삭제하는 방법까지 정리합니다.

1. 준비물

  • Ubuntu 24.04 LTS 서버 또는 PC 1대
  • sudo 권한이 있는 일반 사용자 계정
  • 인터넷 연결 (nodejs.org와 GitHub에서 파일을 내려받습니다)

서버가 없다면 DigitalOcean의 가장 작은 Droplet(1 vCPU · 1GB)을 생성해 보세요. 이 Droplet으로도 충분히 Node.js를 설치하고 실행할 수 있습니다. 이 문서의 모든 과정은 Droplet(1 vCPU · 1GB 메모리 · 25GB SSD · Ubuntu 24.04 · 싱가포르)으로 서버를 생성하고, sudo 권한이 있는 일반 사용자 계정으로 확인했습니다.

2. 설치 전 상태 확인

Node.js가 설치되어 있지 않으면 node 명령을 찾을 수 없다는 메시지와 함께 apt로 설치하라는 안내가 표시됩니다.

node -v
Command 'node' not found, but can be installed with:
sudo apt install nodejs

안내대로 apt로 설치하면 어떤 버전이 설치되는지 확인해 봅니다. 먼저 패키지 목록을 갱신합니다. 출력의 앞부분(Hit·Get 줄)은 생략했습니다.

sudo apt update
Fetched 12.1 MB in 5s (2416 kB/s)
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
54 packages can be upgraded. Run 'apt list --upgradable' to see them.

Candidate가 apt install nodejs로 설치되는 버전입니다. Ubuntu 24.04의 기본 저장소에는 Node.js 18이 들어 있습니다.

apt-cache policy nodejs
nodejs:
  Installed: (none)
  Candidate: 18.19.1+dfsg-6ubuntu5
  Version table:
     18.19.1+dfsg-6ubuntu5 500
        500 http://sgp1.clouds.archive.ubuntu.com/ubuntu noble/universe amd64 Packages

Node.js 18은 2025년 4월에 지원이 끝난 버전이고, 이 문서를 확인한 날의 최신 LTS는 24입니다. 이 문서는 apt 대신 nvm(Node Version Manager)으로 설치합니다. nvm은 nodejs.org의 공식 파일을 내려받아 사용자 폴더(~/.nvm)에 설치하기 때문에 sudo가 필요 없고, 여러 버전을 설치해 두고 명령 한 줄로 바꿔 쓸 수 있습니다.

3. nvm 설치

nvm 설치 스크립트를 내려받아 실행합니다. 이 문서는 확인한 날의 최신 버전인 nvm 0.40.8을 설치합니다. curl -o-는 내려받은 내용을 파일로 저장하지 않고 화면으로 출력한다는 뜻이고, 그 내용을 | bash로 넘겨 바로 실행합니다.

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.8/install.sh | bash
=> Downloading nvm from git to '/home/devuser/.nvm'
=> Cloning into '/home/devuser/.nvm'...
…
=> Compressing and cleaning up git repository

=> Appending nvm source string to /home/devuser/.bashrc
=> Appending bash_completion source string to /home/devuser/.bashrc
=> Close and reopen your terminal to start using nvm or run the following to use it now:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

nvm은 ~/.nvm 폴더에 설치되고, 터미널을 열 때마다 nvm을 불러오는 세 줄이 ~/.bashrc 끝에 추가됩니다.

4. nvm 설치 확인

설치한 터미널에서 바로 nvm을 실행하면 명령을 찾을 수 없다는 메시지가 표시됩니다. 이 터미널은 ~/.bashrc에 세 줄이 추가되기 전에 열렸기 때문입니다.

nvm --version
Command 'nvm' not found, did you mean:
  command 'nm' from deb binutils (2.42-4ubuntu2.10)
  command 'num' from deb quickcal (2.4-1)
  command 'nam' from deb nam (1.15-6)
  …
Try: sudo apt install <deb name>

안내된 패키지를 설치하지 마세요. 터미널을 닫고 새로 열거나(SSH라면 접속을 끊고 다시 접속), 아래 명령으로 ~/.bashrc를 다시 읽습니다. 출력은 없습니다.

source ~/.bashrc
nvm --version
0.40.8

5. Node.js LTS 설치

LTS는 오래 지원되는 안정 버전입니다. 특별한 이유가 없으면 LTS를 설치합니다. --lts를 붙이면 가장 최신 LTS 버전을 찾아 설치합니다.

nvm install --lts
Installing latest LTS version.
Downloading and installing node v24.22.0...
Downloading https://nodejs.org/dist/v24.22.0/node-v24.22.0-linux-x64.tar.xz...
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v24.22.0 (npm v11.19.1)
Creating default alias: default -> lts/* (-> v24.22.0 *)

처음 설치한 버전은 기본 버전(default)으로 지정되어, 새 터미널을 열 때마다 이 버전이 사용됩니다. node, npm, npx가 실행되는지 확인합니다.

node -v
v24.22.0
npm -v
11.19.1
npx -v
11.19.1

실행되는 node 파일의 위치도 확인할 수 있습니다. 사용자 폴더 안의 .nvm 폴더에 설치되어 있습니다.

which node
/home/devuser/.nvm/versions/node/v24.22.0/bin/node

6. 다른 버전 설치와 전환

설치할 수 있는 버전은 nvm ls-remote로 확인합니다. 숫자를 적으면 그 메이저 버전만 표시되고, tail -n 3은 마지막 3줄만 보여 준다는 뜻입니다.

nvm ls-remote 22 | tail -n 3
       v22.23.1   (LTS: Jod)
       v22.23.2   (LTS: Jod)
       v22.23.3   (Latest LTS: Jod)

Node.js 22를 추가로 설치합니다. 메이저 버전만 적으면 그 버전의 최신 버전이 설치되고, 지금 열려 있는 터미널은 바로 그 버전으로 바뀝니다.

nvm install 22
Downloading and installing node v22.23.3...
Downloading https://nodejs.org/dist/v22.23.3/node-v22.23.3-linux-x64.tar.xz...
######################################################################## 100.0%
Computing checksum with sha256sum
Checksums matched!
Now using node v22.23.3 (npm v10.9.9)
node -v
v22.23.3

설치된 버전 목록을 확인합니다. ->가 붙은 것이 지금 터미널에서 쓰는 버전이고, default는 새 터미널을 열 때 쓰는 버전입니다. 아래쪽에 이어지는 lts/… 줄은 버전 이름 목록이라 생략했습니다.

nvm ls
->     v22.23.3
       v24.22.0
default -> lts/* (-> v24.22.0)

nvm install 22로 바뀐 것은 그 터미널뿐입니다. 터미널을 새로 열면 다시 기본 버전인 v24.22.0이 사용됩니다.

node -v
v24.22.0

지금 터미널만 다른 버전으로 바꿀 때는 nvm use를 씁니다.

nvm use 22
Now using node v22.23.3 (npm v10.9.9)
node -v
v22.23.3

새 터미널에서도 계속 22를 쓰려면 기본 버전을 바꿉니다.

nvm alias default 22
default -> 22 (-> v22.23.3)

터미널을 새로 열면 22가 사용됩니다.

node -v
v22.23.3

기본 버전을 다시 24로 돌리고, 지금 터미널도 기본 버전으로 바꿉니다.

nvm alias default 24
default -> 24 (-> v24.22.0)
nvm use default
Now using node v24.22.0 (npm v11.19.1)

7. npm으로 첫 프로젝트 실행

설치가 제대로 되었는지 npm 패키지를 하나 설치해 실행해 봅니다. 홈 폴더 아래에 hello-node 폴더를 만들고 들어갑니다. npm init -y는 질문 없이 기본값으로 package.json 파일을 만든다는 뜻입니다.

mkdir hello-node && cd hello-node
npm init -y
Wrote to /home/devuser/hello-node/package.json:

{
  "name": "hello-node",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "keywords": [],
  "author": "",
  "license": "ISC",
  "type": "commonjs"
}

날짜를 다루는 dayjs 패키지를 설치합니다.

npm install dayjs
added 1 package, and audited 2 packages in 1s
found 0 vulnerabilities

dayjs를 쓰는 index.js 파일을 만들고 실행합니다. 첫 줄은 따옴표 안의 내용으로 파일을 만드는 명령이라 출력이 없습니다.

echo "const dayjs = require('dayjs'); console.log('Hello Node.js', process.version, dayjs().format('YYYY-MM-DD'));" > index.js
node index.js
Hello Node.js v24.22.0 2026-10-15

Node.js 버전과 오늘 날짜가 표시되면 Node.js와 npm이 모두 정상입니다.

8. 문제 해결

Command 'nvm' not found, did you mean:

nvm을 설치하기 전에 열어 둔 터미널에서 실행했다는 뜻입니다. 이 터미널은 설치 후 ~/.bashrc에 추가된 세 줄을 읽지 않았습니다. 터미널을 닫고 새로 열거나 source ~/.bashrc를 실행하세요. 함께 표시되는 패키지 목록은 이름이 비슷한 다른 프로그램이라 nvm과 관계없으므로 설치하지 않습니다. 새 터미널에서도 같으면 tail -n 3 ~/.bashrc로 NVM_DIR 세 줄이 있는지 확인하세요.

sudo: node: command not found

nvm으로 설치한 Node.js는 사용자 폴더(~/.nvm)에 있는데, sudo는 명령을 찾는 경로(PATH)를 시스템 기본 경로로 바꿔 실행하기 때문에 이 폴더를 찾지 못합니다. node·npm은 sudo 없이 실행하세요.

sudo node -v
sudo: node: command not found
Command 'node' not found, but can be installed with:

Node.js가 설치되지 않았거나, nvm을 불러오지 않은 터미널이라는 뜻입니다. 먼저 nvm --version으로 nvm이 실행되는지 확인하세요. nvm도 찾을 수 없다면 위 항목대로 터미널을 새로 열고, nvm은 실행되는데 이 메시지가 나오면 nvm ls로 설치된 버전이 있는지 확인하세요. 안내된 sudo apt install nodejs는 Ubuntu 저장소의 Node.js 18을 설치하므로 실행하지 않습니다.

nvm: Cannot uninstall currently-active node version

지금 터미널에서 쓰고 있는 버전은 삭제할 수 없습니다. nvm use로 다른 버전으로 바꾼 뒤 삭제하세요. 9단계에서 실제 메시지를 볼 수 있습니다.

9. 삭제하기

Node.js 버전 하나만 삭제

nvm으로 설치한 버전 중 하나만 지울 때는 nvm uninstall을 씁니다. 먼저 홈 폴더로 돌아갑니다. 지금 쓰고 있는 버전은 삭제되지 않습니다.

cd ~
nvm uninstall 24
nvm: Cannot uninstall currently-active node version, v24.22.0 (inferred from 24).

쓰고 있지 않은 22는 삭제됩니다.

nvm uninstall 22
Uninstalled node v22.23.3
nvm ls
->     v24.22.0
default -> 24 (-> v24.22.0)

nvm과 Node.js 모두 삭제

nvm과 nvm으로 설치한 Node.js는 모두 ~/.nvm 폴더 안에 있습니다. 먼저 3단계에서 ~/.bashrc에 추가된 세 줄을 확인합니다.

tail -n 3 ~/.bashrc
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

~/.nvm 폴더와 npm이 내려받은 패키지를 보관하는 ~/.npm 폴더, 7단계의 연습용 ~/hello-node 폴더를 지웁니다. 이어서 ~/.bashrc에서 NVM_DIR이 들어간 세 줄을 지웁니다. sed -i는 파일을 바로 고친다는 뜻이고, /NVM_DIR/d는 NVM_DIR이 들어간 줄을 지운다는 뜻입니다. 두 명령 모두 출력이 없습니다.

rm -rf ~/.nvm ~/.npm ~/hello-node
sed -i '/NVM_DIR/d' ~/.bashrc

터미널을 닫고 새로 열어 확인합니다. node와 nvm 모두 명령을 찾을 수 없다고 표시되면 삭제된 것입니다.

node -v
Command 'node' not found, but can be installed with:
sudo apt install nodejs
nvm --version
Command 'nvm' not found, did you mean:
  command 'nsm' from deb linuxptp (4.0-1ubuntu1.1)
  command 'nam' from deb nam (1.15-6)
  command 'nm' from deb binutils (2.42-4ubuntu2.10)
  …
Try: sudo apt install <deb name>

직접 해 보기

서버가 없다면 아래 업체에서 몇 분이면 Ubuntu 서버를 만들 수 있습니다. 이 문서는 DigitalOcean 에서 검증했습니다.