Strawberry Group | Topic Three, Byte Part

T3, Byte Part ( 1 )

SELECTING THE BOOT TARGET

DESCRIBING THE RED HAT ENTERPRISE LINUX 8 BOOT PROCESS

1.

The machine is powered on. System frimware run POST (Power on Self Test) and intialize some of the hardware.

( configure system BIOs or UEFI by Pressing F2 )

———————————

সিস্টেম ফার্মওয়্যার আসলে দেখতে কেমন ?

দেখতে কেমন হবে তা নির্ভর করে আপনি এটি কোথায় দেখছেন। এর মূলত দুটি রূপ রয়েছে:

  • ইন্টারফেস বা স্ক্রিনে যেমন দেখায় (BIOS/UEFI)
  • হার্ডওয়্যারে যেমন দেখায় (BIOS Chip)

2.

সিস্টেম ফার্মওয়্যার একটি bootable ডিভাইস খুঁজে বের করে, যা হয়তো UEFI বুট ফার্মওয়্যারে কনফিগার করা থাকে অথবা BIOS-এ নির্ধারিত serial অনুসারে সব ডিস্কে Master Boot Record (MBR) খুঁজে দেখে।

—————————————–

বাস্তব উদাহরণ:

ধরুন, আপনার কম্পিউটারে তিনটি স্টোরেজ ডিভাইস রয়েছে:

  • একটি SSD (যেখানে উইন্ডোজ ইন্সটল করা আছে)
  • একটি হার্ডডিস্ক (ডেটা স্টোরেজের জন্য)
  • একটি USB ফ্ল্যাশ ড্রাইভ

আপনি BIOS-এ বুট অর্ডার এভাবে সেট করেছেন:

  • USB ড্রাইভ,
  • SSD
  • হার্ডডিস্ক

এখন কম্পিউটার চালু হলে, ফার্মওয়্যার প্রথমে USB ড্রাইভে bootable ফাইল (UEFI বা MBR) আছে কি না দেখে।

যদি না থাকে, তখন SSD তে খোঁজে, এবং যদি সেখানে bootable সিস্টেম পাওয়া যায়, তবে সেটি থেকে বুট হয়।

এই পদ্ধতি নিশ্চিত করে যে, সিস্টেম ঠিক কোন ডিভাইস থেকে অপারেটিং সিস্টেম চালু করবে।

3

সিস্টেম ফার্মওয়্যার, Disk থেকে একটি boot loader read করে এবং এরপর সিস্টেমের Control boot loader-টির কাছে Pass করে।

Red Hat Enterprise Linux 8 সিস্টেমে ব্যবহৃত বুট লোডার হলো GRUB2 (GRand Unified Bootloader version 2)।

—————————-

  • Disk থেকে boot loader বলতে কি বুঝান হয়েছে ?
    • GRUB2 সাধারণত Hard Disk/SSD শুরুর অংশে (boot sector / EFI partition) ইনস্টল হয়,
    • যাতে কম্পিউটার চালু হলে প্রথমে GRUB2 লোড হয়ে পরে Linux বা অন্য OS চালু করতে পারে।

4

GRUB2, এর /boot/grub2/grub.cfg কনফিগারেশন ফাইলটি থেকে লোড হয় এবং একটি মেনু প্রদর্শন করে, যেখানে আপনি কোন KERNEL বুট করবেন তা নির্বাচন করতে পারবেন।

  • এই Main Configuration File-টি জেনারেট করে,
    • Directory: /etc/grub.d/
    • File: /etc/default/grub
    • Command: grub2-mkconfig ব্যবহার করে

5

যখন একটি KERNEL নির্বাচন করা হয় বা timeout expire হয়ে যায়, তখন বুট লোডার (GRUB2) নিচের দুইটি জিনিস disk থেকে memory-তে লোড করে:

  • Kernel
  • initramfs

initramfs হলো একটি আর্কাইভ file, যেখানে বুটের জন্য প্রয়োজনীয় সকল হার্ডওয়্যার ড্রাইভার (kernel modules), initialization scripts, এবং অন্যান্য গুরুত্বপূর্ণ ফাইল থাকে।

Red Hat Enterprise Linux 8-এ, initramfs নিজেই একটি পূর্ণাঙ্গ ব্যবহারযোগ্য সিস্টেম ধারণ করে।

  • এই initramfs ফাইলটি কনফিগার করা যায় নিচের উপায়ে:
    • Directory: /etc/dracut.conf.d/ এর কনফিগারেশন ফাইল ও
    • Command: dracut ব্যবহার করে।

