Ubuntu: The Free, Open-source OS

Ubuntu: The Free, Open-source OS

When I was in high school, I learned in computer class on how to install an operating system on a PC. One day, I got an old HP Mini 1100 PC that has a Windows 7 OS, and it was just hell. That's when I first tried Linux. So, what is Linux?

What is Linux?

Well, Linux is a family of operating system that is based on the Linux kernel, and Ubuntu is one of them. It is most well known for being free and open-sourced, meaning that you could take a look at the source code of the whole operating system and even contribute to it. For most of typical daily user, using Linux would a little bit overwhelming at first since it has a different user interface, a different file system, and it might not support your daily applications.

"Why use it then?" you may ask. Linux is actually one of the most used operating system for servers and other devices and platforms such as routers, supercomputers, and even Android is based on Linux. For system and network administrators, learning Linux is actually one of the basic necessities.

How to get a Ubuntu Server?

Virtual Machine

The most budget way to experience a Linux server is through a virtual machine. VMware is a free virtual machine hypervisor that allows you to create an isolated environment that emulates another PC within a PC. Download VMware Player and Ubuntu Server.

vmware

After installing VMware Player, Create a New Virtual Machine and select the .iso file that you've just downloaded. VMware Player will install Ubuntu via Easy Install which runs most of the installation process for you. You'll get a Ubuntu Server running in no time.

DigitalOcean

To get the most of a server, its best to provide it a static (fixed) IP so you could access it remotely. DigitalOcean is the place for you to get started. From as low as USD 5/mth, you could run a Ubuntu server and run all sorts services that could be accessed to the public. Click here to get USD 10 for free upon register. Learn more about DigitalOcean here.

ubuntu

First step into Ubuntu

After logging in to Ubuntu (or any other Linux distro), you'll run in to a prompt that looks like this:

bird@ubuntu:~$

This prompt actually tells you a few things, let's break it down here.

[user]@[host]:[working directory][prompt]

So, from the example above, I could see that the current user is bird and the hostname (name of the PC) is ubuntu. The tilde sign (~) represents the home directory of the current user (which is bird). The dollar sign ($) represents that bird is regular user. The prompt of root would be a hash sign (#). What is root you may ask? root is the super-user of Ubuntu, similar to the Administrator in Windows systems. It basically has the highest privilege and has full control over the OS. More about that later...

Moving around Ubuntu

The command-line interface may be a little bit overwhelming at first, but after getting familiar with some basic commands, you could move around just as fast as using a cursor. Here's a list of basic commands to get started.

Command Function
whoami Get current user
pwd Get current directory path
ls List directories/files
cd Change directory
mv Move/rename file
rm Delete file
cp Copy file(s)
su Switch user

With these commands, you could start to get familiar to Ubuntu or even other operating systems. When in doubt, you could always use <command> --help or man <command> for help.

Mapping the hierarchy of Ubuntu

Linux file systems are based on the Filesystem Hierarchy Standard, which lists all files and directories of the system under the root directory (/) of the file system hierarchy. This is very different from Windows, where the root directory is the drive e.g. (C:\).

├ bin/   # shared binaries/executables
├ dev/   # device files
├ etc/   # host specific system configurations
├ home/  # user home directories
├ lib/   # kernel modules and libraries
├ media/ # mounting path for removable devices
├ mnt/   # mounting path for temporary file systems
├ root/  # home directory for root
├ tmp/   # temporary files
├ usr/   # user utilities and applications
└ var/   # variable files

Now that you're familiar with Ubuntu, you could host a your own website or VPN.