<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Muhammad Zulqernain Zahid</title>
    <description>The latest articles on Forem by Muhammad Zulqernain Zahid (@xane_xahid).</description>
    <link>https://forem.com/xane_xahid</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3076146%2F1c55b24d-e672-48cc-9a8f-8806383eaf10.png</url>
      <title>Forem: Muhammad Zulqernain Zahid</title>
      <link>https://forem.com/xane_xahid</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/xane_xahid"/>
    <language>en</language>
    <item>
      <title>Linux Challenge #2: Real-World Log Cleanup with Command Line Automation</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Sun, 11 May 2025 23:14:06 +0000</pubDate>
      <link>https://forem.com/xane_xahid/linux-challenge-2-real-world-log-cleanup-with-command-line-automation-2ao7</link>
      <guid>https://forem.com/xane_xahid/linux-challenge-2-real-world-log-cleanup-with-command-line-automation-2ao7</guid>
      <description>&lt;p&gt;Welcome back, command-line champs!&lt;br&gt;&lt;br&gt;
In this challenge, we’re simulating a real-world task every sysadmin faces: managing and cleaning up system logs. This is where your &lt;code&gt;rm&lt;/code&gt;, &lt;code&gt;mv&lt;/code&gt;, &lt;code&gt;cp&lt;/code&gt;, &lt;code&gt;find&lt;/code&gt;, and &lt;code&gt;echo&lt;/code&gt; commands come into play in a real scenario!&lt;/p&gt;




&lt;h2&gt;
  
  
  Challenge Brief
&lt;/h2&gt;

&lt;p&gt;You’ve been asked to clean up a log directory on a RHEL 9 machine.&lt;br&gt;&lt;br&gt;
The logs are eating up space, and you need to:&lt;/p&gt;

&lt;h3&gt;
  
  
  📝 Task Overview
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;List all files&lt;/strong&gt; in &lt;code&gt;/var/logs/&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Delete&lt;/strong&gt; all &lt;code&gt;.log&lt;/code&gt; files &lt;strong&gt;except&lt;/strong&gt; &lt;code&gt;syslog&lt;/code&gt; and &lt;code&gt;auth.log&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Move&lt;/strong&gt; the remaining logs into an archive folder called &lt;code&gt;/var/logs/archive/&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Create a cleanup report&lt;/strong&gt; that lists all deleted and moved files with timestamps.&lt;/li&gt;
&lt;/ol&gt;




&lt;h2&gt;
  
  
  Full Script Solution
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;#!/bin/bash&lt;/span&gt;

&lt;span class="c"&gt;# Step 1: List all files in /var/logs/&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"Listing all files in /var/logs/"&lt;/span&gt;
&lt;span class="nb"&gt;ls&lt;/span&gt; /var/logs/

&lt;span class="c"&gt;# Step 2: Delete unnecessary log files except syslog and auth.log&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"Deleting unnecessary log files..."&lt;/span&gt;
find /var/logs/ &lt;span class="nt"&gt;-maxdepth&lt;/span&gt; 1 &lt;span class="nt"&gt;-type&lt;/span&gt; f &lt;span class="nt"&gt;-name&lt;/span&gt; &lt;span class="s2"&gt;"*.log"&lt;/span&gt; &lt;span class="o"&gt;!&lt;/span&gt; &lt;span class="nt"&gt;-name&lt;/span&gt; &lt;span class="s2"&gt;"syslog"&lt;/span&gt; &lt;span class="o"&gt;!&lt;/span&gt; &lt;span class="nt"&gt;-name&lt;/span&gt; &lt;span class="s2"&gt;"auth.log"&lt;/span&gt; &lt;span class="nt"&gt;-exec&lt;/span&gt; &lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-v&lt;/span&gt; &lt;span class="o"&gt;{}&lt;/span&gt; &lt;span class="se"&gt;\;&lt;/span&gt;

&lt;span class="c"&gt;# Step 3: Move remaining .log files to an archive folder&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"Moving important logs to archive..."&lt;/span&gt;
&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; /var/logs/archive
find /var/logs/ &lt;span class="nt"&gt;-maxdepth&lt;/span&gt; 1 &lt;span class="nt"&gt;-type&lt;/span&gt; f &lt;span class="nt"&gt;-name&lt;/span&gt; &lt;span class="s2"&gt;"*.log"&lt;/span&gt; &lt;span class="nt"&gt;-exec&lt;/span&gt; &lt;span class="nb"&gt;mv&lt;/span&gt; &lt;span class="o"&gt;{}&lt;/span&gt; /var/logs/archive/ &lt;span class="se"&gt;\;&lt;/span&gt;

