I just installed nodejs version 0.10.14 using nvm it installed successfully. also before installing nodejs, I installed zeromq version 2.2.0.
For test purpose I was trying to run a basic pub example below.
var zmq = require('zmq');
var socket = zmq.socket('pub');
console.log("Binding socket on port 8800...");
socket.bind('tcp://localhost:8800', function(err){
if(err){
console.log(err)
} else{
console.log("listening on port 8800");
}
});
socket.send("hello this is testServer2 on port 8800...");
but it was throwing error -
events.js:72
throw er; // Unhandled 'error' event
^
TypeError: Socket is busy
at Socket._ioevents (/home/zishan/node_modules/zmq/lib/index.js:198:22)
at Socket._flush (/home/zishan/node_modules/zmq/lib/index.js:343:23)
at Socket.send (/home/zishan/node_modules/zmq/lib/index.js:318:42)
at Object.<anonymous> (/home/zishan/newsURLCollector/testServer2.js:16:8)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
port 8800 is already opened using ufw.
I tried googling the socket busy error but with no luck, than I thought it's good to reboot Ubuntu and the problem goes even worse. when I log back in and tries to run the above example again, system throws the message:
zishan@news01:~/newsURLCollector$ node testServer2.js
The program 'node' can be found in the following packages:
* node
* nodejs-legacy
Try: sudo apt-get install <selected package>
WHY on earth a working node stops working and is unable to find node. then I followed the system prompt and did sudo apt-get install node below is the result:
zishan@news01:~$ sudo apt-get install node
[sudo] password for zishan:
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following package was automatically installed and is no longer required:
libpgm-5.1-0
Use 'apt-get autoremove' to remove it.
The following NEW packages will be installed
node
0 upgraded, 1 newly installed, 0 to remove and 4 not upgraded.
Need to get 0 B/1,284 B of archives.
After this operation, 38.9 kB of additional disk space will be used.
Selecting previously unselected package node.
(Reading database ... 66172 files and directories currently installed.)
Unpacking node (from .../node_0.3.2-7.4_all.deb) ...
Processing triggers for man-db ...
Setting up node (0.3.2-7.4) ...
zishan@news01:~$ node -v
then i tried to find the node version but nothing is happening, I am not getting a node prompt now but when i did "which node" it says - /usr/sbin/node
I do not know what is wrong after the reboot. Could any one please explain.
When NVM loads, it loads whatever version of Node is currently marked as default
.
nvm install v0.10.14
will install v0.10.14
and tell NVM to make it available for you to use by typing node
in your current terminal, but it does not mark it as default, since you could just as easily have installed 5 versions of node. NVM also does not do anything fancy like remember what version of Node you were using last, since maybe you have 10 terminals open with a different version in each one.
All you need to do was run nvm use v0.10.14
to tell your given terminal to expose v0.10.14
as node
.
In your case, the best thing to do would probably be to set it as the default, so it will use it on every restart and new terminal:
nvm alias default v0.10.14
As you figured out already, by running
apt-get install node
you installed this: http://packages.qa.debian.org/n/node.html
I would recommend you also now apt-get remove nodejs
and stick with nvm
. The deb
packages get out-of-date fairly rapidly and using NVM will allow you to keep up much more easily.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With