Node.js und npm auf Debian installieren

Veröffentlicht am Aktualisiert am 5 Min. Lesezeit

Node.js 10 und 12 sind längst ohne Support. So installieren Sie die aktuelle LTS-Version samt npm auf Debian, über NodeSource mit Signaturschlüssel unter /etc/apt/keyrings.

Node.js ist die Laufzeitumgebung hinter unzähligen Webanwendungen, APIs und Discord-Bots. Auf einem eigenen Server installieren Sie es in wenigen Minuten. In dieser Anleitung richten Sie Node.js samt npm auf Debian 13, Debian 12 und Debian 11 ein. Auf Ubuntu funktionieren dieselben Befehle.

Wichtig ist die Wahl der richtigen Version. Die früher verbreiteten Anleitungen für Node.js 10 und Node.js 12 sind überholt: beide Versionen bekommen seit Jahren keine Sicherheitsaktualisierungen mehr und sollten auf keinem Server mehr laufen.

Welche Node.js-Version sollten Sie installieren?

Node.js erscheint zweimal im Jahr in einer neuen Hauptversion. Nur die geraden Versionsnummern werden zu einer LTS-Linie (Long Term Support) und danach rund drei Jahre lang gepflegt. Ungerade Versionen sind kurzlebige Entwicklungslinien und für Produktivsysteme nicht gedacht.

  • Node.js 24 LTS ("Krypton"): die aktuelle Empfehlung für neue Projekte und Produktivserver.
  • Node.js 22 LTS: weiterhin verbreitet, sinnvoll wenn eine Anwendung ausdrücklich diese Version verlangt.
  • Node.js 10 und 12: seit 2021 beziehungsweise 2022 ohne Support. Nicht mehr verwenden.

Prüfen Sie im Zweifel die Angaben Ihrer Anwendung. Viele Projekte hinterlegen die geforderte Version im Feld "engines" ihrer Datei package.json.

Voraussetzungen

  • Root-Zugriff auf Ihren vServer oder Rootserver über SSH.
  • Ein aktuelles Debian. Bringen Sie das System zuerst auf den neuesten Stand:
apt update && apt upgrade -y

Für den Bezug der Paketquelle brauchen Sie außerdem einige Standardwerkzeuge:

apt install -y ca-certificates curl gnupg

Variante 1: Node.js aus den Debian-Paketquellen

Der einfachste Weg führt über die mitgelieferten Paketquellen:

apt install nodejs npm -y

Der Vorteil: Aktualisierungen kommen automatisch mit den übrigen Systemupdates. Der Nachteil: Die Debian-Pakete hinken der aktuellen LTS-Linie meist ein bis zwei Hauptversionen hinterher. Welche Version bei Ihnen bereitliegt, sehen Sie vor der Installation mit:

apt-cache policy nodejs

Stand Juli 2026 liefern die Paketquellen: Debian 13 "Trixie" Node.js 20.19, Debian 12 "Bookworm" Node.js 18.20, Ubuntu 24.04 Node.js 18.19, Ubuntu 22.04 Node.js 12.22. Reicht Ihnen das, sind Sie hier fertig. Brauchen Sie eine aktuelle LTS-Linie, nehmen Sie Variante 2.

Variante 2: Node.js 24 LTS über NodeSource installieren

NodeSource stellt offizielle Paketquellen für Debian und Ubuntu bereit. Damit erhalten Sie genau die gewünschte Hauptversion und weiterhin Aktualisierungen über apt.

Signaturschlüssel hinterlegen

Der frühere Weg über apt-key ist entfallen. Seit Debian 11 gehören Signaturschlüssel in ein eigenes Verzeichnis unter /etc/apt/keyrings/:

mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg

Paketquelle eintragen und installieren

Tragen Sie anschließend die Paketquelle ein. Über die Variable legen Sie die gewünschte Hauptversion fest, hier 24:

NODE_MAJOR=24
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list

Für Node.js 22 setzen Sie stattdessen NODE_MAJOR=22. Danach folgt die eigentliche Installation:

apt update
apt install nodejs -y

npm ist im NodeSource-Paket bereits enthalten. Installieren Sie das Debian-Paket "npm" hier nicht zusätzlich, sonst entsteht ein Paketkonflikt.

Der kurze Weg über das Setup-Skript

NodeSource bietet zusätzlich ein Skript an, das die beiden Schritte oben zusammenfasst:

curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install nodejs -y

