Here you will find four different ways to install Node.js and the npm package manager. Which one will you choose?
In this guide, we will install the latest versions of Node.js and NPM in Ubuntu, RedHat, CentOS, and Manjaro and run the first application in Linux.
Table of Contents
Method to Install Node.js in Linux
There are several different way to install Node.js in your Linux like:
- Install Node.js from the package manager of your Linux distribution: One of the popular ways to install node.js is from the package manager, but you will not find the latest version here.
- Install Node.js and npm using the binary files: This method allows you to have the latest version of Node.js and npm installed on your system, but for future releases, you need to manually download and follow the steps again.
- Install Node.js from the NodeSource repository/PPA: If you are sure which Node.js version you need for your project, then you can use the NodeSource repository method to get the required version of Node.js.
- Install Node.js and npm using the NVM repository: It will allow you to install the latest version of Node.js and will also provide you with support for having multiple versions of Node.js installed on the same system, which can be useful for testing and development purposes.
If you are not sure which version of Node.js your project requires, then please check the documentation, or README, of the project, because some projects will not work if the runtime version is different.
Anyway, if you want my suggestion, then I’ll suggest you go with the NodeSource or NVM repository.
Install Node.js via package manager
One of the simplest ways to install Node.js is using the package manager, but the drawback of this method is that you will not find the latest release.
If you are okay with that release version, then run one of the following commands as per your distribution package manager to install Node.js and npm:
$ sudo apt install nodejs $ sudo apt install npm
$ dnf install nodejs $ dnf install npm
$ pacman -Sy nodejs $ pacman -Sy npm
$ node -v #To check Nodejs is installed $ npm -v #To check NPM is installed
The output of the above command confirms that Node.js and npm were successfully installed, and with that, you can move on to the next step where you will run short script to test the functionality of Node.js and npm.
Install Node.js and npm using the binary files
There is also another way to install the latest version of Node.js on your system, no matter what distribution you are using.
You just need to download the .tar package from the download page and run the following command in the given sequence to properly move and set the path for Node.js.
At the time of writing this article, the latest and most stable LTS release of Node JS is 18.15.0 with npm 9.5.0, so let me first download the latest “LTS tar” file, but if you want to have a more recent version, then you can switch tabs to “Current “, and download the file as per your system architecture.
$ sudo tar xvf Downloads/node-v18.15.0-linux-x64.tar.xz -C /usr/local/lib/
After extracting the file to /usr/local/lib/, you need to set the node.js environment variable so you can use node and the npm command in a terminal at any time and from anywhere.
If you are using the zsh or bash shell, then copy the export PATH=/usr/local/lib/node-v18.15.0-linux-x64/bin:$PATH by replacing with your node version, into ~/.zshrc or ~/.bashrc as shown below.
$ nano ~/.bashrc $ export PATH=/usr/local/lib/node-v18.15.0-linux-x64/bin:$PATH
To reflect the changes, you can restart your shell or run the following command:
$ source ~/.bashrc or $ source ~/.zshrc
Once everything is done, you can verify the installation by executing
$ node --version && npm --version
After that, you can move on to the next section to test the short script.
Install Node.js from NodeSource repository
Alternatively, if you are using Ubuntu, Debian, or RHEL based distributions, you can take advantage of adding the nodesource repository information to your system and get the latest version of node.js from your system package manager.
So let’s start the installation by first adding repository information for the latest Node.js release of version 18 by running the following command:
$ curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - // Ubuntu-based distributions $ curl -fsSL https://deb.nodesource.com/setup_lts.x | bash - // Debian-based distrbutions $ curl -fsSL https://rpm.nodesource.com/setup_lts.x | sudo bash - // RHEL-based distributions
If you want another version of Node.js, run any of the following commands:
Ubuntu based distributions
$ curl -fsSL https://deb.nodesource.com/setup_19.x | sudo -E bash - // Node.js 19 $ curl -fsSL https://deb.nodesource.com/setup_18.x | sudo -E bash - // Node.js 18 $ curl -fsSL https://deb.nodesource.com/setup_16.x | sudo -E bash - // Node.js 16 $ curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash - // Node.js 14
Debian based distributions
$ curl -fsSL https://deb.nodesource.com/setup_19.x | bash - &&\ // Node.js 19 $ curl -fsSL https://deb.nodesource.com/setup_18.x | bash - &&\ // Node.js 18 $ curl -fsSL https://deb.nodesource.com/setup_16.x | bash - &&\ // Node.js 16 $ curl -fsSL https://deb.nodesource.com/setup_14.x | bash - &&\ // Node.js 14
RHEL, CentOS, CloudLinux, Amazon Linux or Fedora
$ curl -fsSL https://rpm.nodesource.com/setup_19.x | sudo bash - // Node.js 19 $ curl -fsSL https://rpm.nodesource.com/setup_18.x | sudo bash - // Node.js 18 $ curl -fsSL https://rpm.nodesource.com/setup_16.x | sudo bash - // Node.js 16 $ curl -fsSL https://rpm.nodesource.com/setup_14.x | sudo bash - // Node.js 14
Once you’re done adding the source information, let’s install Node.js by running the following as per your distribution’s package manager.
$ sudo apt install nodejs $ sudo dnf install nodejs
Finally, execute the last command, which will check and show you the installed version of nodejs and npm package manager.
$ node --version && npm --version
To find more information about the NodeSource repository, click here.
Install Node.js and npm using the NVM repository
When you want to have multiple versions of node.js installed on your system, then you should go with Node Version Manager (nvm), which will allow you to quickly install and use different versions of node.js via the command line.
To get started with this method, you need to first get the installation script from Github, which I have already done for you, so you just need to invoke any of the following commands:
$ wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash OR $ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
The behaviour of the above command is shown below.
Once the installation is done, restart your shell to find the nvm command in your shell, which you will use to download the latest or multiple node js in your Linux system for development purposes.
Let’s see what versions of Shell you can install on your system by running the below command:
$ nvm list-remote or $ nvm ls-remote
Here is the output of the above command:
From the above list, let me download the latest version of node 18.15.0 (Hydrogen) by running the below command, and if you want any other version, then replace the version with another version number.
$ nvm install 18.15.0 $ node -v && npm --version
The output below confirms that node.js and npm were successfully installed on the system.
If you want to install any other version of node.js, then you can run the same command, which will install and replace the default node version with the last installed node.js version.
$ nvm install 19.7.0
But don’t worry; it will just replace the node version, and you can get back to your desired node version anytime. For this first let’s find all the installed versions of node js that have been installed using nvm.
$ nvm ls or $ nvm list
As you can see from the below image that “-> v19.7.0″ is the current Node.js version.
To change the current node version, use the next command, which will change the node version from 19 to 18 by executing the following command.
$ nvm use node 18
There is more to learn from the nvm script, which includes a usage and troubleshooting guide. All the information you need can be found at this link.
Run Node.js using Terminal
After completing the installation process, let me show you how you can use the node command in your terminal. So first, open your terminal using Ctrl+Alt+T and type the below command to get into the Node.js console.
$ node >
Once the “$” turns into a “>” (greater-than symbol), that means you’re now in the node.js console.
Let me start by writing one line of code to print “Hello, TREND OCEANS”
> console.log("Hello, TREND OCEANS")
If you look at the end of the line, there is an undefined output. What’s that?
Why Node.js displays “Undefined” in the Console
By default, if you do not specify anything in the return place, then the Node.js runtime will output “undefined” at the end. To avoid it, you can specify anything in return.
> console.log("Hello, TREND OCEANS") || 0;
Above I have specified 0 in return which replaces undefined.
Run Node Js using Script
It’s not a good idea to use the console to write scripts.
Write your code in your favourite text editor, like Visual Studio Code, and save your file using “.js” as an extension.
To run the script, use the node command and specify the script’s path in the terminal.
$ node script.js 10
That’s all for this article, where you learned how to install the latest version of node.js on your system.
If you are downloading and running a programme from Github or any other version control system, then make sure to read the “README” file to check which runtime versions are compatible with the programme.
And If you found any difficulty while installing or running, let us know in the comment section.
Innovative tech mind with 12 years of experience working as a computer programmer, web developer, and security researcher. Capable of working with a variety of technology and software solutions, and managing databases.