&lt;span class="c"&gt;# Step 4: Create a cleanup report&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"Cleanup report - &lt;/span&gt;&lt;span class="si"&gt;$(&lt;/span&gt;&lt;span class="nb"&gt;date&lt;/span&gt;&lt;span class="si"&gt;)&lt;/span&gt;&lt;span class="s2"&gt;"&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; /var/logs/cleanup_report.txt
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"Moved files:"&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; /var/logs/cleanup_report.txt
&lt;span class="nb"&gt;ls&lt;/span&gt; /var/logs/archive/ &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; /var/logs/cleanup_report.txt
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"Remaining files in /var/logs/:"&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; /var/logs/cleanup_report.txt
&lt;span class="nb"&gt;ls&lt;/span&gt; /var/logs/ &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; /var/logs/cleanup_report.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  What You Just Practiced
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Command&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;find&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Searches for files matching specific criteria&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;rm -v&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Deletes files with verbose output&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;mv&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Moves files to another directory&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;mkdir -p&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Creates a directory (and parents if they don't exist)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;echo &amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Outputs text to a file&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;ls&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Lists files for logging/reporting&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;




&lt;h2&gt;
  
  
  Bonus Challenge
&lt;/h2&gt;

&lt;p&gt;Make this script interactive:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Prompt the user for the log folder path.&lt;/li&gt;
&lt;li&gt;Confirm before deleting files.&lt;/li&gt;
&lt;li&gt;Add a log rotation option that backs up &lt;code&gt;.log&lt;/code&gt; files with today’s date appended.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Want help building that version? Drop a comment and we’ll go there together.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why This Matters
&lt;/h2&gt;

&lt;p&gt;This type of script is gold in production. Automating file cleanup prevents your system from getting bloated and shows real command over Linux fundamentals. Try tweaking this to work for different folders or file types.&lt;/p&gt;




&lt;p&gt;Next up? We’re jumping into file permissions and ownership. But for now—clean up, document your moves, and show that terminal who’s boss!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#linux&lt;/code&gt; &lt;code&gt;#redhat&lt;/code&gt; &lt;code&gt;#rhcsa&lt;/code&gt; &lt;code&gt;#techwithengineers&lt;/code&gt; &lt;code&gt;#techtransition&lt;/code&gt; &lt;code&gt;#learnlinux&lt;/code&gt; &lt;code&gt;#devops&lt;/code&gt; &lt;code&gt;#linuxlab&lt;/code&gt; &lt;code&gt;#cloudwhistler&lt;/code&gt; &lt;code&gt;#30daychallenge&lt;/code&gt; &lt;code&gt;#opensource&lt;/code&gt; &lt;code&gt;#techjourney&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhistler</category>
      <category>linux</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Linux Challenge #1: The Power of Basics – Can You Automate This?</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Thu, 08 May 2025 18:28:23 +0000</pubDate>
      <link>https://forem.com/xane_xahid/linux-challenge-1-the-power-of-basics-can-you-automate-this-1bim</link>
      <guid>https://forem.com/xane_xahid/linux-challenge-1-the-power-of-basics-can-you-automate-this-1bim</guid>
      <description>&lt;p&gt;Hey there, Terminal Warriors!&lt;br&gt;&lt;br&gt;
You've made it through the core commands: &lt;code&gt;mkdir&lt;/code&gt;, &lt;code&gt;touch&lt;/code&gt;, &lt;code&gt;cat&lt;/code&gt;, &lt;code&gt;rm&lt;/code&gt;, &lt;code&gt;cp&lt;/code&gt;, and &lt;code&gt;mv&lt;/code&gt;. Now it’s time to apply them all together in a practical challenge that'll push your command-line confidence to the next level.&lt;/p&gt;

&lt;p&gt;This challenge is meant for RHEL 9 learners following my series — but anyone who loves some good terminal automation fun can jump in!&lt;/p&gt;


&lt;h2&gt;
  
  
  Challenge Brief
&lt;/h2&gt;

&lt;p&gt;You're asked to quickly organize a project workspace for a small dev team.&lt;br&gt;&lt;br&gt;
Here’s what needs to be done:&lt;/p&gt;
&lt;h3&gt;
  
  
  📝 Task Overview
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Create a project directory named &lt;code&gt;team_alpha&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Inside it, create the following structure:
&lt;/li&gt;
&lt;/ol&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;   team_alpha/
   ├── docs/
   ├── src/
   │   ├── frontend/
   │   └── backend/
   ├── tests/
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;


&lt;ol&gt;
&lt;li&gt;Inside &lt;code&gt;docs/&lt;/code&gt;, create 3 files: &lt;code&gt;README.md&lt;/code&gt;, &lt;code&gt;CONTRIBUTING.md&lt;/code&gt;, and &lt;code&gt;LICENSE&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Inside &lt;code&gt;src/frontend/&lt;/code&gt;, create files: &lt;code&gt;index.html&lt;/code&gt;, &lt;code&gt;style.css&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Inside &lt;code&gt;src/backend/&lt;/code&gt;, create files: &lt;code&gt;app.py&lt;/code&gt;, &lt;code&gt;requirements.txt&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Append a line of dummy content to &lt;code&gt;README.md&lt;/code&gt; and &lt;code&gt;app.py&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Rename &lt;code&gt;README.md&lt;/code&gt; to &lt;code&gt;README_MAIN.md&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Copy &lt;code&gt;requirements.txt&lt;/code&gt; to the main &lt;code&gt;team_alpha/&lt;/code&gt; directory.&lt;/li&gt;
&lt;li&gt;Delete the &lt;code&gt;tests/&lt;/code&gt; directory.&lt;/li&gt;
&lt;/ol&gt;


&lt;h2&gt;
  
  
  Full Solution Walkthrough
&lt;/h2&gt;


&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;# Step 1: Create the base project directory&lt;/span&gt;
&lt;span class="nb"&gt;mkdir &lt;/span&gt;team_alpha

&lt;span class="c"&gt;# Step 2: Create nested structure with -p (recursive flag)&lt;/span&gt;
&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; team_alpha/docs team_alpha/src/frontend team_alpha/src/backend team_alpha/tests

&lt;span class="c"&gt;# Step 3: Create files in docs/&lt;/span&gt;
&lt;span class="nb"&gt;touch &lt;/span&gt;team_alpha/docs/README.md team_alpha/docs/CONTRIBUTING.md team_alpha/docs/LICENSE

&lt;span class="c"&gt;# Step 4: Create files in frontend&lt;/span&gt;
&lt;span class="nb"&gt;touch &lt;/span&gt;team_alpha/src/frontend/index.html team_alpha/src/frontend/style.css

&lt;span class="c"&gt;# Step 5: Create files in backend&lt;/span&gt;
&lt;span class="nb"&gt;touch &lt;/span&gt;team_alpha/src/backend/app.py team_alpha/src/backend/requirements.txt

&lt;span class="c"&gt;# Step 6: Add dummy text to README.md and app.py&lt;/span&gt;
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"This is the README file."&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; team_alpha/docs/README.md
&lt;span class="nb"&gt;echo&lt;/span&gt; &lt;span class="s2"&gt;"# Python App"&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; team_alpha/src/backend/app.py

&lt;span class="c"&gt;# Step 7: Rename README.md&lt;/span&gt;
&lt;span class="nb"&gt;mv &lt;/span&gt;team_alpha/docs/README.md team_alpha/docs/README_MAIN.md

&lt;span class="c"&gt;# Step 8: Copy requirements.txt to the root of the project&lt;/span&gt;
&lt;span class="nb"&gt;cp &lt;/span&gt;team_alpha/src/backend/requirements.txt team_alpha/

&lt;span class="c"&gt;# Step 9: Delete the tests folder&lt;/span&gt;
&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-rvf&lt;/span&gt; team_alpha/tests
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  🧠 What You Just Practiced
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Command&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;mkdir -p&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Creates nested directory structure&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;touch&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Creates empty files&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;echo &amp;gt;&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Writes dummy content to files&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;mv&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Renames a file or moves it&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;cp&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Copies a file&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;rm -rvf&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Deletes a folder and everything inside, recursively&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;


&lt;h2&gt;
  
  
  Mini Challenge
&lt;/h2&gt;

&lt;p&gt;Take it up a notch! Add a script that automates the above setup, but accepts the project name as an argument.&lt;/p&gt;

&lt;p&gt;Hint:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="c"&gt;#!/bin/bash&lt;/span&gt;
&lt;span class="nv"&gt;project_name&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="nv"&gt;$1&lt;/span&gt;

&lt;span class="c"&gt;# Use "$project_name" in place of team_alpha above&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Want me to help you with the script version? Let me know in the comments 👇&lt;/p&gt;




&lt;h2&gt;
  
  
  Keep Practicing
&lt;/h2&gt;

&lt;p&gt;Every time you build something small like this, you're building muscle memory. Try modifying this structure to suit different projects — and see how fast you get with automation!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#linux&lt;/code&gt; &lt;code&gt;#redhat&lt;/code&gt; &lt;code&gt;#rhcsa&lt;/code&gt; &lt;code&gt;#techwithengineers&lt;/code&gt; &lt;code&gt;#techtransition&lt;/code&gt; &lt;code&gt;#learnlinux&lt;/code&gt; &lt;code&gt;#devops&lt;/code&gt; &lt;code&gt;#linuxlab&lt;/code&gt; &lt;code&gt;#cloudwhistler&lt;/code&gt; &lt;code&gt;#30daychallenge&lt;/code&gt; &lt;code&gt;#opensource&lt;/code&gt; &lt;code&gt;#techjourney&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhistler</category>
      <category>linux</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>File &amp; Directory Management – Command Your Files with Power! (30-Day RHCSA + Ansible Journey)</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Wed, 07 May 2025 13:28:11 +0000</pubDate>
      <link>https://forem.com/xane_xahid/file-directory-management-command-your-files-with-power-30-day-rhcsa-ansible-journey-4hkb</link>
      <guid>https://forem.com/xane_xahid/file-directory-management-command-your-files-with-power-30-day-rhcsa-ansible-journey-4hkb</guid>
      <description>&lt;p&gt;Hey there, Linux explorers! Welcome to &lt;strong&gt;Day 3&lt;/strong&gt; — today we’re diving deep into the magic of file and directory management. &lt;strong&gt;Creating&lt;/strong&gt;, &lt;strong&gt;deleting&lt;/strong&gt;, &lt;strong&gt;copying&lt;/strong&gt;, and &lt;strong&gt;moving&lt;/strong&gt; files might sound simple, but trust me — when you master these, you’ll save time, stay organized, and look like a pro. Let’s unlock the secret sauce behind commands like &lt;strong&gt;mkdir&lt;/strong&gt;, &lt;strong&gt;touch&lt;/strong&gt;, &lt;strong&gt;cat&lt;/strong&gt;, &lt;strong&gt;rm&lt;/strong&gt;, &lt;strong&gt;cp&lt;/strong&gt;, and &lt;strong&gt;mv&lt;/strong&gt;. Ready to level up? Let’s get to it!&lt;/p&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Part 1: Building Your File Empire&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;It’s time to set up your file kingdom. Grab your tools and let’s &lt;strong&gt;create&lt;/strong&gt; those files and directories like a boss!&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;1. mkdir – Build Your Directories Like a Pro!&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Want to create directories? &lt;strong&gt;mkdir&lt;/strong&gt; is your go-to command. Whether it’s one directory or multiple, &lt;strong&gt;mkdir&lt;/strong&gt; will get it done in seconds.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a single directory&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;new_project
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Creates a folder called "new_project".&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create multiple directories&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;dir1 dir2 dir3
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Creates three directories at once — fast and efficient!&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create nested directories&lt;/strong&gt; (directories inside directories):&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir&lt;/span&gt; &lt;span class="nt"&gt;-p&lt;/span&gt; parent/child/subchild
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;The &lt;code&gt;-p&lt;/code&gt; option means "&lt;/em&gt;&lt;em&gt;parent&lt;/em&gt;&lt;em&gt;" directory will be created first if it doesn’t exist. Recursive creation, nice!&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a sequence of directories&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;project_&lt;span class="o"&gt;{&lt;/span&gt;1..5&lt;span class="o"&gt;}&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Creates directories with names like &lt;code&gt;project_1&lt;/code&gt;, &lt;code&gt;project_2&lt;/code&gt;, and so on.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Explanation of options&lt;/strong&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;-p&lt;/strong&gt;: &lt;strong&gt;Recursive creation&lt;/strong&gt; — Automatically creates parent directories.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;{1..5}&lt;/strong&gt;: Creates directories in a sequence (like &lt;code&gt;project_1&lt;/code&gt;, &lt;code&gt;project_2&lt;/code&gt;).&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;2. touch – Your File-Making Wizard&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;The &lt;strong&gt;touch&lt;/strong&gt; command creates &lt;strong&gt;empty files&lt;/strong&gt; quickly. But it doesn’t just create files — it touches them into existence. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a single file&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;touch &lt;/span&gt;readme.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Creates an empty file called &lt;code&gt;readme.txt&lt;/code&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create multiple files&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;touch &lt;/span&gt;file1.txt file2.txt file3.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Creates three files, just like that!&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create a sequence of files&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;touch &lt;/span&gt;file_&lt;span class="o"&gt;{&lt;/span&gt;1..10&lt;span class="o"&gt;}&lt;/span&gt;.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Creates &lt;code&gt;file_1.txt&lt;/code&gt; through &lt;code&gt;file_10.txt&lt;/code&gt;. Magic!&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Explanation of options&lt;/strong&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No options needed&lt;/strong&gt;: Simply creates an empty file! You can use it to &lt;strong&gt;initialize&lt;/strong&gt; files for your project.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;3. cat – More Than Just a File Reader&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Want to &lt;strong&gt;create&lt;/strong&gt;, &lt;strong&gt;read&lt;/strong&gt;, &lt;strong&gt;and append&lt;/strong&gt; content to your files? &lt;strong&gt;cat&lt;/strong&gt; is your go-to.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Create and write to a file&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&lt;/span&gt; newfile.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;🔥 &lt;em&gt;Start typing, hit &lt;code&gt;Ctrl+D&lt;/code&gt; to save and exit.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Read a file&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cat &lt;/span&gt;newfile.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Displays the content of &lt;code&gt;newfile.txt&lt;/code&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Append to a file&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cat&lt;/span&gt; &lt;span class="o"&gt;&amp;gt;&amp;gt;&lt;/span&gt; newfile.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;🔥 &lt;em&gt;Start typing, hit &lt;code&gt;Ctrl+D&lt;/code&gt; to append more content.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Explanation of options&lt;/strong&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&amp;gt;&lt;/strong&gt;: Creates a new file (or overwrites an existing one).
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&amp;lt;&lt;/strong&gt;: Read the content of a file.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&amp;gt;&amp;gt;&lt;/strong&gt;: Appends content to the end of a file.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Part 2: The Real Power: Deleting, Copying, and Moving Files Like a Boss&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;We’re diving into file management that goes beyond just creating files. Now, it’s time to &lt;strong&gt;delete&lt;/strong&gt;, &lt;strong&gt;copy&lt;/strong&gt;, and &lt;strong&gt;move&lt;/strong&gt; like a real Linux pro.&lt;/p&gt;

&lt;h3&gt;
  
  
  &lt;strong&gt;4. rm – Delete Files and Directories Like a Cleanup Pro&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Need to clean up? &lt;strong&gt;rm&lt;/strong&gt; gets the job done, but &lt;strong&gt;use with caution&lt;/strong&gt; — it’s unforgiving! So, let’s make sure you understand &lt;strong&gt;every option&lt;/strong&gt; and &lt;strong&gt;how&lt;/strong&gt; to use them safely.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Delete a specific file&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm &lt;/span&gt;unwantedfile.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Deletes a specific file.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Delete a directory (and all its contents)&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-r&lt;/span&gt; mydir
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;The &lt;code&gt;-r&lt;/code&gt; option means "recursive" — deletes the directory and everything inside it.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Force delete without confirmation&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="nt"&gt;-rf&lt;/span&gt; mydir
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;⚠️ &lt;em&gt;Be careful! The &lt;code&gt;-f&lt;/code&gt; option **forces&lt;/em&gt;* deletion without asking for confirmation.*&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Delete all files matching a pattern&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="k"&gt;*&lt;/span&gt;.log
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Deletes all files with the &lt;code&gt;.log&lt;/code&gt; extension.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Delete all files in the current directory&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;rm&lt;/span&gt; &lt;span class="k"&gt;*&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Deletes everything in the current directory.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Explanation of options&lt;/strong&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;-r&lt;/strong&gt;: &lt;strong&gt;Recursive&lt;/strong&gt; — Deletes directories and their contents, including subdirectories.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;-f&lt;/strong&gt;: &lt;strong&gt;Force&lt;/strong&gt; — Skips confirmation prompts (use with care!).
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;-v&lt;/strong&gt;: &lt;strong&gt;Verbose&lt;/strong&gt; — Gives a detailed output of what's being deleted.
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Pro Tip&lt;/strong&gt;: Always double-check when using &lt;code&gt;-rf&lt;/code&gt;. It’s easy to &lt;strong&gt;accidentally delete&lt;/strong&gt; more than intended. Proceed with caution!&lt;/p&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;5. cp – Copy Files and Directories with Ease&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Need a backup or want to duplicate files? &lt;strong&gt;cp&lt;/strong&gt; is the command for that. Whether you're copying a file or a directory, this tool makes it seamless.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Copy a single file&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cp &lt;/span&gt;myfile.txt backupfile.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Copies &lt;code&gt;myfile.txt&lt;/code&gt; to &lt;code&gt;backupfile.txt&lt;/code&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Copy a directory and its contents&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cp&lt;/span&gt; &lt;span class="nt"&gt;-r&lt;/span&gt; mydir backupdir
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;The &lt;code&gt;-r&lt;/code&gt; flag ensures that the entire directory (and its contents) are copied.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Copy files matching a pattern&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cp&lt;/span&gt; &lt;span class="k"&gt;*&lt;/span&gt;.txt backupdir
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Copies all &lt;code&gt;.txt&lt;/code&gt; files to &lt;code&gt;backupdir&lt;/code&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Explanation of options&lt;/strong&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;-r&lt;/strong&gt;: &lt;strong&gt;Recursive&lt;/strong&gt; — Copies directories and their contents.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;-v&lt;/strong&gt;: &lt;strong&gt;Verbose&lt;/strong&gt; — Shows detailed information about what’s being copied.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;-f&lt;/strong&gt;: &lt;strong&gt;Force&lt;/strong&gt; — Overwrites files without asking for confirmation.&lt;/li&gt;
&lt;/ul&gt;




&lt;h3&gt;
  
  
  &lt;strong&gt;6. mv – Move and Rename Files with Precision&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;&lt;strong&gt;mv&lt;/strong&gt; is your ultimate file mover. Whether you're shifting files around or renaming them, it’s essential.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Move a file&lt;/strong&gt; to another directory:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mv &lt;/span&gt;myfile.txt /path/to/destination/
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Moves &lt;code&gt;myfile.txt&lt;/code&gt; into the specified directory.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Rename a file&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mv &lt;/span&gt;oldname.txt newname.txt
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Renames &lt;code&gt;oldname.txt&lt;/code&gt; to &lt;code&gt;newname.txt&lt;/code&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Move multiple files&lt;/strong&gt;:&lt;br&gt;
&lt;/p&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mv&lt;/span&gt; &lt;span class="k"&gt;*&lt;/span&gt;.txt /new/folder/
&lt;/code&gt;&lt;/pre&gt;


&lt;p&gt;✅ &lt;em&gt;Moves all &lt;code&gt;.txt&lt;/code&gt; files to a new folder.&lt;/em&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Explanation of options&lt;/strong&gt;:  &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;No options&lt;/strong&gt;: Moves files from one location to another or renames them.
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;-v&lt;/strong&gt;: &lt;strong&gt;Verbose&lt;/strong&gt; — Shows details of what’s being moved or renamed.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  &lt;strong&gt;Let’s Wrap This Up – Time to Practice!&lt;/strong&gt;
&lt;/h2&gt;

&lt;p&gt;🎉 You've just learned to &lt;strong&gt;create&lt;/strong&gt;, &lt;strong&gt;delete&lt;/strong&gt;, &lt;strong&gt;copy&lt;/strong&gt;, and &lt;strong&gt;move&lt;/strong&gt; files and directories! These are your foundation commands that will serve you daily. Practice these, and you’ll start seeing how powerful Linux can be when you’re in control of your files.&lt;/p&gt;




&lt;h3&gt;
  
  
  🔥 &lt;strong&gt;Mini Challenges&lt;/strong&gt;:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;Create a &lt;strong&gt;folder structure&lt;/strong&gt; for a new project. Use &lt;code&gt;mkdir&lt;/code&gt; and experiment with the &lt;code&gt;-p&lt;/code&gt; option to make nested directories.&lt;/li&gt;
&lt;li&gt;Write a few lines of code in a file using &lt;strong&gt;cat&lt;/strong&gt;, then try appending to that file. See how easily you can update your work!&lt;/li&gt;
&lt;li&gt;Move a file into a new directory and rename it using &lt;strong&gt;mv&lt;/strong&gt;. Clean up old files with &lt;strong&gt;rm&lt;/strong&gt;.&lt;/li&gt;
&lt;li&gt;Copy a bunch of files with &lt;strong&gt;cp&lt;/strong&gt; and organize them into proper folders. Copy data matching a specific pattern!&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;&lt;strong&gt;Keep up the momentum!&lt;/strong&gt; You’ve unlocked powerful file management skills. Up next, we’ll be diving into &lt;strong&gt;VIM&lt;/strong&gt;. Stay tuned for more and keep exploring!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#linux&lt;/code&gt; &lt;code&gt;#redhat&lt;/code&gt; &lt;code&gt;#rhcsa&lt;/code&gt; &lt;code&gt;#techwithengineers&lt;/code&gt; &lt;code&gt;#techtransition&lt;/code&gt; &lt;code&gt;#learnlinux&lt;/code&gt; &lt;code&gt;#devops&lt;/code&gt; &lt;code&gt;#linuxlab&lt;/code&gt; &lt;code&gt;#cloudwhistler&lt;/code&gt; &lt;code&gt;#30daychallenge&lt;/code&gt; &lt;code&gt;#opensource&lt;/code&gt; &lt;code&gt;#techjourney&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhister</category>
      <category>linux</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Nerds Go to War: Why Linux and Red Hat Certified Heroes Matter</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Mon, 28 Apr 2025 03:36:21 +0000</pubDate>
      <link>https://forem.com/xane_xahid/nerds-go-to-war-why-linux-and-red-hat-certified-heroes-matter-2698</link>
      <guid>https://forem.com/xane_xahid/nerds-go-to-war-why-linux-and-red-hat-certified-heroes-matter-2698</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;⚡ &lt;strong&gt;CODE. CONFIGURE. CONQUER.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
— &lt;em&gt;The Red Hat Way&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;






&lt;ul&gt;
&lt;li&gt;The Battlegrounds We Face&lt;/li&gt;
&lt;li&gt;Why RHEL 9 is Our Weapon of Choice&lt;/li&gt;
&lt;li&gt;Nerds: The Unsung Heroes&lt;/li&gt;
&lt;li&gt;
This is Why We Train

&lt;ul&gt;
&lt;li&gt;Final Word: Rise, Nerds, Rise&lt;/li&gt;
&lt;/ul&gt;


&lt;/li&gt;

&lt;/ul&gt;



&lt;blockquote&gt;
&lt;p&gt;&lt;em&gt;In a world fueled by data and chaos, the silent warriors aren't clad in armor — they're armed with keyboards and commands. Welcome to the real battleground: Infrastructure.&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;




&lt;p&gt;The modern world runs not on magic, but on &lt;strong&gt;infrastructure&lt;/strong&gt; — messy, sprawling networks of machines that need to talk to each other, scale overnight, heal themselves, and withstand attacks from every direction.&lt;/p&gt;

&lt;p&gt;The generals of this new world? &lt;strong&gt;Sysadmins. Automation Engineers. Linux Wizards.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
The frontline weapon? &lt;strong&gt;RHEL 9&lt;/strong&gt; — Red Hat Enterprise Linux, the battle-tested OS that powers critical systems across governments, banks, tech giants, hospitals, and beyond.&lt;/p&gt;

&lt;p&gt;Learning Linux isn't a hobby anymore. It's a survival skill.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Mastering RHEL 9 and earning that Red Hat certification isn’t just a flex — it’s an act of war preparedness.&lt;/strong&gt;&lt;/p&gt;




&lt;h2&gt;
  
  
  The Battlegrounds We Face
&lt;/h2&gt;

&lt;p&gt;Without rock-solid Linux skills:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Infrastructure collapses at scale.&lt;/li&gt;
&lt;li&gt;Downtime costs millions.&lt;/li&gt;
&lt;li&gt;Security holes get exploited faster than you can say &lt;code&gt;sudo su -&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Chaos reigns when automation breaks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;The problem?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Modern infrastructure is too complex for manual babysitting.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;The solution?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Linux, automation, and certified professionals who know how to &lt;em&gt;fight smart&lt;/em&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Why RHEL 9 is Our Weapon of Choice
&lt;/h2&gt;

&lt;p&gt;Red Hat Enterprise Linux 9 isn't just another OS. It’s engineered for the realities of modern infrastructure:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Security-first architecture&lt;/strong&gt; — because breaches are not a matter of &lt;em&gt;if&lt;/em&gt;, but &lt;em&gt;when&lt;/em&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Performance tuning at scale&lt;/strong&gt; — your cloud, containers, and bare-metal servers all optimized to the teeth.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Automation baked in&lt;/strong&gt; — no more fragile shell scripts duct-taped to servers; real automation with Ansible.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Stability and support&lt;/strong&gt; — 10+ years of rock-solid updates. In the battlefield, you don't want surprises.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is why industries trust RHEL 9 to run their mission-critical environments.&lt;br&gt;&lt;br&gt;
And why they trust &lt;strong&gt;Red Hat Certified Engineers (RHCEs)&lt;/strong&gt; to &lt;em&gt;wield&lt;/em&gt; it.&lt;/p&gt;




&lt;h2&gt;
  
  
  Nerds: The Unsung Heroes
&lt;/h2&gt;

&lt;p&gt;When you earn that &lt;strong&gt;RHCSA&lt;/strong&gt; or &lt;strong&gt;RHCE&lt;/strong&gt;, you're not just passing a test — you're proving that:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;You can &lt;em&gt;configure&lt;/em&gt; systems securely and efficiently.&lt;/li&gt;
&lt;li&gt;You can &lt;em&gt;automate&lt;/em&gt; deployments faster than manual setups could even finish.&lt;/li&gt;
&lt;li&gt;You can &lt;em&gt;troubleshoot&lt;/em&gt; when the pressure is high and time is short.&lt;/li&gt;
&lt;li&gt;You can &lt;em&gt;lead&lt;/em&gt; infrastructure projects, migrations, and disaster recoveries.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;You become the nerd that companies &lt;em&gt;pray&lt;/em&gt; for when the servers start crying at 2AM.&lt;br&gt;&lt;br&gt;
You become the calm in the storm. The &lt;strong&gt;tech medic&lt;/strong&gt;. The &lt;strong&gt;strategist&lt;/strong&gt;. The &lt;strong&gt;last line of defense&lt;/strong&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  This is Why We Train
&lt;/h2&gt;

&lt;p&gt;Every &lt;code&gt;chmod&lt;/code&gt;, every &lt;code&gt;systemctl&lt;/code&gt;, every Ansible playbook...&lt;br&gt;&lt;br&gt;
It's not just a command. It's &lt;strong&gt;training for battle&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;When you learn Linux, when you pursue that RHCSA or RHCE, you’re preparing for real-world warzones:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Securing healthcare data from cyber threats.&lt;/li&gt;
&lt;li&gt;Keeping financial systems running when millions depend on them.&lt;/li&gt;
&lt;li&gt;Scaling global applications overnight during product launches.&lt;/li&gt;
&lt;li&gt;Resurrecting critical systems after natural disasters.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The world may never know your name.&lt;br&gt;&lt;br&gt;
But your servers will sing your praises.&lt;br&gt;&lt;br&gt;
And somewhere out there, a whole company will keep standing because of &lt;em&gt;you&lt;/em&gt;.&lt;/p&gt;




&lt;h2&gt;
  
  
  Final Word: Rise, Nerds, Rise
&lt;/h2&gt;

&lt;p&gt;This journey isn't for the faint of heart.&lt;br&gt;&lt;br&gt;
But if you feel that fire — that itch to &lt;em&gt;know more, to build stronger, to protect and optimize&lt;/em&gt; — then welcome to the frontlines.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Linux isn't just another skill. It's the weapon of choice.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Red Hat Certified Professionals aren't just employees. They are warriors.&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;So gear up. Train hard. Automate smart.&lt;br&gt;&lt;br&gt;
The world needs us.&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;The battle for better infrastructure has just begun.&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
 &lt;em&gt;Follow my RHCSA + Ansible training series and join the Red Hat warriors in mastering RHEL 9!&lt;/em&gt;&lt;br&gt;&lt;br&gt;
 &lt;em&gt;Have war stories, tips, or questions? Sound off in the comments — let’s forge stronger systems together!&lt;/em&gt;&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#linux&lt;/code&gt; &lt;code&gt;#redhat&lt;/code&gt; &lt;code&gt;#rhcsa&lt;/code&gt; &lt;code&gt;#techwithengineers&lt;/code&gt; &lt;code&gt;#techtransition&lt;/code&gt; &lt;code&gt;#learnlinux&lt;/code&gt; &lt;code&gt;#devops&lt;/code&gt; &lt;code&gt;#linuxlab&lt;/code&gt; &lt;code&gt;#cloudwhistler&lt;/code&gt; &lt;code&gt;#30daychallenge&lt;/code&gt; &lt;code&gt;#opensource&lt;/code&gt; &lt;code&gt;#techjourney&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhistler</category>
      <category>linux</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Leveling Up — Linux Commands You’ll Actually Use (30-Day RHCSA + Ansible Journey)</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Mon, 28 Apr 2025 00:51:49 +0000</pubDate>
      <link>https://forem.com/xane_xahid/leveling-up-linux-commands-youll-actually-use-37kf</link>
      <guid>https://forem.com/xane_xahid/leveling-up-linux-commands-youll-actually-use-37kf</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;You survived your first Linux commands? Congratulations, you’re officially dangerous!&lt;br&gt;&lt;br&gt;
Now let’s add some serious power moves to your toolbox — still beginner-friendly, but with enough spice to impress.&lt;/p&gt;
&lt;/blockquote&gt;




&lt;h2&gt;
  
  
  Commands That Make Life Easier
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. &lt;code&gt;uname -r&lt;/code&gt; — Know Your Kernel Like You Know Your Coffee
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;uname&lt;/span&gt; &lt;span class="nt"&gt;-r&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Displays your Linux kernel version.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Use it when:&lt;/strong&gt; You're troubleshooting or bragging about running the latest and greatest.&lt;/p&gt;




&lt;h3&gt;
  
  
  2. &lt;code&gt;whoami&lt;/code&gt; — Existential Crisis, Solved
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;whoami&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Tells you which user you're currently logged in as.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Use it when:&lt;/strong&gt; You forgot who you are (at least digitally).&lt;/p&gt;




&lt;h3&gt;
  
  
  3. &lt;code&gt;df -h&lt;/code&gt; — How Much Room Left for Bad Decisions?
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;df&lt;/span&gt; &lt;span class="nt"&gt;-h&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Shows disk space usage in a human-readable format.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Use it when:&lt;/strong&gt; You want to check if you’re running out of space before downloading more cat memes.&lt;/p&gt;




&lt;h3&gt;
  
  
  4. &lt;code&gt;top&lt;/code&gt; — The Pulse of Your Machine
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;top
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Live view of running processes and system resource usage.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Use it when:&lt;/strong&gt; You hear the fans spinning like a jet engine.&lt;/p&gt;




&lt;h3&gt;
  
  
  5. &lt;code&gt;cat&lt;/code&gt; — Fastest Way to Peek at a File
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cat &lt;/span&gt;filename.txt
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Displays the contents of a file.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Use it when:&lt;/strong&gt; You need a quick look without opening an editor.&lt;/p&gt;




&lt;h3&gt;
  
  
  6. &lt;code&gt;chmod&lt;/code&gt; — Because Permissions Matter
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;chmod &lt;/span&gt;755 myscript.sh
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Changes file permissions.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Use it when:&lt;/strong&gt; Your script refuses to run because it's "not executable."&lt;/p&gt;




&lt;h3&gt;
  
  
  7. &lt;code&gt;man&lt;/code&gt; — The Book of Secrets
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;man &lt;span class="nb"&gt;ls&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Purpose:&lt;/strong&gt; Opens the manual for a command.&lt;br&gt;&lt;br&gt;
&lt;strong&gt;Use it when:&lt;/strong&gt; You want to dive deeper into how a command works.&lt;/p&gt;




&lt;h2&gt;
  
  
  🏆 Mini Challenge: Become the Command Ninja
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Open your terminal.&lt;/li&gt;
&lt;li&gt;Find out your kernel version with &lt;code&gt;uname -r&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Check your user with &lt;code&gt;whoami&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;See your disk usage with &lt;code&gt;df -h&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Peek into any file using &lt;code&gt;cat&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;Explore &lt;code&gt;man chmod&lt;/code&gt; and learn about file permissions.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Bonus Points:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Use &lt;code&gt;top&lt;/code&gt; and identify which process is hogging your CPU!&lt;/p&gt;




&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Pro Tip:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Practice every day. Linux rewards curiosity. The more you try, the faster you level up.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;🔥 &lt;strong&gt;Ready to flex?&lt;/strong&gt; Drop your favorite command in the comments!&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#linux&lt;/code&gt; &lt;code&gt;#redhat&lt;/code&gt; &lt;code&gt;#rhcsa&lt;/code&gt; &lt;code&gt;#techwithengineers&lt;/code&gt; &lt;code&gt;#techtransition&lt;/code&gt; &lt;code&gt;#learnlinux&lt;/code&gt; &lt;code&gt;#devops&lt;/code&gt; &lt;code&gt;#linuxlab&lt;/code&gt; &lt;code&gt;#cloudwhistler&lt;/code&gt; &lt;code&gt;#30daychallenge&lt;/code&gt; &lt;code&gt;#opensource&lt;/code&gt; &lt;code&gt;#techjourney&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhistler</category>
      <category>linux</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Getting Comfortable with the Command Line (30-Day RHCSA + Ansible Journey)</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Sun, 27 Apr 2025 01:10:30 +0000</pubDate>
      <link>https://forem.com/xane_xahid/getting-comfortable-with-the-command-line-3fpd</link>
      <guid>https://forem.com/xane_xahid/getting-comfortable-with-the-command-line-3fpd</guid>
      <description>&lt;p&gt;Today we finally opened the terminal — and this is where Linux begins to feel like Linux.&lt;/p&gt;

&lt;p&gt;No more clicking around folders like in Windows. Here, you take control using the shell.&lt;br&gt;&lt;br&gt;
It might initially feel intimidating, but these are the basics that build your confidence.&lt;/p&gt;


&lt;h2&gt;
  
  
  💻 Understanding the Shell Prompt
&lt;/h2&gt;

&lt;p&gt;When you launch a terminal in Linux, you’ll see something like this:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="o"&gt;[&lt;/span&gt;root@vbox ~]#
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;Here’s what that means:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;root&lt;/code&gt;&lt;/strong&gt; — This is the &lt;strong&gt;user&lt;/strong&gt; (we’re logged in as the superuser here).&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;@vbox&lt;/code&gt;&lt;/strong&gt; — The &lt;strong&gt;hostname&lt;/strong&gt; of the machine. In this case, it’s called &lt;code&gt;vbox&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;~&lt;/code&gt;&lt;/strong&gt; — This symbol refers to the &lt;strong&gt;home directory&lt;/strong&gt; of the current user.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;&lt;code&gt;#&lt;/code&gt;&lt;/strong&gt; — Indicates that you're using a &lt;strong&gt;root shell&lt;/strong&gt;. Regular users see a &lt;code&gt;$&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  📁 Exploring the Linux File System
&lt;/h2&gt;

&lt;p&gt;Everything starts from &lt;code&gt;/&lt;/code&gt; (the root directory), and the system branches out from there:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Directory&lt;/th&gt;
&lt;th&gt;Purpose&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Root of the file system&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/home&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Home directories for users&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/root&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Home for the root user&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/bin&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Essential user binaries (commands like &lt;code&gt;ls&lt;/code&gt;, &lt;code&gt;cp&lt;/code&gt;, &lt;code&gt;mv&lt;/code&gt;)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/sbin&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;System binaries (commands used for system admin tasks)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/usr&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;User-installed software and libraries&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/etc&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Configuration files&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/var&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Variable files like logs, mail, spool&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/tmp&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Temporary files (cleared on reboot)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/mnt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Mount point for temporarily mounted filesystems&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/media&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Mount point for removable media (USB, CD-ROM)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/dev&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Device files (like disks, USBs, etc.)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/proc&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Virtual filesystem providing process info&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/sys&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Virtual filesystem with system device info&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/opt&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Optional or third-party software packages&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/lib&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Essential shared libraries&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;/boot&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Boot loader files and kernel&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Each folder has its own critical purpose — it keeps Linux organized and powerful.&lt;/p&gt;




&lt;h2&gt;
  
  
  🔧 Basic Linux Commands We Practiced
&lt;/h2&gt;

&lt;p&gt;Here are the basic commands we explored — with examples:&lt;/p&gt;

&lt;h3&gt;
  
  
  💻 System Info &amp;amp; Utilities
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;uname&lt;/span&gt;        &lt;span class="c"&gt;# Print system info&lt;/span&gt;
&lt;span class="nb"&gt;uname&lt;/span&gt; &lt;span class="nt"&gt;-r&lt;/span&gt;     &lt;span class="c"&gt;# Show kernel version&lt;/span&gt;
&lt;span class="nb"&gt;date&lt;/span&gt;         &lt;span class="c"&gt;# Show current date and time&lt;/span&gt;
cal          &lt;span class="c"&gt;# Display calendar&lt;/span&gt;
&lt;span class="nb"&gt;uptime&lt;/span&gt;       &lt;span class="c"&gt;# How long the system has been running&lt;/span&gt;
&lt;span class="nb"&gt;whoami&lt;/span&gt;       &lt;span class="c"&gt;# Shows currently logged-in user&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  📂 Navigation
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;cd&lt;/span&gt;           &lt;span class="c"&gt;# Change directory&lt;/span&gt;
&lt;span class="nb"&gt;cd&lt;/span&gt; /         &lt;span class="c"&gt;# Go to root directory&lt;/span&gt;
&lt;span class="nb"&gt;cd&lt;/span&gt; ..        &lt;span class="c"&gt;# Go one directory up&lt;/span&gt;
&lt;span class="nb"&gt;pwd&lt;/span&gt;          &lt;span class="c"&gt;# Print current working directory&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  🧱 Directory &amp;amp; File Handling
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;&lt;span class="nb"&gt;mkdir &lt;/span&gt;myfolder       &lt;span class="c"&gt;# Create a new directory&lt;/span&gt;
&lt;span class="nb"&gt;ls&lt;/span&gt;                   &lt;span class="c"&gt;# List contents of directory&lt;/span&gt;
&lt;span class="nb"&gt;ls&lt;/span&gt; &lt;span class="nt"&gt;-l&lt;/span&gt;                &lt;span class="c"&gt;# List in long format (details)&lt;/span&gt;
&lt;span class="nb"&gt;ls&lt;/span&gt; &lt;span class="nt"&gt;-a&lt;/span&gt;                &lt;span class="c"&gt;# Include hidden files&lt;/span&gt;
&lt;span class="nb"&gt;touch &lt;/span&gt;myfile.txt     &lt;span class="c"&gt;# Create a blank file&lt;/span&gt;
&lt;span class="nb"&gt;rm &lt;/span&gt;myfile.txt        &lt;span class="c"&gt;# Delete a file&lt;/span&gt;
&lt;span class="nb"&gt;rmdir &lt;/span&gt;myfolder       &lt;span class="c"&gt;# Remove an empty directory&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h3&gt;
  
  
  👤 User and Permissions
&lt;/h3&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight shell"&gt;&lt;code&gt;su                  &lt;span class="c"&gt;# Switch user&lt;/span&gt;
&lt;span class="nb"&gt;history&lt;/span&gt;             &lt;span class="c"&gt;# Show recently used commands&lt;/span&gt;
clear               &lt;span class="c"&gt;# Clear the terminal screen&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  💡 Troubleshooting Tip
&lt;/h2&gt;

&lt;p&gt;If you try a command and see &lt;strong&gt;"command not found"&lt;/strong&gt;, check:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;If you’re spelling it correctly&lt;/li&gt;
&lt;li&gt;Whether the command is installed&lt;/li&gt;
&lt;li&gt;If your &lt;code&gt;$PATH&lt;/code&gt; variable includes the correct directories&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;code&gt;#LinuxBasics&lt;/code&gt; &lt;code&gt;#RHCSA&lt;/code&gt; &lt;code&gt;#CommandLineTools&lt;/code&gt; &lt;code&gt;#LearnLinux&lt;/code&gt; &lt;code&gt;#RedHat&lt;/code&gt; &lt;code&gt;#DevToCommunity&lt;/code&gt; &lt;code&gt;#TechPivot&lt;/code&gt; &lt;code&gt;#Techwithengineers&lt;/code&gt; &lt;code&gt;#CloudWhistler&lt;/code&gt; &lt;code&gt;#RHCSAChallenge&lt;/code&gt; &lt;code&gt;#30daysRHCSA+Ansiblechallenge&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhistler</category>
      <category>linux</category>
      <category>devops</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Setting Up My Linux Lab with RHEL 9 (30-Day RHCSA + Ansible Journey)</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Thu, 24 Apr 2025 16:36:57 +0000</pubDate>
      <link>https://forem.com/xane_xahid/setting-up-my-linux-lab-with-rhel-9-30-day-rhcsa-journey-bdk</link>
      <guid>https://forem.com/xane_xahid/setting-up-my-linux-lab-with-rhel-9-30-day-rhcsa-journey-bdk</guid>
      <description>&lt;p&gt;Day 1 of the &lt;strong&gt;RHCSA + Ansible Fast Track Training&lt;/strong&gt; with the &lt;strong&gt;CloudWhistler Community&lt;/strong&gt; was all about setting up the lab environment. This isn’t just busy work — this is the groundwork for everything we’ll build from here.&lt;/p&gt;

&lt;p&gt;And honestly? It felt like a real moment. Because setting up your own lab makes it real.&lt;/p&gt;




&lt;h3&gt;
  
  
  What We Did:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Installed &lt;strong&gt;VirtualBox&lt;/strong&gt; to create our virtual environment
&lt;/li&gt;
&lt;li&gt;Downloaded &lt;strong&gt;Red Hat Enterprise Linux 9 (RHEL 9)&lt;/strong&gt; ISO
&lt;/li&gt;
&lt;li&gt;Created a VM from scratch and installed RHEL 9 on it
&lt;/li&gt;
&lt;li&gt;Got our first look at the &lt;strong&gt;Linux CLI (Command Line Interface)&lt;/strong&gt; — even if we didn't dive in yet&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is where it starts. Your machine becomes your personal lab — a safe place to break things, fix things, and get hands-on with Linux.&lt;/p&gt;




&lt;h3&gt;
  
  
  🧰 Troubleshooting During Installation
&lt;/h3&gt;

&lt;p&gt;Like many of us in the session, I hit a few bumps. If you're doing this solo, here are some &lt;strong&gt;common issues&lt;/strong&gt; and how to solve them:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🔹 VirtualBox not detecting RHEL ISO?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Make sure you’ve selected the ISO under "Storage" → Controller: IDE → and checked "Live CD/DVD". Also, verify that the ISO isn’t corrupted.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;🔹 VM crashes or stuck during boot?&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
Check your allocated memory (at least 2 GB recommended) and CPU settings. Also, enable &lt;strong&gt;Virtualization Technology (VT-x)&lt;/strong&gt; from your BIOS if you haven’t.&lt;/p&gt;




&lt;h3&gt;
  
  
  💡 Pro Tip from the Training:
&lt;/h3&gt;

&lt;p&gt;Even setting up your lab teaches you a lot. Things like:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The importance of &lt;strong&gt;resource allocation&lt;/strong&gt; (RAM, CPU)
&lt;/li&gt;
&lt;li&gt;Understanding &lt;strong&gt;ISO images&lt;/strong&gt;, boot orders, and disk partitions
&lt;/li&gt;
&lt;li&gt;Getting comfortable with errors — and learning to solve them one step at a time
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is the part that builds muscle memory.&lt;/p&gt;




&lt;h3&gt;
  
  
  🧭 Reflection:
&lt;/h3&gt;

&lt;p&gt;Before this, I never thought of myself as someone who could “set up a system.” Now, I’ve got a fully functioning Linux machine on my own hardware. And yes, I needed guidance, but I made it happen.&lt;/p&gt;

&lt;p&gt;That’s a win. And it’s only Day 1.&lt;/p&gt;

&lt;p&gt;If you're thinking about learning Linux or preparing for RHCSA — don’t wait until you feel “ready.”&lt;br&gt;&lt;br&gt;
Set up the lab. Press the buttons. Hit a few errors. That’s where it starts.&lt;/p&gt;

&lt;p&gt;Let me know if you're setting yours up too, or if you get stuck — I’ll share whatever I can from my own setup.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#linux&lt;/code&gt; &lt;code&gt;#redhat&lt;/code&gt; &lt;code&gt;#rhcsa&lt;/code&gt; &lt;code&gt;#techwithengineers&lt;/code&gt; &lt;code&gt;#techtransition&lt;/code&gt; &lt;code&gt;#learnlinux&lt;/code&gt; &lt;code&gt;#devops&lt;/code&gt; &lt;code&gt;#linuxlab&lt;/code&gt; &lt;code&gt;#cloudwhistler&lt;/code&gt; &lt;code&gt;#30daychallenge&lt;/code&gt; &lt;code&gt;#opensource&lt;/code&gt; &lt;code&gt;#techjourney&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhistler</category>
      <category>linux</category>
      <category>opensource</category>
      <category>devops</category>
    </item>
    <item>
      <title>Why Linux? Why Now? (30-Day RHCSA + Ansible Journey)</title>
      <dc:creator>Muhammad Zulqernain Zahid</dc:creator>
      <pubDate>Tue, 22 Apr 2025 22:23:54 +0000</pubDate>
      <link>https://forem.com/xane_xahid/why-linux-why-now-30-day-rhcsa-ansible-journey-nek</link>
      <guid>https://forem.com/xane_xahid/why-linux-why-now-30-day-rhcsa-ansible-journey-nek</guid>
      <description>&lt;p&gt;I'm officially kicking off my 30-day RHCSA + Ansible Fast Track Training with the &lt;strong&gt;CloudWhistler Community&lt;/strong&gt;, and I want to bring you along — not just to document my journey, but to &lt;em&gt;share&lt;/em&gt; what I’m learning in real-time with those of you walking the same path.&lt;/p&gt;

&lt;p&gt;On Day 0, we didn't touch the command line. Instead, we went back — way back — to understand the &lt;strong&gt;roots of Linux&lt;/strong&gt;, where it came from, and &lt;em&gt;why it still matters so much today&lt;/em&gt;.&lt;/p&gt;

&lt;h3&gt;
  
  
  What We Covered:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;How &lt;strong&gt;Linux evolved from Unix&lt;/strong&gt; — and why open-source changed everything
&lt;/li&gt;
&lt;li&gt;Why Linux powers &lt;em&gt;everything&lt;/em&gt; from supercomputers to smartphones
&lt;/li&gt;
&lt;li&gt;Its presence in cloud infrastructure, cybersecurity, DevOps, and more
&lt;/li&gt;
&lt;li&gt;And why mastering Linux is &lt;strong&gt;foundational&lt;/strong&gt; — not optional — if you're serious about building a future in tech&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For someone like me — transitioning into tech from a completely non-technical background — this hit hard. I’ve always worked &lt;em&gt;on&lt;/em&gt; tech systems, never &lt;em&gt;inside&lt;/em&gt; them. So understanding why Linux is so deeply embedded in everything modern gave me the “why” I didn’t even know I needed.&lt;/p&gt;

&lt;p&gt;It’s not just about learning to type commands in a terminal.&lt;br&gt;&lt;br&gt;
It’s about building a &lt;strong&gt;mental model&lt;/strong&gt; of how systems work — so you can troubleshoot, automate, and eventually, lead.&lt;/p&gt;

&lt;p&gt;If you’ve ever felt behind because you didn’t come from a computer science background, or wondered whether you’re cut out for this — I get it. I’m figuring it out as I go. And I’ll be sharing it all here.&lt;/p&gt;

&lt;p&gt;Let’s do this. One day at a time.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;Tags:&lt;/strong&gt;&lt;br&gt;&lt;br&gt;
&lt;code&gt;#RedHat&lt;/code&gt; &lt;code&gt;#linux&lt;/code&gt; &lt;code&gt;#RHCSA&lt;/code&gt; &lt;code&gt;#careertransition&lt;/code&gt; &lt;code&gt;#techwithengineers&lt;/code&gt; &lt;code&gt;#cloudwhistler&lt;/code&gt; &lt;code&gt;#opensource&lt;/code&gt; &lt;code&gt;#techjourney&lt;/code&gt; &lt;code&gt;#learnlinux&lt;/code&gt; &lt;code&gt;#30daychallenge&lt;/code&gt; &lt;code&gt;#devops&lt;/code&gt;&lt;/p&gt;

</description>
      <category>cloudwhistler</category>
      <category>opensource</category>
      <category>linux</category>
      <category>devops</category>
    </item>
  </channel>
</rss>