অন্যদিকে,

  • Command: lsinitrd ব্যবহার করা হয় initramfs file এর ভিতরের কনটেন্ট দেখতে বা ফাইলটিকে inspect করতে।

———————————————

সহজভাবে ব্যাখ্যা:

  • KERNEL নির্বাচন বা টাইমআউট হওয়া
    • যখন কম্পিউটার চালু হয়, তখন গ্রাব (GRUB) বা অন্য কোনো boot loader আপনাকে লিনাক্স চালু করার জন্য একটি kernel নির্বাচন করতে দেয়।
    • যদি আপনি কিছু না করেন, তাহলে একটি নির্দিষ্ট সময় পর (টাইমআউট) স্বয়ংক্রিয়ভাবে ডিফল্ট kernel নির্বাচন হয়।

  • ডিস্ক থেকে লোড করা
    • Selected kernel এবং initramfs (initial RAM file system) থাকে হার্ডডিস্কে।
    • boot loader এগুলোকে হার্ডডিস্ক থেকে RAM memory তে তুলে আনে।

  • মেমরিতে Load করা
    • kernel ও initramfs যখন RAM-এ আসে, তখন কম্পিউটার তাদের ব্যবহার করে পুরো সিস্টেম চালু করতে পারে।
    • এটি RAM-এ না আনলে কম্পিউটার সেই ফাইলগুলো ব্যবহার করতে পারবে না, কারণ CPU শুধুমাত্র RAM থেকে ডেটা প্রসেস করতে পারে।

——————————-


বাস্তব উদাহরণ:

initramfs-এর ভিতরে কী আছে তা দেখতে:

lsinitrd /boot/initramfs-$(uname -r).img


এই কমান্ডটি বর্তমান কার্নেল ভার্সনের initramfs ফাইলটি আনজিপ করে ভিতরের কনটেন্ট দেখাবে, যেমন /lib/modules/, /etc/init.d/, ইত্যাদি।

initramfs ফাইল নতুন করে তৈরি করতে (যদি হার্ডওয়্যার পরিবর্তন হয় বা নতুন ড্রাইভার লাগে):

sudo dracut -f /boot/initramfs-$(uname -r).img $(uname -r)


এই কমান্ডটি বর্তমান কার্নেলের জন্য নতুন initramfs তৈরি করে। dracut কনফিগারেশন পরিবর্তন করতে চাইলে:

sudo nano /etc/dracut.conf.d/mycustom.conf এবং তার ভিতরে লিখুন: add_drivers+=” nvme xhci_pci “


এই কনফিগারেশন অনুযায়ী initramfs তৈরি হলে nvme ও xhci_pci ড্রাইভারও এতে যুক্ত হবে।

6

Boot loader-(GRUB2) এবার Kernel-এর কাছে control pass করে।

  • একই সঙ্গে boot loader-এ specify করা kernel command line এর যেকোনো অপশন এবং মেমরিতে initramfs এর location-এর তথ্যও কার্নেলকে পাঠানো হয়।

  • এটি কনফিগার করা হয় নিচের directory, file and command ব্যবহার করে:
    • Directory: /etc/grub.d/
      • যেখানে GRUB এর স্ক্রিপ্ট ফাইলগুলো থাকে।
    • File: /etc/default/grub
      • এখানে GRUB সম্পর্কিত প্রধান সেটিংস যেমন kernel parameters, timeout ইত্যাদি সংরক্ষিত থাকে।
    • Command: grub2-mkconfig
  • এগুলো ব্যবহার করে /boot/grub2/grub.cfg ফাইলটি generate করা হয় যা GRUB boot menu-এর জন্য ব্যবহার হয়।

——————————–

বাস্তব উদাহরণ:

ধরুন আপনি GRUB2 মেনুতে ডিফল্ট KERNEL পরিবর্তন করতে চান।

# sudo nano /etc/default/grub


এই ফাইলে লাইনটি খুঁজে বের করুন: GRUB_DEFAULT=0


এখানে 0 মানে প্রথম KERNEL অপশন ডিফল্ট হবে। আপনি চাইলে এটি 1, 2 বা “Advanced options”-এর মতো মেনু টেক্সট দিয়েও পরিবর্তন করতে পারেন।


তারপর নতুন কনফিগারেশন জেনারেট করুন:

# sudo grub2-mkconfig -o /boot/grub2/grub.cfg


