Day 2 : Introduction to Linux: Exploring an Amazing Operating System🚀🚀
Experienced QA professional with a passion for manual and automation testing. Proficient in DevOps practices, ensuring seamless integration and continuous delivery. Dedicated to ensuring top-notch software quality and efficiency. Eager to contribute my skills to Hashnode's vibrant tech community. Let's collaborate and create exceptional experiences!
🐧Introduction
Welcome to the world of Linux, an extraordinary and free operating system known for its reliability, security, and flexibility. In this blog series, we'll take you on a journey to discover the wonders of Linux. From its background and key features to the command-line interface, we'll guide you through the basics of using Linux. We'll also introduce you to a variety of free software applications available on Linux, empowering you to enhance your computing experience. Whether you're a beginner or have some experience, join us as we delve into the amazing world of Linux and unlock its endless possibilities. So Let's dive in together!
🐧What is Linux
Linux is an operating system that many people use because it's dependable, safe, and can do many things. It's made by a group of people from around the world who work together and share their work for free. There are different kinds of Linux, called distributions, that have their special qualities.
Ubuntu: This one is good for people who are new to Linux, user friendly with a range of features
Fedora: This version is all about using the newest software. People who like to be on the cutting edge of technology usually prefer Fedora.
Debian: If you want an operating system that doesn't crash and is all about being open and free, Debian is a good choice. Many other Linux versions are based on Debian.
CentOS: This version is made for big servers and businesses. It's stable and gets long-term support, meaning it'll be taken care of for a long time.
Kali Linux: This one is made specifically for cybersecurity and testing security. It has a lot of tools built in for finding vulnerabilities and checking how secure things are.
🐧Linux Vs 💻Windows
| Aspect | Linux | Windows |
| Operating System | Open-source operating system based on Unix-like principles | Proprietary operating system developed by Microsoft |
| Customization | Highly customizable with various desktop environments | Limited customization options, mainly focused on themes |
| User Interface | Multiple desktop environments available (e.g., GNOME, KDE) | Consistent user interface across different versions |
| Software | A vast range of free and open-source software is available | Wide variety of commercial and proprietary software |
| Command Line | Powerful command-line interface (CLI) with extensive features | Command Prompt available, but less feature-rich |
| Security | Fewer viruses and malware due to a smaller user base | A frequent target for viruses and malware due to its popularity |
| Gaming | Limited game selection, but growing support through Wine | Extensive gaming support and a large library of compatible games |
| Hardware Support | Broad hardware support, especially for older devices | Extensive support for various hardware configurations |
| Stability | Known for stability and reliability | Occasional stability issues and updates may cause disruptions |
| Licensing | Generally free and open-source (with some exceptions) | Requires purchasing licenses for most versions |
| System Updates | Easy and centralized updates through package managers | Updates managed through Windows Update |
🐧How is the Linux Architecture

