<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>linuxboot - Hamradio.my</title>
	<atom:link href="https://hamradio.my/tag/linuxboot/feed/" rel="self" type="application/rss+xml" />
	<link>https://hamradio.my/tag/linuxboot/</link>
	<description>Amateur Radio, Tech Insights and Product Reviews</description>
	<lastBuildDate>Fri, 30 May 2025 15:02:20 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://hamradio.my/wp-content/uploads/2026/02/cropped-cropped-image-removebg-preview-3-32x32.png</url>
	<title>linuxboot - Hamradio.my</title>
	<link>https://hamradio.my/tag/linuxboot/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Understanding the Linux Boot Process: From Power On to Login</title>
		<link>https://hamradio.my/2025/05/understanding-the-linux-boot-process-from-power-on-to-login/</link>
					<comments>https://hamradio.my/2025/05/understanding-the-linux-boot-process-from-power-on-to-login/#respond</comments>
		
		<dc:creator><![CDATA[9M2PJU]]></dc:creator>
		<pubDate>Fri, 30 May 2025 15:02:16 +0000</pubDate>
				<category><![CDATA[archlinux]]></category>
		<category><![CDATA[boot]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[kernel]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[process]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[bios]]></category>
		<category><![CDATA[bootprocess]]></category>
		<category><![CDATA[devops]]></category>
		<category><![CDATA[fedora]]></category>
		<category><![CDATA[grub]]></category>
		<category><![CDATA[initramfs]]></category>
		<category><![CDATA[linuxboot]]></category>
		<category><![CDATA[linuxcommands]]></category>
		<category><![CDATA[linuxguide]]></category>
		<category><![CDATA[linuxkernel]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[penguinpower]]></category>
		<category><![CDATA[SysAdmin]]></category>
		<category><![CDATA[systemd]]></category>
		<category><![CDATA[TechBlog]]></category>
		<category><![CDATA[uefi]]></category>
		<guid isPermaLink="false">https://hamradio.my/?p=7662</guid>

					<description><![CDATA[<p>Whether you&#8217;re a seasoned sysadmin or just diving into Linux, understanding the boot process is key to mastering how your system starts up. The Linux boot process is a fascinating journey that transforms powered-off hardware into a fully operational system. In this post, we&#8217;ll walk through the entire boot sequence, breaking down each stage with [&#8230;]</p>
<p>The post <a href="https://hamradio.my/2025/05/understanding-the-linux-boot-process-from-power-on-to-login/">Understanding the Linux Boot Process: From Power On to Login</a> appeared on <a href="https://hamradio.my">Hamradio.my - Amateur Radio, Tech Insights and Product Reviews</a> by <a href="https://hamradio.my/author/9m2pju/">9M2PJU</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h1 class="wp-block-heading"></h1>



<p class="wp-block-paragraph">Whether you&#8217;re a seasoned sysadmin or just diving into Linux, understanding the boot process is key to mastering how your system starts up. The Linux boot process is a fascinating journey that transforms powered-off hardware into a fully operational system. In this post, we&#8217;ll walk through the entire boot sequence, breaking down each stage with technical clarity.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f50c.png" alt="🔌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Stage 1: BIOS or UEFI – The System’s First Breath</h2>



<p class="wp-block-paragraph">The process begins the moment you press the power button.</p>



<h3 class="wp-block-heading">BIOS (Legacy Systems)</h3>



<ul class="wp-block-list">
<li><strong>POST (Power-On Self Test)</strong> is triggered to check RAM, CPU, keyboard, and basic hardware.</li>



<li>Searches for a bootable device by scanning the boot order (HDD, SSD, USB, etc.).</li>



<li>Once a bootable device is found, BIOS reads the <strong>Master Boot Record (MBR)</strong>, which contains the bootloader.</li>
</ul>



<h3 class="wp-block-heading">UEFI (Modern Systems)</h3>



<ul class="wp-block-list">
<li>Replaces BIOS with a more advanced firmware interface.</li>



<li>Reads the <strong>EFI System Partition (ESP)</strong>, which contains EFI applications like <code>GRUB.efi</code>.</li>



<li>Supports <strong>Secure Boot</strong>, GUID Partition Table (GPT), and faster booting.</li>
</ul>



<p class="wp-block-paragraph"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4dd.png" alt="📝" class="wp-smiley" style="height: 1em; max-height: 1em;" /> <strong>Note:</strong> UEFI is now the standard for most modern hardware.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f4bd.png" alt="💽" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Stage 2: Bootloader – The Linux Gatekeeper</h2>



<p class="wp-block-paragraph">The bootloader is the program that loads and starts the Linux kernel.</p>



<h3 class="wp-block-heading">Common Bootloaders:</h3>



<ul class="wp-block-list">
<li><strong>GRUB (GRand Unified Bootloader)</strong> – Most common in Linux systems.</li>



<li><strong>systemd-boot</strong> – Lightweight bootloader for UEFI systems.</li>



<li><strong>LILO (older systems)</strong> – Largely deprecated.</li>
</ul>



<p class="wp-block-paragraph">The bootloader:</p>



<ul class="wp-block-list">
<li>Loads the selected <strong>kernel image</strong> (e.g., <code>/boot/vmlinuz-linux</code>).</li>



<li>Loads the <strong>initramfs/initrd</strong> – a temporary root filesystem used during early boot.</li>



<li>Passes control and parameters (e.g., root device path, kernel options) to the kernel.</li>
</ul>



<p class="wp-block-paragraph">Example of GRUB config:</p>



<pre class="wp-block-code"><code>linux /boot/vmlinuz-6.1.0 root=/dev/sda2 ro quiet splash
initrd /boot/initrd.img-6.1.0
</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f9e0.png" alt="🧠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Stage 3: Kernel Initialization – The Heart of Linux</h2>



<p class="wp-block-paragraph">Now, the <strong>Linux kernel</strong> takes control.</p>



<h3 class="wp-block-heading">What the Kernel Does:</h3>



<ul class="wp-block-list">
<li>Sets up low-level system components: memory management, I/O scheduling, and CPU initialization.</li>



<li>Loads drivers for essential hardware (from initramfs).</li>



<li>Mounts the <strong>real root filesystem</strong> (e.g., from ext4, btrfs, XFS).</li>



<li>Starts the <strong><code>init</code> process</strong> (PID 1) – the first user-space program.</li>
</ul>



<p class="wp-block-paragraph">If anything goes wrong here (like missing root filesystem), you&#8217;ll see a <strong>kernel panic</strong>.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2699.png" alt="⚙" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Stage 4: Init System – Orchestrating the System Startup</h2>



<p class="wp-block-paragraph">The init system is the &#8220;conductor&#8221; that starts all necessary services.</p>



<h3 class="wp-block-heading">Common Init Systems:</h3>



<ul class="wp-block-list">
<li><strong>systemd</strong> (default on most modern distros like Debian, Ubuntu, Fedora)</li>



<li><strong>SysVinit</strong> (traditional)</li>



<li><strong>OpenRC</strong> (used in Alpine, Gentoo)</li>
</ul>



<h3 class="wp-block-heading">If using <code>systemd</code>, it:</h3>



<ul class="wp-block-list">
<li>Reads <strong>unit files</strong> from <code>/etc/systemd/system/</code> and <code>/usr/lib/systemd/system/</code>.</li>



<li>Mounts local filesystems, activates swap, configures networking.</li>



<li>Starts system services like <code>sshd</code>, <code>NetworkManager</code>, <code>cron</code>, and more.</li>
</ul>



<p class="wp-block-paragraph">You can inspect boot performance using:</p>



<pre class="wp-block-code"><code>systemd-analyze
</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f510.png" alt="🔐" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Stage 5: Login Prompt – Ready for Action</h2>



<p class="wp-block-paragraph">Once all services are up and running:</p>



<ul class="wp-block-list">
<li><strong>CLI systems</strong>: <code>getty</code> spawns login prompts on virtual terminals (e.g., tty1–tty6).</li>



<li><strong>GUI systems</strong>: A <strong>Display Manager</strong> (GDM, LightDM, SDDM) launches, leading to your graphical desktop environment (GNOME, KDE, etc.).</li>
</ul>



<p class="wp-block-paragraph">After login, the system is fully operational, ready for your commands or applications.</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f5fa.png" alt="🗺" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Visual Summary of the Linux Boot Flow</h2>



<pre class="wp-block-code"><code>&#91; Power On ]
     ↓
&#91; BIOS / UEFI ]
     ↓
&#91; Bootloader (GRUB/systemd-boot) ]
     ↓
&#91; Kernel + initramfs ]
     ↓
&#91; Init system (systemd, etc.) ]
     ↓
&#91; System Services + Targets ]
     ↓
&#91; Login Prompt / GUI ]
</code></pre>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f6e0.png" alt="🛠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Bonus: Useful Commands to Explore Boot</h2>



<ul class="wp-block-list">
<li>View last boot duration: <code>systemd-analyze</code></li>



<li>See the breakdown of each service&#8217;s boot time: <code>systemd-analyze blame</code></li>



<li>Inspect boot logs: <code>journalctl -b</code></li>
</ul>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h2 class="wp-block-heading"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f9e0.png" alt="🧠" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Final Thoughts</h2>



<p class="wp-block-paragraph">The Linux boot process may seem complex, but each stage is logically structured to ensure a flexible, powerful, and modular startup system. Whether you&#8217;re debugging a failed boot or optimizing your boot time, understanding this process equips you with the tools to handle your system like a pro.</p>



<p class="wp-block-paragraph">If you&#8217;re using Linux in embedded projects, servers, or even on low-power SBCs like Raspberry Pi, this knowledge becomes even more critical.</p>
<p>The post <a href="https://hamradio.my/2025/05/understanding-the-linux-boot-process-from-power-on-to-login/">Understanding the Linux Boot Process: From Power On to Login</a> appeared on <a href="https://hamradio.my">Hamradio.my - Amateur Radio, Tech Insights and Product Reviews</a> by <a href="https://hamradio.my/author/9m2pju/">9M2PJU</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://hamradio.my/2025/05/understanding-the-linux-boot-process-from-power-on-to-login/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
