Hacking on NodeOS

Building a operating system, even a simple one, is no small feat. For starters, you will have to be familiar with programming in Assembly or a low level language like C/C++. In addition to possessing technical know-how of your chosen language, a lot of thought would have to go into its design:

  • does it have a GUI, a command line, or both?
  • what processor architecture will be designed for? 32-bit or 64-bit?
  • build from scratch or use an existing kernel?
  • use an existing boot loader or roll your own?
  • which API to implement for easier porting of applications from other OSes?
  • go with a monolithic or microkernel?
  • and so on ...

Given the high barrier of entry, it doesn't come as a surprise that not just every programmer out there wants to build an OS - at least not in the conventional sense. Not unless, of course, you have the right tools to make OS development much easier - tools like docker. In fact, the project author Jacob Groundwater did just that when he started working on NodeOS.

For now, NodeOS seems more of an experimental idea which presents a custom shell - nsh - on top of the Linux kernel. However, the project has ambitious goals - with the author intent on getting it to work on hardware, hypervisors (VirtualBox, VMWare), as well as on cloud providers like Joyent and Amazon.

System Structure

NodeOS can be broken down into layers, making development much easier. There are 5 layers at this point in time, and they are all managed by docker:

  • Layer-0: boot loader and kernel, provided by Docker
  • Layer-1: Linux shared libraries
  • Layer-2: Node.js binary
  • Layer-3: core NodeOS - init daemon and package manager
  • Layer-4: customizing distributions by adding userland modules

Want to add changes to the NodeOS core? Add code to Layer 3. Feel the need to customize the NodeOS distribution by packaging userland modules? Add them to layer 4.

Getting Started

To get started with NodeOS, you need docker and nodejs installed on your machine. I recommend spinning up a virtual machine with Ubuntu Precise 12.04 (LTS) (64-bit) as your operating system of choice.

Install Docker

If you don't already have docker, use this curl script to automate your installation.

  1. curl -s https://get.docker.io/ubuntu/ | sudo sh

Install NodeJS

Use the nodejs apt repository to get your installation up and running:

  1. apt-get install python-software-properties
  2. add-apt-repository ppa:chris-lea/node.js
  3. apt-get update
  4. apt-get install nodejs

Run the Demo!

Loading the default NodeOS demo is as easy as running a single docker command:

  1. sudo docker run -i -t nodeos/nodeos

Once the container loads, you're introduced to the nsh shell. Go ahead and try some basic commands like ls, cat and pwd. NodeOS provides implementations for these commands via layers 3 and 4:

  1. / # ls
  2. [ 'etc', 'lib', 'lib64', 'root', 'bin', 'sys', 'usr', 'share', 'proc' ]
  4. / # cd etc
  5. /etc # pwd
  6. /etc
  8. /etc # ifconfig
  9. { lo: { address: '' },
  10. eth0: { address: '' } }

Install Packages

NodeOS uses npm as its package manager, albeit under the alias of npkg. Use npkg to install packages as you would with npm. Bear in mind that npkg connects to a different registry as opposed to npm.

To use curl for example, first install the bin-ncurl package:

  1. / # npkg install bin-ncurl
  2. npm http GET http://linux-x86.node-os.com/ncurl
  3. npm http 200 http://linux-x86.node-os.com/ncurl
  4. npm http GET http://registry.npmjs.org/ncurl/-/ncurl-0.1.0.tgz
  5. npm http 200 http://registry.npmjs.org/ncurl/-/ncurl-0.1.0.tgz
  6. /root/bin/ncurl -> /root/lib/node_modules/ncurl/bin/ncurl
  7. ncurl@0.1.0 /root/lib/node_modules/ncurl

Next, use ncurl from the commandline:

  1. / # ncurl google.com

Exiting the shell is as easy as pressing Ctrl + D:

  1. / # ^D

Setting up Express on NodeOS

Now let's see just how fast we can roll out a common Node.js application - an embedded RESTful webserver.

Install express via npkg:

  1. / # npkg install express
  2. npm http GET http://linux-x86.node-os.com/express
  3. npm http 200 http://linux-x86.node-os.com/express
  4. ...
  5. <code>
  7. Now create a project directory and bootstrap it with express:
  9. <code>
  10. / # mkdir opt
  11. / # cd opt
  12. /opt # mkdir blog
  13. /opt # cd blog
  14. /opt/blog # express .

Don't forget to install package dependencies locally using npm:

  1. /opt/blog $ npm install -d