Linux is renowned for its modular architecture, which comprises distinct layers that fulfill specific roles within the operating system. Let's explore each area in more detail.
1. Hardware: Linux boasts broad support for a variety of hardware architectures, including x86, ARM, PowerPC, and more. It effectively interacts with crucial hardware components like CPUs, memory, disks, network interfaces, and peripherals. Device drivers play a vital role in enabling Linux to communicate with and control diverse hardware devices.
2. Kernel: At the heart of the Linux operating system resides the kernel, serving as its central component. The kernel directly engages with the hardware, proficiently managing system resources and providing an interface for applications. It assumes critical responsibilities such as process scheduling, memory management, device driver integration, and system security.
Some essential Linux kernel-related commands are:
uname -r: Displays the current Linux kernel version.lsmod: Lists the kernel modules currently loaded into memory.dmesg: Offers insights into kernel messages and system logs.
3. Shell: The shell acts as an intermediary between users and the operating system, facilitating interaction through command-line interpretation. Linux offers several shell options, with Bash (Bourne Again SHell) being the most prevalent. The shell skillfully interprets user commands, empowering users to control the system and execute programs.
Some common shell commands include:
ls: Lists files and directories.cd: Changes the current directory.mkdir: Creates a new directory.cp: Copies files or directories.rm: Removes files or directories.
4. Applications: Linux boasts an extensive assortment of applications and software tailored for various purposes. Open-source software plays a substantial role in the Linux ecosystem, fostering collaboration and innovation. Users can easily install and utilize applications that meet their specific needs, such as web browsers, office suites, media players, and development tools. Package managers like apt, yum, or dnf simplify the installation and management of software packages.
Command related to package management include:
apt-get install <package>: Installs a package using the Advanced Package Tool (APT).
So, Linux's modular architecture encompasses the hardware layer, the kernel as the core component responsible for system operations, the shell providing a command-line interface, and a diverse collection of applications managed through package managers. This architectural design offers unparalleled flexibility, customization, and efficient management capabilities for Linux-based systems.
🐧Basic Linux Commands ⚙️🔧
Commonly used Linux commands along with examples:
ls: Lists files and directories in the current location.
Example: To see a list of files and directories in the current folder, type
lsand press Enter.The -a option displays all files, including hidden files, in the current directory.
Example: To see a list of all files and directories, including hidden ones, type
ls-aand press Enter.cd(Change directory): Changes the current folder (directory).
Example: If you want to navigate to a folder named "Documents," type
cd Documentsand press Enter.The .. notation allows you to move up one level in the directory hierarchy.
Example: To navigate to the parent directory, type
cd ..and press Enter.
pwd(Print working directory): This shows the current folder you are in.
Example: To know the current location (folder), type
pwdand press Enter.The -P option displays the physical (actual) path of the current directory, resolving any symbolic links.
Example: To print the physical path of the current directory, type
pwd -Pand press Entermkdir(Make directory): Creates a new folder (directory).
Example: To create a folder named "Photos," type
mkdir Photosand press Enter.The -p option creates parent directories if they don't exist. Example: To create nested directories, including any parent directories, type
mkdir -p Parent/Child/Grandchildand press Enter.rm: Removes (deletes) a file or folder.
Example: To delete a file named "report.txt," type
rm report.txtand press Enter.Note: Be cautious when using
rmas it permanently deletes files.The -r option recursively removes a directory and its contents.
Example: To delete a directory named "folder" and its contents, type
rm -r folderand press Enter.The -f option forces the removal of files without prompting for confirmation. Example: To forcefully delete a file named "file.txt," type
rm -f file.txtand press Enter.cp: Copies a file or folder to another location.
Example: To make a copy of a file named "notes.txt" in the folder "Documents," type
cp notes.txt Documents/and press Enter.The -r option copies directories recursively, including their contents.
Example: To copy a directory named "folder" and its contents to another location, type
cp -r folder /path/to/destinationand press Enter.mv: Moves or renames a file or folder.
Example: To move a file named "file.txt" to a different location or rename it, type
mv file.txt /path/to/destination/newfile.txtand press Enter.The -i option prompts for confirmation before overwriting an existing file.
Example: To move a file named "file.txt" to a different location, type
mv -i file.txt /path/to/destinationand press Enter.cat(Concatenate and display file contents): Displays the contents of a file on the screen.
Example: To see the contents of a file named "README.txt," type
cat README.txtand press Enter.sudo: Executes a command with administrative privileges (superuser/root).
Example: To install software using administrative access, type
sudo apt-get install package_nameand press Enter.
So, These are basic Linux commands to get started.👍
💥Remember to be cautious while using commands that can modify or delete files, and always double-check the command and its arguments before executing them.💥
🐧Conclusion
🖋Linux architecture is designed with a modular approach, making it flexible and robust.
🖋Compared to Windows, Linux offers greater customization options and a wide range of open-source software.
🖋By exploring Linux's architecture, comparing it with Windows, and mastering basic commands, beginners can embark on their journey to effectively use and navigate the Linux ecosystem.
🖋Basic Linux commands, such as navigating through directories (cd), listing files and directories (ls), creating directories (mkdir), and manipulating files (cp, mv, rm), provide beginners with the fundamental tools to interact with the operating system.
🌈So, I hope you found this blog helpful!
🤔If you have any questions or need further assistance, please let me know in the comments section below. I am here to support you on your learning journey.
✌If you found this information valuable, consider following me on Hashnode for more insightful blogs. Stay tuned for future articles filled with exciting content.
🚀🚀Happy learning!🤗