এই কমান্ডটি /etc/grub.d/ ও /etc/default/grub থেকে তথ্য নিয়ে /boot/grub2/grub.cfg ফাইল generate করে।

এইভাবে GRUB2 কনফিগার করা হয়, যাতে সিস্টেম চালুর সময় বুট মেনু থেকে বিভিন্ন KERNEL বা অপশন নির্বাচন করা যায়।

7

Kernel বুটের সময় initramfs-এর মধ্যে থাকা ড্রাইভারগুলো ব্যবহার করে সকল হার্ডওয়্যার initialize করে, যেগুলোর ড্রাইভার সে খুঁজে পায়।

  • এরপর kernel, initramfs হতে /sbin/init execute করে, যেটি প্রথম প্রসেস হিসেবে শুরু হয় (PID 1).

Red Hat Enterprise Linux 8-এ /sbin/init আসলে systemd-এর একটি link, অর্থাৎ /sbin/init → /lib/systemd/systemd।

ফলে systemd-ই পুরো সিস্টেম ইনিশিয়ালাইজ করে। Kernel boot time-এ init= command-line parameter ব্যবহার করে init process কনফিগার বা নির্ধারণ করা যায়।

————————————

Linux-এ সাধারণ init process বা init system গুলো কি ?

  1. systemd
  2. SysVinit (init)
  3. Upstart
  4. OpenRC
  5. runit
  6. s6
  7. BusyBox init
  8. launchd (মূলত macOS এ)

এগুলোর কাজ হলো:

  • system boot করা
  • service চালু করা
  • background process manage করা
  • shutdown/reboot handle করা

বর্তমানে বেশিরভাগ Linux distro-তে systemd সবচেয়ে বেশি ব্যবহৃত হয়।

———————————-


বাস্তব উদাহরণ:

PID 1 কে চেক করা (systemd চালু হয়েছে কিনা):

ps -p 1 -o comm=


আউটপুট:
systemd
অর্থাৎ systemd ই PID 1 এবং এটি /sbin/init থেকে শুরু হয়েছে।


/sbin/init আসলেই systemd এর দিকে link কিনা চেক করা:

ls -l /sbin/init

আউটপুট:
lrwxrwxrwx 1 root root 20 Jul 15 12:00 /sbin/init -> ../lib/systemd/systemd


বিকল্প init সিস্টেম ব্যবহার করতে চাইলে:

আপনি যদি systemd এর বদলে অন্য কিছু চালাতে চান (যেমন bash বা busybox), তবে kernel boot অপশনে init= ব্যবহার করতে হবে।


GRUB menu-তে (boot time-এ e চাপুন) নিচের লাইন খুঁজুন:

linux16 /vmlinuz-… root=… ro rhgb quiet


এবং এটিতে যোগ করুন: init=/bin/bash
এতে /sbin/init এর বদলে /bin/bash শুরু হবে (emergency shell)

সারসংক্ষেপ

  • কার্নেল বুট হলে initramfs থেকে /sbin/init চালায়।
  • এটি systemd-এ লিংক করা থাকে।
  • init= প্যারামিটার দিয়ে init সিস্টেম পরিবর্তন করা যায়।

8

initramfs থেকে চালু হওয়া systemd, তার প্রথম ধাপে initrd.target টার্গেটের সাথে সম্পর্কিত সব Unit files এক্সিকিউট করে।

  • এই ধাপের আরও একটি গুরুত্বপূর্ণ কাজ হলো disk-এ থাকা root ফাইল সিস্টেমটি /sysroot ডিরেক্টরিতে mount করা।

/sysroot সাধারণত initramfs-এর ভিতরে থাকে।

  • এই root ফাইল সিস্টেম কোথায়, কীভাবে মাউন্ট হবে সেটি নির্ধারণ করা হয় File: /etc/fstab ফাইলের মাধ্যমে।

——————————-

বাস্তব উদাহরণ:
/etc/fstab ফাইল দেখতে:

# cat /etc/fstab


উদাহরণস্বরূপ, /etc/fstab-এর একটি এন্ট্রি:
UUID=3e98fb48-87b5-4d2d-9f77-b12ab47e6ac7 / ext4 defaults 0 1


এই লাইনটি বলে দেয়:

কোন পার্টিশন (UUID অনুযায়ী) / রুট হিসেবে মাউন্ট হবে এবং ext4 ফাইলসিস্টেম ব্যবহার করা হবে।


