We are glad that you want to learn Linux and visited this page. Currently the Linux is one of the best Operating System in current modern time. From end user to big corporate business, low end to high end devices, Linux has made its footprints every where. Around the world there are many Linux users, developers, contributors, supporters making the Linux more stronger. Let’s proceed further on our article Learn Linux.
Linux Introduction
Linux is one of the most popular Unix based Operating System. It is free and Open Source Operating System. Due to its security, features and power many Information Technology Industry prefer the Linux servers in their infrastructure. Linux also has its strong presence in Desktop Operating System category. With the time Linux community is growing bigger and bigger and becoming more stronger.
Linux was created by Linus Benedicts Torvalds. He started the project as a hobby.
On 25/Aug/1991 Linus Torvalds announced about this hobby project in Usenet newsgroup and looking for feedback from users and developers. At that time, he was student of University of Helsinki.
He wrote the kernel for his new PC which had Intel 80386 processor. The development of this kernel was done on MINIX (Unix Like O.S) by using GNU C Compiler.
Initially Linus himself referred the Linux as Kernel. Later many people contributed in the project. The kernel was incorporated with many softwares and mostly were GNU software.
There was some Naming Controversy also happened . Because it had used lots of GNU Software rather calling “GNU/Linux”, many people start calling it as “Linux”. (Do you want to know more what exactly we are talking here is the GNU Website link)
So now a days, many people call “Linux” as an Operating System.
Components Of Linux Operating System
Linux Operating System has three major components –
- Kernel: Kernel is the core computer program which is the interface between the Applications and Hardware resources. Kernel controls the usage of Hardware resources like CPU, RAM, Disk, Network etc. It is the soul of the Operating System.
- System Library (Shell): The System Library are the small programs or functions through which Kernel’s features are accessed. They are two types in Linux
- Static System Library
- Dynamic System Library
- System Utility (Program): System utility programs are responsible to do specialized, individual level tasks. Linux has so many small programs which works together, in other words it is like modular program system which work together and hence give Linux more flexibility and power to perform. These programs works on top of the shell but may also interface directly with the kernel.
The given below diagram shows the Linux Layer. Just spend some time to understand this diagram. At left hand side of the diagram, you will see two separations – User Mode and Kernel Mode.
In Kernel Mode section, you will find the ‘Linux Kernel’. Now you can relate why Linus Torvalds himself refer Linux as Kernel initially.
In User Mode section, you will find the most of the Program related stuffs like libraries, compilers, scripts, GNU software and applications etc.
What is the Linux Mascot ?
It is Tux. The Tux was drawn by Larry Ewing in 1996. It is a penguin character and the official brand character of the Linux kernel. Here is the picture on your screen.
What Are The Features Of Linux ?
Linux Operating System has many features. In this section, we will learn about the same.
- Multiuser : Multiple user can use the Linux Operating System and use the Hardware Resources like RAM, CPU, Disk etc. But multiple users have to use the different terminal.
- Multitasking: Linux is a Multitasking Operating System means multiple processes or tasks can be run on single computer seemingly, simultaneously and without interfering with each other. These processes or tasks share the similar processing resource like CPU.
- Portability: Linux is compatible and can be run on many different types of Hardware. For example, Big Server Devices or Small Android Phone devices. Linux can be used in all types of High or low end hardware and hence it is Portable.
- Security: Linux is quite secure Operating System. In high level, the security part is sub-divided into 3 major area –
- Authentication (assigning credentials means login id and password)
- Authorization (permission to Read,Write and Execute)
- Encryption (Encrypting the Data)
- Live CD/USB : Linux Operating System is capable of running from the USB Device or CD/DVD. Means you can run the Linux even from your Pen Drive without installing it.
- GUI (X-Windows System) : Linux basically a terminal (command line) based Operating System. To get the Desktop you can install the X-Windows System.
- Support Customized Keyboard: Linux supports various types of Language Keyboard type. This is also one of the reason of its popularity.
- Application Support: Linux has its own software management system and keep the Software in Repositories from where the user can download and install the software.
- FileSystem : It follows the Standard File Directory Hierarchy. To be very precise (as per modern time) it follows the FHS (Managed by the Linux Foundation).
- Open Source: The Linux is Open Source. Means its code is freely available for all and develop by the community.
Linux Distributions
Because Linux is Open Source many Linux Operating System Distributions are/were developed. Linux Distributions are sometimes in short called as Distro. There are so many currently available but we will list only a few which are currently popular among Linux common users and professionals. (Distrowatch is one of the popular website which provides the latest update on various Linux Distributions.)
Red Hat Based Distro: Red Hat Enterprise Linux, Rocky Linux, CentOS, Fedora, Oracle Linux, Alma Linux, Scientific Linux etc.
Debian Based Distro: GNU/Debian, Ubuntu, Linux Mint, Deepin etc.
Arch Based Distro: Arch Linux, Garuda Linux, Manjaro Linux etc.
How To Learn Linux ?
This is the common question that every Linux beginner ask. Learning Linux now a days is quite easy but apart of all the available resources internet some traits are important to carry.
- Treat Linux as LINUX OPERATING SYSTEM not just another Operating System. If you are coming from Windows background naturally you will try to compare but Linux has its own method, features and functions. So never expect if any program/Application which is not available in Linux (It is all because of Developer or Hardware Vendors[Just giving a clue otherwise a debatable topic 🙂 ])
- Only use Linux in your Personal Desktop/Laptop. Or due to any reason you still want to keep Windows in your system then install Virtualization Software like VirtualBox, VMware etc and there in install the Linux. You can also directly use Linux from your Pen drive even without installing in your System.
- Always first try to solve the problems by yourself. Do not directly jump to Search and then copy-paste the answer taken from some Website or Forum (It could be disastrous sometimes also when you do not understand system).
- Be a part of Linux Community. Learn from them, help others also. It will give you Linux exposure like problems, solutions, what is trending technology, current market requirements etc.
- Join the Linux Public Forums like Quara, StackOverflow,
- Also join the Forums of Operating System you like for example Ubuntu Forum, Arch Linux Forum
- Join the Linux Groups in Social Media.
- Keep reading the various Linux Blogs and Magazine(Online/Offline).
Career In Linux
From my past more than 16 years of experience in the IT industry, I must say that Linux is now a days one of the mandatory skills requirement in fresh candidates. In this post, I will share you the real practical fact from my experience.
When we started our career Linux at that time was gaining momentum. And many official documentation from software was even not that much friendly. Sometime we used to struggle to setup the servers.
Most of the Servers in this world are running on Linux. Even containers also have base Operating System as Linux.
Many Organisations are using Linux Desktop for their employees to save the cost.
Many Hardware vendors are also now a days helping and participating in Linux Driver development.
There are lots of business development happened on the basis of Linux. So Linux understanding is quite mandatory.
Now Linux is all over the place and hence I said, now a days it is mandatory to have Linux understanding.
In Linux as a career has vast opportunities. The following Linux requirements are always there. For DevOps, understanding of Linux is preferrable.
Here are some list of Linux Profession which are always in demand.
- Linux Developer
- Software Developer
- Device Driver Developer
- Kernel Developer
- Linux System Administrator/Server Administrator
- Linux Security
- DevOps
Do we need Certification In Linux ?
Frankly speaking, if you understand Linux very well, you can easily get the job. Passing the Linux related Certificates will give weightage in your resume and in some organisation as a preference.
But at end of the day, candidate has to clear the interview round and skills matters a lot.
Even Non Engineering background candidate can also get job in Linux if the person is skilled. And this is I am sharing from my experience.
When you learn the Linux very well and get certified then probability of getting Job will be more. It surely boost your career.
In upcoming article, we will bring some useful Linux Certification details which will help and empower your professional career.
Some Thoughts
In a simple words, enjoy the Linux. Keep learning and sharing the knowledge with others. Contribute something in Opensource software or create by your own and share with the world.
Linux Learning Resources In Our Blog
We are writing on this blog since long time and randomly also. Many articles are scattered and unorganized. We are trying to club all these post under this page for Linux Learner.
Here is the first post on same series:
- Linux Basic Commands For Every Beginner
- 30 useful Linux terminal keyboard shortcuts
- How to page scroll up/down in Linux terminal
- Learn very useful alias command with examples
- Useful tail command with examples in Linux/Unix
- Head command in Linux / Unix
- tr command to convert lines to space , tab and vertical tab
- Learn tar command and know about its precaution
- Linux Tac Command : Reverse Of cat Command Output