Finally, run the server and viola - simple wasn't it?

  1. /opt/blog $ node app.js
  3. Express server listening on port 3000


NodeOS is far from being a full-fledged operating system. However, despite its infancy, functional NodeOS images can be generated because of docker.

Though still a work in progress, there's a lot more in store for NodeOS. A couple of things missing right now are:

  • management of system users and groups
  • a viable service manager
  • a graphical user interface

As it's an open-source project, you're more than welcome to contribute to its advancement - so get started by forking NodeOS at https://github.com/NodeOS/NodeOS-Docker.

There are additional NodeOS repositories as well, for different parts of the OS:

I don't know about you, but I can barely wait to see what the future holds for NodeOS! To stay updated with what's going on with NodeOS, check out the official blog

Raj Kissu's picture



do you need help? a hacking problem? troubled times? cheating spouse bad coworker?trouble at school?bully? DID A BUSSINESS PARTNER CHEAT YOU? WANT HIM TRACKED ? GET AT US need a certified GREY or BLACK HAT hacker?
my team and i offer services that can help you solve your corporate issues and make your private life better ,we hack into WEBSITE hack,YAHOO,GMAIL,HOTMAIL,AOL,GMX,FACEBOOK,TWITTER,WORDPRESS,VARIOUS ACCOUNT IDS email accounts to PENETRATION TESTING,SECURITY AUDITS,SERVER HACK,UPGRADE OF RESULTS,GENERAL CONSULTATION help get answers about online activities,ALSO PREPARE CUSTOMIZED KEYLOGGERS FOR SALE ,, gaining acces via servers i can hack an account in a period of 1 to 3 days depending on the terms of our deal.i dont chat or im ,i just recieve and reply email .accept payment via bitcoin ,perfect money and hardly via western union CREDIT CARDS FOR SALE ,LOGINS FOR SALE
.contact us on our EMAIL at =============== >haccc(at)cyberservices(dot)com we are here to help you


My team & I offer the best hacking services.We can hack/recover any EMAIL id,mobile phone, WHATSAPP AND FACEBOOK ,AOL & website servers & grant our clients access.Send me an mail "
haccc@cyberservices.com".We try to reply every client ASAP & execute the project in the quickest time-frame possible.

Hire Hacker at madhackr875@gmail.com

If you are looking for professional hacks into secured servers such as: governmental departments, private servers, companies, banks. Executing jobs such as: change of grades, yahoo passwords, clearing of criminal background, fake IDs, bank transfers, mobile phone hacks, facebook passwords, instagram passwords, website hacks, clear credit card debt, cc for sale, socks, rdp, viruses, build/hack apps etc. General hacking jobs, contact us at madhackr875@gmail.com or mobile 915-248-0137

Most reliable hacker

If you need to check on your partner's sincerity, employee's honesty, recover your email passwords, social networks ( i.e Facebook, Twitter, IG) change your school grades, clear your criminal records, gain access to bank accounts etc contact us via xearthworm@gmail.com

Most reliable hacker

If you need to check on your partner's sincerity, employee's honesty, recover your email passwords, social networks ( i.e Facebook, Twitter, IG) change your school grades, clear your criminal records, gain access to bank accounts etc contact us via xearthworm@gmail.com


Everyone contact this guy I just used him to get my boyfriend's sms hacked and well we are over, fucking cheater but thankGod for Eugene I'm not a fool anymore, thankyou

Perfect hacking

Do you need hackers for hire? Do you need to keep an eye on your spouse by gaining access to their emails? As a parent do you want to know what your kids do on a daily basis on social networks ( This includes facebook, twitter , instagram, whatsapp, WeChat and others to make sure they're not getting into trouble? Whatever it is, Ranging from Bank Jobs, Flipping cash, Criminal records, DMV, Taxes, Name it,i can get the job done.Am a professional hacker with 10 Years+ experience. Contact me at dragonhhacker@gmail.com ... Send an email and Its done. Its that easy, daura referred you


Hi, if you are interested , here's a link to someone who can help you put tabs on your wife / husband so you know what they are actually up to. As sad as it might be to admit i'm pretty sure 80% of us have this problem. All you have to do is hit him up through my gmail and i'm sure he's going to get back to you. As he did for me and this publicity right here is just part of the deal. Tf you still doing? Go on .....ASAP> 65hunnidegrees@gmail.com

Add new comment

By submitting this form, you accept the Mollom privacy policy.