লিনাক্স অপারেটিং সিস্টেমের বুট প্রক্রিয়া একটি জটিল কিন্তু অত্যন্ত সুসংগঠিত প্রক্রিয়া। এই প্রক্রিয়ার মাধ্যমে কম্পিউটার চালু হয় এবং অপারেটিং সিস্টেম লোড হয়ে ব্যবহারকারীর ইনপুটের জন্য প্রস্তুত হয়। এই আর্টিকেলে আমরা লিনাক্স বুট প্রক্রিয়ার বিভিন্ন ধাপগুলো সহজভাবে ব্যাখ্যা করার চেষ্টা করব।
১. BIOS/UEFI প্রক্রিয়া
কম্পিউটার চালু করার সাথে সাথে প্রথমে BIOS (Basic Input/Output System) বা UEFI (Unified Extensible Firmware Interface) সক্রিয় হয়। BIOS/UEFI হল ফার্মওয়্যার যা হার্ডওয়্যার এবং অপারেটিং সিস্টেমের মধ্যে সংযোগ স্থাপন করে। এর প্রধান কাজ হল হার্ডওয়্যার ডিভাইসগুলো চেক করা এবং বুট লোডার খুঁজে বের করা।
- POST (Power-On Self-Test): BIOS/UEFI প্রথমে হার্ডওয়্যার ডিভাইসগুলো চেক করে, যেমন RAM, CPU, হার্ড ডিস্ক ইত্যাদি। যদি কোনো সমস্যা থাকে, তাহলে এটি একটি বীপ সাউন্ড বা স্ক্রিনে এরর মেসেজ দেখাবে।
- বুট ডিভাইস নির্বাচন: BIOS/UEFI কনফিগারেশন অনুযায়ী বুট ডিভাইস নির্বাচন করে, যেমন হার্ড ডিস্ক, SSD, USB ড্রাইভ, বা নেটওয়ার্ক।
২. বুট লোডার (Boot Loader)
BIOS/UEFI বুট ডিভাইস থেকে বুট লোডার লোড করে। লিনাক্সে সাধারণত GRUB (Grand Unified Bootloader) বা LILO (Linux Loader) ব্যবহার করা হয়। বুট লোডারের প্রধান কাজ হল অপারেটিং সিস্টেম কার্নেল লোড করা।
- GRUB: GRUB একটি জনপ্রিয় বুট লোডার যা লিনাক্স কার্নেল লোড করে। এটি একটি মেনু প্রদর্শন করে যেখানে ব্যবহারকারী বিভিন্ন অপারেটিং সিস্টেম বা কার্নেল সংস্করণ নির্বাচন করতে পারে।
- কার্নেল লোডিং: GRUB কনফিগারেশন ফাইল (
grub.cfg
) থেকে কার্নেল এবং initramfs (initial RAM filesystem) লোড করে। initramfs হল একটি অস্থায়ী ফাইল সিস্টেম যা কার্নেল বুট করার জন্য প্রয়োজনীয় ড্রাইভার এবং টুলস ধারণ করে।
৩. কার্নেল ইনিশিয়ালাইজেশন
কার্নেল লোড হওয়ার পরে, এটি সিস্টেম রিসোর্স ইনিশিয়ালাইজ করে এবং হার্ডওয়্যার ডিভাইসগুলো সেট আপ করে। কার্নেল initramfs থেকে প্রয়োজনীয় ড্রাইভার লোড করে এবং রুট ফাইল সিস্টেম মাউন্ট করে।
- রুট ফাইল সিস্টেম মাউন্ট: কার্নেল রুট ফাইল সিস্টেম (
/
) মাউন্ট করে, যা অপারেটিং সিস্টেমের মূল ফাইল সিস্টেম। এটি সাধারণত ext4, XFS, বা Btrfs ফাইল সিস্টেমে থাকে। - প্রথম প্রক্রিয়া চালু: কার্নেল প্রথম প্রক্রিয়া হিসেবে
init
বাsystemd
চালু করে।init
হল ঐতিহ্যবাহী init সিস্টেম, যেখানেsystemd
আধুনিক লিনাক্স ডিস্ট্রিবিউশনে ব্যবহৃত হয়।

৪. সিস্টেম ইনিশিয়ালাইজেশন (System Initialization)
systemd
বা init
সিস্টেমের বিভিন্ন সার্ভিস এবং ডেমন চালু করে। এই ধাপে নেটওয়ার্কিং, ইউজার লগইন প্রম্পট, এবং অন্যান্য ব্যাকগ্রাউন্ড সার্ভিস চালু হয়।
- টার্গেট/রানলেভেল:
systemd
বিভিন্ন টার্গেট (target) অনুযায়ী সার্ভিস চালু করে। উদাহরণস্বরূপ,graphical.target
গ্রাফিকাল ইউজার ইন্টারফেস চালু করে, যেখানেmulti-user.target
কমান্ড লাইন ইন্টারফেস প্রদান করে। - লগইন প্রম্পট: সিস্টেম ইনিশিয়ালাইজেশন সম্পূর্ণ হলে, লিনাক্স ব্যবহারকারীর লগইন প্রম্পট প্রদর্শন করে। গ্রাফিকাল ইন্টারফেসের ক্ষেত্রে ডিসপ্লে ম্যানেজার (যেমন GDM, LightDM) চালু হয়, এবং কমান্ড লাইন ইন্টারফেসের ক্ষেত্রে টার্মিনাল লগইন প্রম্পট দেখা যায়।
৫. ইউজার সেশন
লগইন করার পরে, ব্যবহারকারী তার সেশনে প্রবেশ করে। গ্রাফিকাল ইন্টারফেসের ক্ষেত্রে ডেস্কটপ এনভায়রনমেন্ট (যেমন GNOME, KDE) চালু হয়, এবং কমান্ড লাইন ইন্টারফেসের ক্ষেত্রে শেল (যেমন Bash, Zsh) প্রস্তুত হয়।
সবশেষ
লিনাক্স বুট প্রক্রিয়া একটি সুসংগঠিত এবং ধাপে ধাপে সম্পন্ন হওয়া প্রক্রিয়া। BIOS/UEFI থেকে শুরু করে কার্নেল লোডিং, সিস্টেম ইনিশিয়ালাইজেশন, এবং ইউজার সেশন পর্যন্ত প্রতিটি ধাপ গুরুত্বপূর্ণ। এই প্রক্রিয়া সম্পর্কে জানা লিনাক্স ব্যবহারকারীদের জন্য অত্যন্ত উপকারী, বিশেষ করে যখন সিস্টেমে কোনো সমস্যা দেখা দেয় বা কাস্টমাইজেশন প্রয়োজন হয়।
লিনাক্সের এই বুট প্রক্রিয়া এর জটিলতা সত্ত্বেও, এটি একটি নির্ভরযোগ্য এবং দক্ষ সিস্টেম যা বিশ্বজুড়ে মিলিয়ন মিলিয়ন ব্যবহারকারী এবং সার্ভারে ব্যবহৃত হচ্ছে।
লেখকঃ সামিউল হক সুমন, নেটওয়ার্ক প্রকৌশলী, আমেরিকান ইন্টারন্যাশনাল ইউনিভার্সিটি – বাংলাদেশ