Bequem, aber Sie führen ein aus dem Netz geladenes Skript mit Root-Rechten aus. Auf Produktivservern ist der Weg über Schlüssel und Paketquelle die sauberere Wahl.

Installation überprüfen

Fragen Sie zum Abschluss beide Versionen ab:

node --version
npm --version

Erscheint bei node eine Ausgabe, die mit v22. beginnt, und bei npm eine Versionsnummer, war die Installation erfolgreich.

Falls Sie yarn oder pnpm einsetzen möchten: Beide lassen sich über das in Node.js enthaltene Corepack aktivieren, eine separate Installation ist nicht nötig:

corepack enable

Mehrere Node.js-Versionen parallel betreiben

Wenn Sie auf einem Server mehrere Anwendungen mit unterschiedlichen Anforderungen betreiben, hilft der Node Version Manager (nvm). Er installiert Node.js im Benutzerverzeichnis, sodass sich mehrere Versionen nebeneinander betreiben und pro Projekt umschalten lassen.

Nach der Installation von nvm (halten Sie sich dabei an die Anleitung im offiziellen Projekt) genügen diese Befehle:

nvm install 24
nvm use 24
nvm alias default 24

Wichtig: nvm gehört immer einem einzelnen Benutzer. Systemdienste, die als anderer Benutzer laufen, finden diese Node.js-Installation nicht. Für Dienste ist die Paketinstallation der zuverlässigere Weg.

Auf eine neuere Version wechseln

Steht später ein Wechsel auf eine neue LTS-Linie an, ändern Sie einfach die Versionsnummer in der Paketquelle und aktualisieren Sie:

NODE_MAJOR=24
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | tee /etc/apt/sources.list.d/nodesource.list
apt update && apt install nodejs -y

Testen Sie Ihre Anwendung nach einem Versionssprung. Zwischen zwei Hauptversionen können sich Schnittstellen ändern, und ältere native Module müssen unter Umständen neu gebaut werden.

Häufige Fehler

  • "E: Unable to locate package nodejs": Nach dem Eintragen der Paketquelle wurde apt update vergessen.
  • Paketkonflikt zwischen nodejs und npm: Sie haben das Debian-Paket "npm" neben dem NodeSource-Paket installiert. Entfernen Sie npm mit apt remove npm, die passende Version bringt Node.js selbst mit.
  • "NO_PUBKEY" oder "signatures couldn't be verified": Der Signaturschlüssel liegt nicht unter /etc/apt/keyrings/ oder die Zeile in der Paketquelle enthält keinen passenden signed-by-Verweis.
  • Es wird weiterhin eine alte Version angezeigt: Auf dem System liegen Reste einer früheren Installation. Löschen Sie alte Dateien unter /etc/apt/sources.list.d/, die auf nodesource verweisen, und installieren Sie danach erneut.
  • Ein npm-Paket bricht beim Kompilieren ab: Für native Module fehlen die Bauwerkzeuge. Installieren Sie sie mit apt install -y build-essential python3.

Häufige Fragen

Welche Node.js-Version sollte ich installieren?
Für neue Projekte die aktuelle LTS-Linie, also Node.js 22. Node.js 20 ist weiterhin verbreitet und sinnvoll, wenn eine Anwendung genau diese Version verlangt. Node.js 10 und 12 erhalten seit Jahren keine Sicherheitsaktualisierungen mehr.
Warum ist die Version aus dem Debian-Repository so alt?
Debian friert Paketversionen zum Zeitpunkt einer Veröffentlichung ein und liefert danach nur noch Sicherheitskorrekturen. Wenn Sie eine bestimmte Hauptversion brauchen, führt der Weg über die NodeSource-Paketquelle.
Muss ich npm getrennt installieren?
Nein. Das Paket von NodeSource bringt npm bereits mit. Installieren Sie das Debian-Paket npm nicht zusätzlich, sonst entsteht ein Paketkonflikt.
Wie wechsle ich später auf eine neuere Version?
Ändern Sie die Versionsnummer in der Paketquelle unter /etc/apt/sources.list.d/ und führen Sie apt update sowie apt install nodejs erneut aus. Testen Sie Ihre Anwendung danach, da sich zwischen Hauptversionen Schnittstellen ändern können.
Warum liegt der Signaturschlüssel unter /etc/apt/keyrings?
Der frühere Befehl apt-key ist entfallen. Signaturschlüssel gehören seit Debian 11 in ein eigenes Verzeichnis und werden der Paketquelle über die Option signed-by zugeordnet.

Node.js npm NodeSource Debian LTS nvm apt