<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Linux]]></title><description><![CDATA[Linux]]></description><link>https://linux-day2.hashnode.dev</link><generator>RSS for Node</generator><lastBuildDate>Sat, 10 Oct 2026 05:48:59 GMT</lastBuildDate><atom:link href="https://linux-day2.hashnode.dev/rss.xml" rel="self" type="application/rss+xml"/><language><![CDATA[en]]></language><ttl>60</ttl><item><title><![CDATA[Linux File System: A Beginner-Friendly Guide         for DevOps Engineers]]></title><description><![CDATA[What is the Linux File System?
The Linux file system is a structured way of storing and organizing files and directories. Everything in Linux is treated as a file, including documents, directories, devices and even processes.

Linux follows a tree-li...]]></description><link>https://linux-day2.hashnode.dev/linux-file-system-a-beginner-friendly-guide-for-devops-engineers</link><guid isPermaLink="true">https://linux-day2.hashnode.dev/linux-file-system-a-beginner-friendly-guide-for-devops-engineers</guid><category><![CDATA[Devops]]></category><category><![CDATA[linux-file-system]]></category><category><![CDATA[Linux]]></category><dc:creator><![CDATA[vennela sunkara]]></dc:creator><pubDate>Fri, 09 Jan 2026 10:45:03 GMT</pubDate><content:encoded><![CDATA[<h1 id="heading-what-is-the-linux-file-system">What is the Linux File System?</h1>
<p>The Linux file system is a structured way of storing and organizing files and directories. Everything in Linux is treated as a file, including documents, directories, devices and even processes.</p>
<hr />
<p>Linux follows a tree-like structure, starting from a single top-level directory.</p>
<p><img src="https://cdn.hashnode.com/res/hashnode/image/upload/v1767783269274/1ef71ed9-10c5-4cd5-a58f-7b0fb71ee9a8.png" alt class="image--right mx-auto mr-0" /></p>
<ol>
<li><h2 id="heading-root-directory">/ (Root Directory):</h2>
<p> —&gt; The root directory is represented by a forward slash (/).</p>
<p> —&gt; This is the top-level directory in Linux.</p>
<p> —&gt; We can say that it is the starting point of the Linux File System, means the Linux starts building the system from here.</p>
<p> —&gt; All other directories and files are located under the root directory.</p>
<p> —&gt; Without root directory, Linux cannot function.</p>
<p> <strong><mark>Example:</mark></strong> <code>/etc</code>, <code>/home</code>, <code>/var</code> all exist under <code>/</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>All mounts (EBS, NFS, volumes) attach under <code>/</code></p>
</li>
<li><p>Containers and servers depend on this hierarchy.</p>
</li>
<li><p>System recovery starts from root.</p>
<p>  <strong><mark>Example: </mark></strong> Mounting EBS</p>
</li>
</ul>
</li>
</ol>
<ol start="2">
<li><h2 id="heading-bin">/bin:</h2>
<p> —&gt; It contains essential user commands.</p>
<p> —&gt; These commands work even in rescue mode.</p>
<p> —&gt; Used by all users.</p>
<p> <strong><mark>Example:</mark></strong> <code>ls</code>, <code>cp</code>, <code>rm</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>CI/CD scripts rely on these commands.</p>
</li>
<li><p>Used inside Docker containers.</p>
</li>
<li><p>Required in minimal OS images.</p>
<p>  <strong><mark>Example:</mark></strong> Jenkins job uses</p>
</li>
</ul>
</li>
</ol>
<ol start="3">
<li><h2 id="heading-boot">/boot:</h2>
<p> —&gt; Stores bootloader and kernel files.</p>
<p> —&gt; Required during system startup.</p>
<p> —&gt; Without this, Linux cannot boot.</p>
<p> <strong><mark>Example:</mark></strong> <code>/boot/config-5.15.0</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>Kernal upgrades during patching.</p>
</li>
<li><p>Required for VM reboot after updates.</p>
</li>
<li><p>Boot failure troubleshooting.</p>
<p>  <strong><mark>Example:</mark></strong> Updating kernel in EC2 and rebooting</p>
</li>
</ul>
</li>
</ol>
<ol start="4">
<li><h2 id="heading-dev">/dev:</h2>
<p> —&gt; Holds device files for hardware.</p>
<p> —&gt; Devices are treated as files.</p>
<p> —&gt; Used to communicate with hardware.</p>
<p> <strong><mark>Example:</mark></strong> <code>/dev/sda</code> (disk), <code>/dev/null</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>Disk attachements in cloud VMs.</p>
</li>
<li><p>Used while mounting volumes.</p>
</li>
<li><p>Important in storage troubleshooting.</p>
<p>  <strong><mark>Example:</mark></strong></p>
<pre><code class="lang-bash">  lsblk
</code></pre>
</li>
</ul>
</li>
</ol>
<ol start="5">
<li><h2 id="heading-etc">/etc:</h2>
<p> —&gt; Contains system-wide configuration files.</p>
<p> —&gt; Mostly test-based and editable.</p>
<p> —&gt; Changes affect the whole system.</p>
<p> <strong><mark>Example:</mark></strong> <code>/etc/hosts</code>, <code>/etc/passwd</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>Configuration management (Ansible).</p>
</li>
<li><p>App config files stored here.</p>
</li>
<li><p>Service-level tuning</p>
<p>  <strong><mark>Example:</mark></strong></p>
<pre><code class="lang-bash">  /etc/nginx/nginx.conf
</code></pre>
</li>
</ul>
</li>
</ol>
<ol start="6">
<li><h2 id="heading-home">/home:</h2>
<p> —&gt; Stores user-specific data.</p>
<p> —&gt; Each user has a separate directory.</p>
<p> —&gt; Safe area for personal files.</p>
<p> <strong><mark>Example:</mark></strong> <code>/home/vennela/documents</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>SSH keys stored here.</p>
</li>
<li><p>User-based deployments.</p>
</li>
<li><p>Jenkins agent users</p>
<p>  <strong><mark>Example:</mark></strong></p>
<pre><code class="lang-bash">  /home/ec2-user/.ssh/authorized_keys
</code></pre>
</li>
</ul>
</li>
</ol>
<ol start="7">
<li><h2 id="heading-lib">/lib:</h2>
<p> —&gt; Contains shared libraries.</p>
<p> —&gt; Required by system binaries.</p>
<p> —&gt; Similar to <code>.dll</code> files in Windows</p>
<p> <strong><mark>Example:</mark></strong> <code>libssl.so</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>Dependency resolution</p>
</li>
<li><p>Container image runtime support</p>
</li>
<li><p>Fixing shared library errors</p>
<p>  <strong><mark>Example:</mark></strong></p>
<p>  Error: <code>libssl.so not found</code></p>
</li>
</ul>
</li>
</ol>
<ol start="8">
<li><h2 id="heading-opt">/opt:</h2>
<p> —&gt; Used for third-party applications.</p>
<p> —&gt; Keeps external softwares seperate.</p>
<p> —&gt; Not managed directly by package manager.</p>
<p> <strong><mark>Example:</mark></strong> <code>/opt/oracle</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>Installing custom applications.</p>
</li>
<li><p>Vendor software installations.</p>
</li>
<li><p>CI tools setup.</p>
<p>  <strong><mark>Example:</mark></strong></p>
<pre><code class="lang-bash">  /opt/sonarqube
</code></pre>
</li>
</ul>
</li>
</ol>
<ol start="9">
<li><h2 id="heading-sbin">/sbin:</h2>
<p> —&gt; Stores system administration commands.</p>
<p> —&gt; Mainly used by root user.</p>
<p> —&gt; Helps in system repair and maintenance.</p>
<p> <strong><mark>Example:</mark></strong> <code>iptables</code>, <code>shutdown</code></p>
<p> <strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>Network &amp; service management.</p>
</li>
<li><p>Disk repair &amp; system recovery.</p>
</li>
<li><p>Used in automation scripts.</p>
<p>  <strong><mark>Example:</mark></strong></p>
<pre><code class="lang-bash">  iptables -L
</code></pre>
</li>
</ul>
</li>
</ol>
<ol start="10">
<li><h2 id="heading-tmp">/tmp:</h2>
<p>—&gt; Stores temporary runtime files.</p>
<p>—&gt; Cleared automatically on reboot.</p>
<p>—&gt; Used by programs and users.</p>
<p><strong><mark>Example:</mark></strong> Browser temp files</p>
<p><strong><em>DevOps use:</em></strong></p>
<ul>
<li><p>Build artifacts.</p>
</li>
<li><p>CI pipeline temp storage.</p>
</li>
<li><p>Script execution files.</p>
<p>  <strong><mark>Example:</mark></strong></p>
<pre><code class="lang-bash">  /tmp/build-output
</code></pre>
</li>
</ul>
</li>
</ol>
<ol start="11">
<li><h2 id="heading-usr">/usr:</h2>
<p>—&gt; Contains user-level applications and tools.</p>
<p>—&gt; Most software lives here.</p>
<p>—&gt; Not required for early boot.</p>
<p><strong><mark>Example:</mark></strong> <code>/usr/bin/java</code>, <code>/usr/lib</code></p>
</li>
</ol>
<p><strong><em>DevOps use:</em></strong></p>
<ul>
<li><ul>
<li><p>Installed DevOps tools.</p>
<ul>
<li><p>Language runtimes.</p>
</li>
<li><p>Package-managed software.</p>
<p>  <strong><mark>Example:</mark></strong></p>
<pre><code class="lang-bash">  /usr/bin/docker
  /usr/bin/kubectl
</code></pre>
<p>  <em>In conclusion, we can say that understanding the</em> <strong><em>Linux file system</em></strong> <em>helps us know where things live and why they matter. But in</em> <strong><em>DevOps*</em></strong>, this knowledge is essential for configuration, troubleshooting and managing production system efficiently.*</p>
</li>
</ul>
</li>
</ul>
</li>
</ul>
]]></content:encoded></item></channel></rss>