Strawberry Group | Topic Three, Bite Part
T3, Bite Part ( 2 )
RESETTING THE ROOT PASSWORD
RESETTING THE ROOT PASSWORD FROM THE BOOT LOADER
To access that root shell, follow these steps:
linux).rd.break With that option, the system breaks just before the system hands control from the initramfs to the actual system.এই পর্যায়ে, সিস্টেম একটি root shell display করে, যেখানে ডিস্কে থাকা আসল রুট ফাইল সিস্টেমটি /sysroot ডিরেক্টরিতে read-only হিসেবে মাউন্ট করা থাকে। কিন্তু যেহেতু troubleshooting-এর সময় প্রায়ই রুট ফাইল সিস্টেমে পরিবর্তন করার প্রয়োজন হয়, তাই এটি read/write (rw) মোডে রিমাউন্ট করতে হয়। নিচের ধাপে দেখানো হয়েছে কিভাবে mount কমান্ডের remount,rw অপশন ব্যবহার করে ফাইল সিস্টেমটিকে রিমাউন্ট করে এবং rw (read/write) অপশন সক্রিয় করে:
switch_root:/# mount -o remount,rw /sysroot
switch_root:/# chroot /sysroot
ব্যাখ্যা: এই ধাপে, আপনি এমন একটি পরিবেশে (chroot jail) স্যুইচ করছেন, যেখানে /sysroot কে পুরো ফাইল সিস্টেমের মূল (/) হিসেবে ধরা হবে। এটি করার উদ্দেশ্য হল, যেন আপনি রুট ফাইল সিস্টেমের ভেতরে ঢুকে সিস্টেমের মতোই কাজ করতে পারেন, যেমন — পাসওয়ার্ড পরিবর্তন করা, কনফিগারেশন ফাইল ঠিক করা ইত্যাদি।
sh-4.4# passwd root
sh-4.4# touch /.autorelabel
At this point, the system continues booting, performs a full SELinux relabel, and then reboots again.
INSPECTING LOGS
এর জন্য যা করতে হবে,
Step 1
- file: /etc/systemd/journald.conf এর
Storageparameter টিpersistentকরে দিতে হবে।
- এটি Storage=volatile বা Storage=auto হয়ে থাকলে, persistent এ পরিবর্তন করে নিন।
[root@host ~]# vim /etc/systemd/journald.conf
…output omitted…
[Journal]
Storage=persistent
…output omitted…
Step 2
- /var/log/journal ডিরেক্টরি তৈরি করুন (যদি না থাকে)
# mkdir -p /var/log/journal
Step 3
- journald সার্ভিস রিস্টার্ট করুন
[root@host ~]# systemctl restart systemd-journald.service
To see, previous boot log
journalctl কমান্ডের সাথে -b অপশন ব্যবহার করে previous boot log দেখা যায়।
- কোনো আর্গুমেন্ট ছাড়া শুধু
-bব্যবহার করলে সর্বশেষ (বর্তমান) বুট থেকে শুরু হওয়া লগগুলো দেখায়। -bএর সাথে negative number দিলে previous boot-গুলোর লগ দেখা যায়।
[root@host ~]# journalctl -b -1 -p err
এই কমান্ডটি previous boot-র সব log message দেখায়, যেগুলোর গুরুত্বের মাত্রা error বা তার থেকেও আরও খারাপ।
Additional Learning,
0= বর্তমান boot-1= আগের boot-2= তার আগের boot-p err→ priority levelerrorবা তার চেয়ে গুরুতর মেসেজ দেখায়
Priority level গুলো:
- emerg
- alert
- crit
- err
- warning
- notice
- info
- debug
তাই -p err দিলে err, crit, alert, emerg — সব দেখাবে।
REPAIRING SYSTEMD BOOT ISSUES
বুট হওয়ার সময় service startup issues হলে, তা troubleshoot-র জন্য Red Hat এর Red Hat Enterprise Linux 8 নিম্নলিখিত টুলগুলো সরবরাহ করে।
Enabling the Early Debug Shell
WARNING !
Debugging শেষ হলে অবশ্যই debug-shell.service Disable করতে হবে। কারণ এটি চালু থাকলে, যে কেউ local console access পাইলে কোনো password ছাড়াই root shell ব্যবহার করতে পারবে। এটি বড় ধরনের security risk.
Disable করার কমান্ড:
systemctl disable debug-shell.service
Temporary বন্ধ করতে:
systemctl stop debug-shell.service
Using the Emergency and Rescue Targets
বুট লোডার এর kernel command line-এ
systemd.unit=rescue.targetঅথবাsystemd.unit=emergency.targetappend করলে,
সিস্টেম normally boot না হয়ে rescue বা emergency shell-এ প্রবেশ করে।
- উভয়ই shell এর জন্য root password required.
emergency.target
emergency target root file system-কে read-only অবস্থায় মাউন্ট করে রাখে।
rescue.target
অন্যদিকে rescue target আগে sysinit.target সম্পূর্ণ হওয়ার জন্য অপেক্ষা করে, যাতে সিস্টেমের আরও কিছু অংশ initialize হয়;
যেমন:
- বিভিন্ন file system
- logging service
এই shell-গুলিতে root user /etc/fstab ফাইলে কোনো পরিবর্তন করতে পারে না, কারণ drive তখনও read-only অবস্থায় থাকে।
পরিবর্তন করতে হলে drive-টিকে read-write mode-এ পুনরায় remount করতে হয়।
mount -o remount,rw /
Administrators-রা এই shell গুলো ব্যবহার করে এমন কিছু issues fix করতে পারেন, যেগুলোর কারণে সিস্টেম normally boot হতে পারে না। উদাহরণ:
- services-এর মধ্যে dependency loop
dependency loopমানে হলো, দুই বা ততোধিক service একে অপরের উপর এমনভাবে নির্ভর করছে যে কোনোটি আগে চালু হতে পারছে না।
/etc/fstab-এ ভুল entry
এই shell থেকে বের হয়ে গেলে (exit দিলে), সিস্টেম regular boot process করতে পারে।
Identifying Stuck Jobs
এই information-গুলো জানলে আমরা সিস্টেম booting time-এ দ্রুত troubleshooting করতে পারব।
Strawberry Group | Topic Three, Bite Part
