Why I love using GNU/Linux
Date: 5th March 2018
Linux is actually the name of the Kernel (The most important part of the OS) developed by Linux Torvalds and the GNU project came up with the first OS which was called GNU/Linux, which happens to be the technical name. Since it is known colloquially as just Linux, I’m going to do that in this post too, for convenience.
I had started experimenting with Live versions of Linux Mint, Ubuntu and Kubuntu when I was in 10th. I was still hesitant to make the jump from windows then. One fine day 2 years back I did and I’m glad I did. I use Linux as my primary OS, but I have windows 10 on dual boot, to run programs not supported in Linux. But I get by well enough , using Linux 99% of the time.
I had started out with Ubuntu 14.04 (Trusty Tahr) and learned the ropes quickly. It was a little bit weird to use the Terminal in the beginning, I felt like it was a little too much work. Using GUIs for almost everything, I never had known the power of the BASH Terminal. Once I did, I fell in love with it and this post to convince you to give it a try too.
Linux is wonderful for many reasons, with everyone having specific reasons. For me the reasons are listed below.
1. It’s Free!
I had a tough time believing that a feature-rich software such as this was meant to be used for free! Coming from the Windows universe, this felt a bit weird to have the
"You get what you pay for" notion busted..
But as I learned later, that’s not just what the free meant. It also meant that users are permitted to use it as one sees fit. Customisation at various levels is not only possible but encouraged. The source code is available for download too.
2. Made for and by the Community
If software was free, what was the incentive of the developers? I was surprised to know that Linux was not made just to earn money, but also by a strong sense of giving back to the community by offering features not available commonly. Free software was made with the idea that software should not be restricted in use.
Even though the kernel was made by Linus Torvalds initally, it is supported today by thousands of volunteer developers who are motivated primarily by the love of building software. This really struck a chord.
3. Infinite Customisation
Since the source code is available for download, the developers encourage feature requests or you are encouraged to make your own fork. Many popular Distros like Ubuntu are themselves forked for old time stalwarts like Debian.
This is pretty interesting as due to making forks for Distros and software gives users more choice.
4. Community support
When stuck with a problem, it is very easy to get solutions by asking fellow users or the developers your doubts. Online forums are so extensively used for this purpose, that there is a solution for every problem.
Also, every distro has a Wiki which is sufficient in most cases.
Many distros like RHEL offer customer support for enterprise-level use, for a fee .
5. Software repositories
This is my favourite feature found in the Linux ecosystem. In Windows or Mac OS, to install a software one has to:
- go to the website
- download the software
- go to the download location
- click to install
- provide admin creds/permissions
- Select installation location etc
It takes at least these steps to get a software installed. But almost every Linux distro has a novel solution.
To install a software, say VLC in Ubuntu:
- open terminal
sudo apt install vlc
- enter password
Done. That’s it.
apt is Package Manager for Ubuntu, it’s derivates and Debian based distros. These make software installation very simple and it also manages updates.
The repositories are maintained by the distros themselves. All packages (names of uninstalled sofware in Linux ecosystem ) are managed by individual maintainers.
In Linux, the on installation, a password needs to be set. This is used extensively for all major changes affecting the system like:
- installation or removal or updation of software
- changing configuration files
- Editing any file in the root partition
- and almost anything of significance
Since Linux is a multi user system , each user has different permissions. Any significant change can be only be done by the root user or users who have sudo access, by entering the password.
Also not all files downloaded are executable by default, the file permissions need to be changes by a
sudoer or by the root user..
It is like the Linux system is a complex, well structured, labyrinth with locked doors on every important turn.
This makes it impossibly tough for viruses or worms to affect the system in any way. Thus antivirus for Linux is not a necessity at all.
Many security focused Linux distros are made for use by professional pentesters like:
7. Updates and Upgrades
The best thing in most distros is that there is a handy software updater which helps users manage updates not only of the user but also the system, like Linux kernel etc..
This makes it very easy to keep the system up to date with latest features and security patches applied.
Also, every distro has a release cycle in which constant improvements are made. Distros like Ubuntu have a 12 month cycle for upgrades and 2 years for Long Term Support (5 years) and this gives users enough time to adjust to latest features.
Then there is the Rolling Release model used by the likes of Arch Linux and OpenSuse Tumbleweed. In this upgrades are made available as soon as they are developed and tested. In this system the system is always upto date with latest
Bleeding edge features , but this makes the system somewhat less stable than the LTS system where there is more time to test and squash bugs.
8. Runs anywhere
Linux runs very well on old hardware. Almost all aspects of the OS are optimised to run on minimum system reqiurements. For example, distros like:
- Debian: The oldest Linux flavour, many others are based on it, like Ubuntu.
- Xubuntu : Ubuntu flavour with the very minimal desktop environment(DE) XFCE
- Ubuntu MATE : Full featured lighteweight Ubuntu flavour
- Lubuntu : Ubuntu flavour with the very minimal desktop environment(DE) LXDE
- Arch Linux : Highly configurable Linux distro for more advanced users with minimal stock features
- Raspian/Pixel : Uber lightweight Debian based Linux distro. Raspberri Pi ships with it.
Also can run on any computing device! Since the Linux kernel is monolithic, all the components like drivers, filesystem, scheduler, virtual memory etc needed for running the hardware are available in one package. It supports various chip architectures like x86, x86_64, ARM etc.
The devices other than PC and Macbooks which can run Linux are:
- Android smartphones, which also are based on Linux kernel.
- Embedded systems
- Raspberry Pi
- Gaming consoles like PS2 , Xbox etc
- Windows tablets
- Old generation tablets
- Supercomputers (Almost all run exclusively on Linux)
- IoT devices like Toasters etc
The list in endless..
Linux based OS are hundereds in number, and each provide something that suits a particular kind of users. Some of the distros appeal to very specific minorities, some of them are quite weird.
- Ubuntu Christian Edition
- Ubuntu Satanic Edition
- Puppy Linux
- Hannah Montana Linux
- Red Star Os
- Scientific Linux
Even though modern Linux Distos are very user friendly, with beautiful GUIs and a host of software, to get anything more than what a beginner user does , one has to understand how the OS works..
Windows and MacOs are designed to be beautiful, intuitive and very easy to use, and in the process it dumbs down many things and prevents changes. Linux doesn’t pretend to be that. It encourages user friendliness enough that basic tasks like surfing the web, checking Emails, using the Office suit (text processing, presentation making, Excel sheets etc) aree very easy, but to do any serious modifications, you need to understad some core concepts about the OS and to use the Terminal.
Hence, Linux is a great way to learn about OS and computing, and for me that’s wonderful as there are so many things to discover and understand. Its a boon for curious souls like me..
11. Performance and Stability
Linux distros significantly use lesser resources than Mac Os and Windows and are usually much faster. Windows comes with alot of bloat, with many processes running in the background making it very slow.
Distros like Ubuntu, OpenSuse and RHEL are known to be ultra stable, with minimum downtime. Thus it is used for most Servers and supercomputers etc.
Windows is notorious for collecting user data for displaying ads and suggestions across it’s platform. Recently Windows 10 was found to have a keylogger enabled by default. It also comes with a lot of bloatware which is of no real use.
Linux, is free of these worries as there is a stringent focus on privacy. Except Ubuntu, which seems to be planning to do that too, all other distros don’t collect any information at all. Privacy tools like Tor Browser and VPNs are easily configurable in Linux.
If you are worried about the conglomerates collect private information , Linux is for you.
Using Linux isn’t a breeze. It frustrates you sometimes, makes you put significant amount of efforts and things break on some rare occasions. It’s not perfect, and that’s fine.
Like any valuable relationship, it asks for an investment and patience on your part but once you do, it is the most powerful, fast OS there is and it puts you in control on how it should run.
Linux isn’t just a tool you use. It is a powerful resource that’s made just to help you, not to profit off your back. It will work the way you want it to and thus, in so many ways, it makes every-day computing truly personal.
I think that’s wonderful, and that’s why I don’t intend to stop using in the future.. :)
Next Post →
© Abhishek Balam 2019