initramfs-এ /sysroot-এ মাউন্ট হচ্ছে কিনা দেখতে (debug mode):

আপনি যদি rd.break দিয়ে বুট করেন, তাহলে systemd প্রথম ধাপে /sysroot মাউন্ট করার চেষ্টা করবে।


বুট মেনুতে e চাপুন এবং linux লাইনে rd.break যোগ করুন:

linux … rd.break


এরপর শেল আসলে রান করুন:

ls /sysroot এতে /sysroot ডিরেক্টরিতে আপনার মূল root ফাইলসিস্টেমটি দেখতে পাবেন।


systemd কীভাবে initrd.target চালায়:

systemctl list-units –type=target –all | grep initrd

এটি দেখাবে initrd.target এবং তার সাথে সংশ্লিষ্ট অন্যান্য unit

যেমন:

initrd-root-device.target
initrd-fs.target
initrd-root-fs.target

সারসংক্ষেপ

  • systemd শুরুতে initrd.target অনুযায়ী ইউনিট চালায়।
  • মূল root ফাইল সিস্টেম /sysroot-এ মাউন্ট হয়।
  • এই মাউন্ট পাথ /etc/fstab ফাইল দ্বারা নির্ধারিত হয়।

9

মাউন্টের পরে, kernel একটি switch বা pivot করে।অস্থায়ী initramfs-কে বাদ দিয়ে, /sysroot-এ থাকা আসল root file system-কে প্রধান root (/) হিসেবে ব্যবহার শুরু করে।

তারপর systemd নিজেকে আবার re-execute করে, তবে এবার ডিস্কে ইনস্টল করা systemd-এর কপি ব্যবহার করে।

10

systemd বুট করার পর প্রথমে ডিফল্ট target খুঁজে দেখে, এটি দুইভাবে নির্ধারিত হতে পারে:

  • kernel command line-এ systemd.unit= প্যারামিটার হিসেবে দেওয়া থাকতে পারে,
  • অথবা সিস্টেমে স্থায়ীভাবে কনফিগার করা থাকে /etc/systemd/system/default.target ফাইলের মাধ্যমে।

এরপর systemd সেই target অনুযায়ী প্রয়োজনীয় unit ফাইলগুলো চালু বা বন্ধ করে, এবং তাদের মধ্যে dependency গুলো স্বয়ংক্রিয়ভাবে সমাধান করে।

মূলত, একটি systemd target মানে হলো: এমন একটি unit-এর সেট যেগুলো চালু হলে সিস্টেম একটি নির্দিষ্ট state-এ পৌঁছায়।

যেমন টেক্সট-ভিত্তিক লগইন (multi-user.target) অথবা গ্রাফিকাল লগইন স্ক্রিন (graphical.target)।

Short note for memorise:

  • Power ON
  • Sytem Firmware
    • Seraching Bootable Device
  • Bootable Disk (Founded Bootable Disk)
    • Bootloader GRUB (Passing Control to Boot Loader-GRUB2)
    • GRUB Menu
      • Showing Booting Kernel and Select a Kernel
    • Memory (GRUB Load to Memory)
      • kernel
      • initramfs ( archive file )
    • Kernel (Control Passing to Kernel from Boot loader-GRUB)
      • Initialize Drivers from initramfs ( archive file )
        • initramfs excute /sbin/init (PID1-systemd)
          • systemd excute initrd.target unit files
          • another process is, root file system from disk to mount /sysroot mount point. (/sysroot is initramfs mount point directory) mount by using /etc/fstab file.
      • Kernel switch to /sysroot root file system.
        • now here, /sysroot root file system in main root.
          • systemd re-execute
  • installed DISK SYSTEMD now using here after re-execution.
  • systemd now searching DEFAULT TARGET.
linux boot5 process for BIOS and UEFI Firmware

additional info. ( systemd )

systemd হল একটি init system এবং সিস্টেম ম্যানেজার, যা Linux সিস্টেমে বুট প্রসেস শুরু করা, সার্ভিস পরিচালনা, ট্র্যাকিং, এবং রিসোর্স ম্যানেজমেন্ট করার জন্য ব্যবহৃত হয়।

এটি হলো SysVinit এবং Upstart-এর একটি আধুনিক বিকল্প, এবং বর্তমানে অনেক Linux ডিস্ট্রিবিউশনেই এটি ডিফল্ট init system।

1. systemd-এর মূল কাজগুলো:

কাজবিবরণ
Init systemসিস্টেম চালু হলে কোন সার্ভিসগুলো চালু হবে তা নির্ধারণ করে
Service Managerসার্ভিস চালু/বন্ধ/রিস্টার্ট করে (systemctl দিয়ে)
Dependency Resolverকোন সার্ভিস কোনটার আগে/পরে চালু হবে তা নির্ধারণ করে
Loggingjournald ব্যবহার করে লগ সংগ্রহ ও দেখায়
Target/Runlevel Managementmulti-user.target, graphical.target ইত্যাদি
Timerscron-এর মতো কাজ করে, কিন্তু systemd-ভিত্তিক

2. systemd এর গুরুত্বপূর্ণ কম্পোনেন্টস:

কম্পোনেন্টকাজ
systemctlsystemd এর CLI টুল (সার্ভিস ম্যানেজমেন্ট)
journalctlsystemd log দেখতে ব্যবহার হয়
.serviceইউনিট ফাইল যা কোন সার্ভিস চালাবে তা বলে
.targetএক বা একাধিক সার্ভিস একসাথে চালানোর টার্গেট
.mountmount points পরিচালনা করে
.timerনির্দিষ্ট সময় বা সময়চক্রে কোনো অ্যাকশন চালায়

3. systemd boot process (সাধারণ flow)

BIOS/UEFI > Bootloader (GRUB) > Linux Kernel > initramfs > systemd (PID 1) > Targets (e.g. graphical.target, multi-user.target) > Services (network, sshd, etc.)

4. কিছু systemd কমান্ড (সাধারণ উদাহরণ)

কাজকমান্ড
সিস্টেমে কোন টার্গেট চালু আছেsystemctl get-default
নতুন টার্গেট সেটsystemctl set-default graphical.target
লগ চেক করাjournalctl -xe
নির্দিষ্ট সার্ভিসের লগjournalctl -u sshd
timer দেখতেsystemctl list-timers


REBOOTING AND SHUTTING DOWN

To power off or reboot a running system from the command line, you can use the systemctl command.

# systemctl poweroff
# systemctl reboot

You can also use the shorter version of these commands, poweroff and reboot, which are symbolic links to their systemctl equivalents.

# poweroff
# reboot

Note

systemctl halt and halt are also available to stop the system, poweroff কমান্ডের মতো নয়, এই কমান্ডগুলো সিস্টেমকে সম্পূর্ণভাবে বন্ধ করে না; বরং সিস্টেমকে এমন একটি নিরাপদ অবস্থায় নিয়ে আসে, যেখানে ম্যানুয়ালি নিরাপদভাবে পাওয়ার বন্ধ করা যায়।

# systemctl halt
# halt

  • এখানে বোঝানো হয়েছে

কিছু Linux command আছে যেগুলো সিস্টেমকে পুরোপুরি বন্ধ (power off) করে না। বরং তারা: সব running service/process বন্ধ করে file system safely unmount করে system কে safe shutdown অবস্থায় নিয়ে যায় । তারপর আপনি চাইলে নিজে হাতে power button চেপে কম্পিউটার বন্ধ করতে পারেন। উদাহরণ:
halt
shutdown -h
আগের অনেক server/system এ এই command গুলো system কে safe অবস্থায় নিত, কিন্তু সরাসরি বিদ্যুৎ বন্ধ করত না। অন্যদিকে poweroff command সরাসরি system shutdown করে এবং পাওয়ারও বন্ধ করে দেয়।


SELECTING A SYSTEMD TARGET

systemd target ?

A systemd target is a set of systemd units that the system should start to reach a desired state.

Commonly Used Targets Name

  • graphical.target
    • System supports multiple users, graphical- and text-based logins.
  • multi-user.target
    • System supports multiple users, text-based logins only.
  • rescue.target
    • sulogin prompt, basic system initialization completed.
  • emergency.target
    • sulogin prompt, initramfs pivot complete, and system root mounted on / read only.

A target can be a part of another target.

For example, the graphical.target includes multiuser.target, which in turn depends on basic.target and others.

You can view these dependencies with the following command.

# systemctl list-dependencies graphical.target | grep target

To list the available targets, use the following command.

# systemctl list-units --type=target –all

Selecting a Target at Runtime

On a running system, administrators can switch to a different target using the systemctl isolate command.

# systemctl isolate multi-user.target

কোনো একটি target isolate করলে, systemd ওই target এর (এবং তার নির্ভরশীলতা) যেসব সার্ভিসের প্রয়োজন নেই, সেগুলো বন্ধ করে দেয় এবং যেসব প্রয়োজনীয় সার্ভিস এখনো চালু হয়নি, সেগুলো চালু করে।

সব target-ই isolate করা যায় না। শুধু সেই target-গুলোই isolate করা যায়, যদি unit file-এ AllowIsolate=yes সেট করা থাকে।

উদাহরণস্বরূপ, আপনি graphical.target isolate করতে পারেন, কিন্তু cryptsetup.target isolate করতে পারবেন না।

unprepared অবস্থায় isolate চালালে network বা sshd সার্ভিস বন্ধ হতে পারে — ফলে remote login বিচ্ছিন্ন হতে পারে।

Unit file-এ AllowIsolate=yes আছে কিনা তা চেক করার জন্য

# systemctl cat graphical.target
# systemctl cat cryptsetup.target

Setting a Default Target

Default Target

  • যখন সিস্টেম চালু হয়, তখন systemd প্রথমে default.target নামের target-টি সক্রিয় করে।

  • সাধারণত, /etc/systemd/system/ ডিরেক্টরির ভিতরে থাকা default.target হলো একটি symbolic link, যা  graphical.target বা multi-user.target-এর দিকে নির্দেশ করে।

Viewing and Managing Default Target

# cat /etc/systemd/system/default.target

  • এই symbolic link-টি ম্যানুয়ালি editing না করে, systemctl কমান্ডের দুটি সাব-কমান্ড ব্যবহার করে আপনি সহজেই এটি manage করতে পারেন:
    • get-default
    • set-default

# systemctl get-default

multi-user.target

# systemctl set-default graphical.target

Removed /etc/systemd/system/default.target.

Created symlink /etc/systemd/system/default.target -> /usr/lib/systemd/system/graphical.target.

# systemctl get-default

graphical.target

Selecting a Different Target at Boot Time

বুট করার সময় আপনি কি একটি
different target select করতে চান ?

  • তাহলে, boot loader থেকে kernel command line-এ নিচের অপশনটি যুক্ত করতে হবে:
    • systemd.unit=target.target

এখানে target.target এর জায়গায় আপনার কাঙ্ক্ষিত টার্গেটের নাম বসাতে হবে। যেমন:

  • multi-user.target,
  • rescue.target,
  • graphical.target ইত্যাদি।

কেন Different target select করবেন ?

  • এই কনফিগারেশনের পরিবর্তন শুধুমাত্র একবারের বুট-এর জন্য কার্যকর থাকে।

  • এটি বুট প্রসেসের troubleshooting করার জন্য একটি কার্যকর টুল হিসেবে ব্যবহৃত হয়।

Different একটি systemd target বুট টাইমে নির্বাচন করতে চাইলে, কিভাবে করতে হবে ?

নিচের ধাপগুলো অনুসরণ করুন:

  • সিস্টেম চালু করুন এবং GRUB মেনু আসার জন্য অপেক্ষা করুন। যেকোনো key প্রেস করুন হোল্ড করার জন্য “Enter” Key ব্যাতিত।
    • (যদি GRUB মেনু না আসে, তাহলে বুটের সময় “Shift” বা “Esc” Key Press করতে হতে পারে।)
  • যে অপারেটিং সিস্টেমে বুট করতে চান, সেটি সিলেক্ট করে “e” key press করুন।
    • এর ফলে, আপনি GRUB entry edit করতে পারবেন।
  • linux বা linux16 দিয়ে শুরু হওয়া লাইনটিতে যান।
    • (এই লাইনটি kernel লাইন নামে পরিচিত)
  • উক্ত লাইনের শেষে এই অপশনটি যোগ করুন: systemd.unit=target.target
    • উদাহরণ: systemd.unit=rescue.target
  • edit এর কাজ শেষ হলে Ctrl + X অথবা F10 চাপুন।
  • এর ফলে edited কমান্ডলাইন অনুযায়ী সিস্টেম বুট শুরু হবে।

মনে রাখতে হবে !

  • এটি স্থায়ী পরিবর্তন নয়। শুধু একবারের বুটের জন্য প্রযোজ্য।
  • পরবর্তী বুটে systemd আবার পূর্বনির্ধারিত default.target ব্যবহার করবে।
  • এটি বিশেষ করে troubleshooting অথবা রিকভারি করার সময় কাজে আসে।

Strawberry Group | Topic Three, Byte Part

Sorry! you cannot copy content of this page.