Category Archives: Linux Troubleshooting

ডেবিয়ানে রুট ইউজার এর পাসওয়ার্ড ভুলে গেলে রিসেট করা

যদি অনেকদিন ধরে লিনাক্স ব্যবহার করেন তাহলে লিনাক্সের রুট (এ্যাডমিনিস্ট্রেটর) পাসওয়ার্ড ভুলে যাওয়ার মত অবস্থায় পড়বেন না এটা ভাবা খুবই কঠিন এবং সেসময় পাসওয়ার্ড উদ্ধার করা ভাগ্যের হাতে ছেড়ে না দিয়ে উপায় থাকে না। যদি মেশিনের সামনে আপনি সরাসরি থাকতে পারেন তবে এটি তিন মিনিটেই উদ্ধার করতে পারবেন। আসুন আজ সেটিই দেখি।

  • ১নং ধাপঃ একটি লাইভ সিডি যোগাড় করা

প্রথমেই একটি স্ট্যান্ডার্ড লাইভ সিডি যোগাড় করুন যেটি হতে পারে KNOPPIX, Ubuntu LiveCD অথবা Debian LiveCD। যে কোন একটি লাইভ ডিস্ট্রোর আইএসও(ISO) ইমেজ ডাউনলোড করে সিডিতে বার্ন করে নিন নিরো, ব্রাশেরো, এক্সসিডি রোস্ট(XCD-Roast) বা অন্য কোন বার্নার দিয়ে।

  • ২নং ধাপঃ লাইভ সিডি থেকে বুট করা

এবার আপনার মেশিনের সিডি রমে সিডি ঢুকিয়ে লাইভ সিডি থেকে মেশিন বুট করুন। যদি বায়োসে সিডি থেকে বুট করার অপশন না থাকে তাহলে বায়োস সেটআপে প্রবেশ করে সিডি থেকে বুট করার অপশন দিয়ে দিন।

  • ৩নং ধাপঃ ড্রাইভ মাউন্ট করা

লাইভ সিডি থেকে বুট করা শেষ হলে একটি শেল প্রম্পট চালু করুন এবং আপনার যে ড্রাইভে ডেবিয়ান ইনস্টলড আছে সেটি মাউন্ট করে নিন অর্থাৎ যেটির পাসওয়ার্ড আপনি পরিবর্তন করতে চান।
#mount /dev/ /mnt/
Example:
# mount /dev/hda1 /mnt
or
# mount /dev/sda1 /mnt

  • ৪নং ধাপঃ আপনার পার্টিশনে chroot করা

এর পরের ধাপ হচ্ছে আপনি যে পার্টিশন মাউন্ট করেছেন সেখানে chroot করা।
# chroot /mnt/
এখন আপনি আপনার হার্ডডিস্কে ইনস্টলকৃত ডেবিয়ানের শেল প্রম্পট এনভারোনমেন্ট পেয়ে যাবেন।

chroot এর কাজ হচ্ছে বর্তমান রুট পাথ পরিবর্তন করে অন্য কোন পাথকে রুট পাথ (/) হিসেবে সেট করা। অর্থাৎ বর্তমানে আপনি যেহেতু লাইভ সিডি চালাচ্ছেন তাই কোন কমান্ড দিলে লাইভ সিডির অপারেটিং সিস্টেম তা গ্রহন করবে এবং লাইভ সিডির ফাইল সিস্টেমে পরিবর্তন করবে। কিন্তু আপনি chroot কমান্ড দিয়ে /mnt তে মাউন্টকৃত ড্রাইভকে রুট পাথ হিসেবে সেট করে নিচ্ছেন তাই পরবর্তীতে কমান্ড দিলে আপনার হার্ডডিস্কে অবস্থিত ডেবিয়ানে তা কার্যকরী হবে। এটি রিমোট লোকেশন থেকে কোন সার্ভারকে মেইনটেন্যান্স করার জন্য বেশ ব্যবহৃত হয়।

  • ৫ নং ধাপঃ রুট পাসওয়ার্ড রিসেট করা

এখন নিচের কমান্ডটি দিন এবং রুট এর জন্য একটি নতুন পাসওয়ার্ড সেট করুন।
# passwd

আউটপুটঃ

# Enter your new UNIX password:
# Retype new UNIX password:

এখানে আপনি ইচ্ছা করলে অন্য ব্যবহারকারীর জন্যও পাসওয়ার্ড সেট করতে পারবেন যখন আপনি রুট ইউজার হিসেবে লগইন করতে পারবেন।

  • ৬নং ধাপঃ আনমাউন্ট ও রিবুট করা

সবার শেষে আপনার হার্ডডিস্ককে আনমাউন্ট করুনঃ

# umount /mnt

এবং কম্পিউটার রিস্টার্ট/রিবুট করুন। তারপর হার্ডডিস্ক থেকে পুনরায় বুট করুন। এখন আপনি আপনার নতুন পাসওয়ার্ড দিয়ে লগইন করতে পারবেন যেটি ৫নং ধাপে দিয়ে এসেছেন।

লিনাক্সের সাধারন সমস্যাসমূহ সমাধানের জন্য কয়েকটি দরকারী কমান্ড

লিনাক্স নিয়মিত ব্যবহার করতে শুরু করলে প্রায়ই ব্যবহারকারীগন কিছু সমস্যায় পড়তে পারেন যা সহজেই কিছু কমান্ডের মাধ্যমে সমাধান করা যায়। এ পোস্টে আমি সেরকম কিছু সাধারন সমস্যা ও তার সমাধান উল্লেখ করতে চাই। আশা করি আপনাদের ভাল লাগবে। যদি ও আমি ব্যক্তিগতভাবে ডেবিয়ান লিনাক্স কে ব্যবহার করে থাকি কিন্তু এ কমান্ডগুলি অন্যান্য ডিস্ট্রিবিউশন যেমন উবুন্তু, সুসি বা ফেডোরাতেও কাজ করবে।

  • কমান্ড#১: dhclient

অনেক সময় দেখা যায় যে আপনার কম্পিউটার আইপি এ্যাড্রেস পাচ্ছে না এবং এর ফলে ইন্টারনেটে যুক্ত হতে পারছে না। এ সমস্যা সমাধানের জন্য নিচের কমান্ডটি দিনঃ

# dhclient ethX

এখানে X = ইথারনেট ইন্টারফেস

আপনার সব নেটওয়ার্ক ইন্টারফেস দেখার জন্য কমান্ড দিনঃ

# ifconfig -a

সুতরাং আপনার কমান্ডটি বাস্তবে নিচের মত হতে পারেঃ

# dhclient eth1

  • কমান্ড #২ update-grub

ধরে নিচ্ছি আপনি /boot/grub/menu.lst ফাইলে কিছু নতুন অপশন/প্যারামিটার যুক্ত করেছেন। তাই এখন এগুলিকে আপনার বর্তমান কার্নেল তালিকায় যুক্ত করার জন্য নিচের কমান্ডটি দিনঃ

# update-grub

  • কমান্ড #৩ mkinitramfs

যদি আপনি বুটের সময় কার্নেল ইমেজ নিয়ে সমস্যায় পড়েন এবং যদি মনে করেন যে এটি একটি initrd(Initial Ram Disk) সমস্যা তবে আপনি একটি নতুন ইমেজ তৈরী করে এ সমস্যার সমাধান করতে পারেন। এজন্য নিচের মত কমান্ড দিনঃ

# update-initramfs -t -c -v -k

এখানে kernel-version = আপনার লিনাক্স কার্নেল ভার্সন নম্বর যেটির জন্য আপনি একটি initrd ইমেজ তৈরী করতে চান।
আপনার কার্নেলসমূহের ভার্সন নম্বর দেখার জন্য নিচের মত করে কমান্ড দিনঃ

# ls /boot/vmlinuz*

/boot/vmlinuz-2.6.26-1-686 /boot/vmlinuz-2.6.28-2-686

সুতরাং আপনার বাস্তব কমান্ডটি নিচের মত হতে পারেঃ

# update-initramfs -t -c -v -k 2.6.26-1-686

  • কমান্ড #৪: kill

যদি আপনি একটি হ্যাং হয়ে যাওয়া প্রসেসকে/প্রোগ্রামকে বন্ধ না করতে পারেন তবে এটি বন্ধ করার জন্য নিচের মত কমান্ড দিতে পারেনঃ

# kill -9

যেখানে pid-number= প্রসেস আইডি নম্বর

আপনার সমস্ত প্রসেস আইডি নম্বর দেখার জন্য নিচের মত কমান্ড দিনঃ

# ps -ef

ফলাফলঃ
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 Jun08 ? 00:00:02 init [2]
root 2 0 0 Jun08 ? 00:00:00 [kthreadd]
root 2334 2 0 Jun08 ? 00:00:00 [kondemand/1]
root 2408 1 0 Jun08 ? 00:00:08 /sbin/syslogd
root 2446 1 0 Jun08 ? 00:00:00 /sbin/klogd -x
root 2455 1 0 Jun08 ? 00:00:00 /usr/sbin/acpid
104 2473 1 0 Jun08 ? 00:00:06 /usr/bin/dbus-daemon –system

ধরুন উপরের ফলাফল অনুযায়ী আপনি acpid ডেমনকে বন্ধ করতে চান, তাহলে আপনার কমান্ড হবে নিচের মতঃ

# kill -9 2455

  • কমান্ড #৫: এক্স(X) সার্ভার সমস্যা

আপনি যদি এক্স সার্ভার স্টার্ট করা নিয়ে সমস্যায় পড়েন তবে নিচের কমান্ড দুটি দিয়ে চেষ্টা করে দেখতে পারেনঃ

# X -configure
# X -config /root/xorg.conf.new

  • কমান্ড #৬: apt এবং dpkg সমস্যা

apt-get এবং dpkg সমস্যা বেশীরভাগ ক্ষেত্রেই নিচের দুটি কমান্ডের মাধ্যমে ঠিক করা সম্ভব যেমনঃ ইনস্টল করার সময় ডিপেনডেন্সীর কারনে ইনস্টল না হওয়া, ইনস্টল ফাইল করাপ্ট হয়ে যাওয়া, ইনস্টল করার সময় মেশিন বন্ধ হয়ে যাওয়া ইত্যাদি।

# apt-get -f install
# dpkg –configure -a

  • কমান্ড #৭: দ্রুত একটি পরীক্ষামূলক সিস্টেম তৈরী করা

স্যান্ডবক্সের মত আপনার বর্তমান সিস্টেমে যদি কোন টেস্ট সিস্টেম তৈরি করতে চান তবে নিচের কমান্ড দিনঃ

# debootstrap –arch i386 lenny /home/yourname/chroots/debian32 http://ftp.us.debian.org/debian

  • কমান্ড #৮: GNOME পূনরায় চালু করা

কিছু কিছু সময় জিনোম ডেস্কটপ সঠিকভাবে লোড নেয় না যেমন আইকন দেখা যায় না অথবা প্যানেল লোড হয় না। এ ক্ষেত্রে নিচের কমান্ডটি প্রয়োগ করে আপনি সহজেই আপনার জিনোম ডেস্কটপকে পূনরায় লোড করতে পারেন মেশিন রিস্টার্ট করা ছাড়াই।

# killall gnome-panel nautilus

  • কমান্ড #৯: একক ব্যবহারকারী মোডে সুইচ করা

কিছু সমস্যা শুধুমাত্র সিঙ্গেল ইউজার মোডেই সমাধান করা সম্ভব যেটি অনেকটা উইন্ডোজের সেফ মোডের মত। আপনি এক্ষেত্রে খুব সহজেই সিঙ্গেল ইউজার মোডে সুইচ করতে পারেন যেকোন সময় নিচের কমান্ডটি দিয়েঃ

# init 1

  • কমান্ড #১০: GNOME শব্দ

যদি জিনোম এর নিজস্ব সাউন্ড ইভেন্টসমূহ বা শব্দ শুনতে না পান কিন্তু গান বা মিউজিক ঠিকই শুনতে পান তাহলে নিচের কমান্ডটি দিয়ে তা ঠিক করতে পারেনঃ

# modprobe snd_pcm_oss

আপনার কমান্ড প্রদান আরো স্বাচ্ছ্যন্দময় হয়ে উঠুক সেই প্রত্যাশায় শেষ করছি।

ডুয়াল বুটিং মেশিনের জন্য গ্রাব কনফিগার করা

লিনাক্স অপারেটিং সিস্টেম প্রথমবার ব্যবহার করার সময় আমরা সাধারনত আমাদের বহুদিনের পরিচিত উইন্ডোজকে ডুয়াল বুট হিসেবে রেখে দিতে চাই। এ সমস্যা সমাধানের জন্য লিনাক্স অপারেটিং সিস্টেমে বহু আগে থেকেই গ্রাব/লিলো নামক বুটলোডার প্রোগ্রাম দিয়ে দেয়া হয়। লিনাক্স ইনস্টলের শেষ ধাপে যদি মেশিনে আরেকটি অপারেটিং সিস্টেম লিনাক্স খুজে পায় তবে সেটিকে বুট করার জন্য গ্রাব/লিলো নামক বুট লোডার প্রোগ্রামকে সে কনফিগার করে দেয় অন্য অপারেটিং সিস্টেমটিকে খুজে পাওয়ার জন্য। উবুন্তু বা ডেবিয়ান বেজড ডিস্ট্রোগুলি সাধারনত গ্রাবকে ডিফল্ট বুট লোডার হিসেবে ইনস্টল করে থাকে। যখন গ্রাব মেশিনে প্রথমবার ইনস্টল হয় তখন লিনাক্সকেই সে প্রাইমারি/ডিফল্ট হিসেবে দেখিয়ে থাকে। ফলে আমরা অনেকেই এ অপশনটি বদলিয়ে উইন্ডোজকে ডিফল্ট হিসেবে সেট করতে চাই বা কতটুকু সময় বুট লোডারটি স্ক্রিনে দেখাবে (সেকেন্ডে: যেমন, 20, 30 ইত্যাদি) -এ রকম অপশনগুলি পরিবর্তন করতে চাই। এগুলি করার জন্য বেশকিছু গ্রাফিক্যাল টুলস আছে কিন্তু সেগুলি আবার ইনস্টল করেই কাজ করতে হয়। তাই একটি সহজ টেক্সট এডিটর দিয়ে কিভাবে এটি করবেন তা আমি এখানে দেখানোর চেষ্টা করব।

একটি কমান্ড প্রম্পট/শেল প্রম্পট ওপেন/টার্মিনাল চালু করি। তারপর রুট হিসেব লগইন করি এবং menu.lst ফাইলটিকে vi অথবা gedit প্রোগ্রাম বা অন্য কোন টেক্সট এডিটরে ওপেন করিঃ

vi /boot/grub/menu.lst
or
gedit /boot/grub/menu.lst

তারপর যে অপারেটিং সিস্টেমটিকে ডিফল্ট হিসেবে মেনুতে রাখতে চান অর্থাৎ বুট লোডার চালু হওয়ার সময় যেটি হাইলাইটেড হবে অটোমেটিক্যালি তার জন্য নিচের লাইনে যান এবং default লেখার সামনের নম্বরটিকে আপনার অপারেটিং সিস্টেম এর সিরিয়াল নম্বর দিয়ে পরিবর্তন করুন। সিরিয়াল নম্বরটি কত তা জানার জন্য মেশিন বুট হওয়ার সময়ে দেখুন আপনার কাঙ্খিত অপারেটিং সিস্টেমটি কত নম্বর লাইনে দেখাচ্ছে গ্রাব।

অথবা এ ফাইলের একদম শেষের দিকে আপনি নিচের মত কিছু লাইন পাবেন যেগুলির সামনে # চিহ্ন নেই। এখান থেকেও নম্বরটি কত তা জেনে নেয়া যায়। আগেই বলে রাখি এ ফাইলে # চিহ্ন দিয়ে কোন লাইন শুরু হলে সেটি কমেন্ট হিসেবে ধরা হয় অর্থাৎ এটি কোন কমান্ড নয় শুধুমাত্র ব্যবহারকারীর জন্য তথ্য স্বরূপ কাজ করে থাকে।

## ## End Default Options ##
title Debian GNU/Linux, kernel 2.6.26-1-686
root (hd0,3)
kernel /boot/vmlinuz-2.6.26-1-686 root=/dev/sda4 ro quiet
initrd /boot/initrd.img-2.6.26-1-686


title Debian GNU/Linux, kernel 2.6.26-1-686 (single-user mode)
root (hd0,3)
kernel /boot/vmlinuz-2.6.26-1-686 root=/dev/sda4 ro single
initrd /boot/initrd.img-2.6.26-1-686

### END DEBIAN AUTOMAGIC KERNELS LIST
# This is a divider, added to separate the menu items below from the Debian
# ones.
title Other operating systems:
root

# This entry automatically added by the Debian installer for a non-linux OS
# on /dev/sda1
title Microsoft Windows XP Professional
root (hd0,0)
savedefault
makeactive
chainloader +1

উপরের অংশটিতে টাইটেল অপশনগুলি গুনে দেখুন
1. Debian GNU/Linux, kernel 2.6.26-1-686
2. Debian GNU/Linux, kernel 2.6.26-1-686 (single-user mode)
3. Other operating systems:
4. Microsoft Windows XP Professional

আপনার এক্সপি অপারেটিং সিস্টেমটি চার নম্বরে আছে কিন্তু গ্রাব ফাইল ০ থেকে গননা শুরু করে তাই এর নম্বর হবে ৩। অর্থাৎ আপনি গননা করবে এভাবে

0. Debian GNU/Linux, kernel 2.6.26-1-686
1. Debian GNU/Linux, kernel 2.6.26-1-686 (single-user mode)
2. Other operating systems:
3. Microsoft Windows XP Professional

তাহলে আপনার উইন্ডোজ এর সিরিয়াল নম্বরটি হল ৩। আশা করি আর বুঝতে সমস্যা হওয়ার কথা নয়।

এখন আপনার কাজ হল আবার ফাইলের উপরে যেখানে default লেখা আছে সেখানে গিয়ে তার সামনের নম্বরটিকে পরির্তন করে দিন আপনার কাঙ্খিত অপারেটিং সিস্টেম এর নম্বর দিয়ে।

# array will desync and will not let you boot your system.
Default 0

উপরের ০ টিকে পরির্বতন করুন।

এবার গ্রাব কতক্ষন অপেক্ষা করবে বুট হওয়ার জন্য তা দেখিয়ে দেয়ার পালা। এজন্য নিচের লাইনটিতে যান এবং Timeout লেখার সামনে নম্বরটিকে কত সেকেন্ড অপেক্ষা করবে তা বলে দিন যেমন এখানে আমি ২০ দেখিয়েছি অর্থাৎ এটি ২০ সেকেন্ড অপেক্ষ করবে।

For Time out setting at booting time:
## timeout sec
# Set a timeout, in SEC seconds, before automatically booting the default
# (normally the first entry defined).
timeout 20

লক্ষ্য করুন এখানে # লাইন দিয়ে যেগুলি শুরু হয়েছে সেগুলি মূলত কমেন্ট এগুলি পড়ে দেখলে আপনি বুঝতে পারবেন এর নিচের অপশনটি ঠিক কি কাজটি করবে। যেমন এখানে বলা আছে ডিফল্ট ওএসটি বুট হওয়ার আগে কতক্ষন অপেক্ষা করবে তা সেকেন্ডে দেখিয়ে দিন। ব্যস এবার ফাইলটিকে সেভ করুন। কি সহজ মনে হচ্ছে না?

ডেবিয়ান লিনাক্সে উইন্ডোজের এনটিএফএস(NTFS) ড্রাইভার মাউন্ট করা

আপনি যদি একজন প্রাক্তন উইন্ডোজ ব্যবহারকারী হয়ে থাকেন/ডুয়াল বুট হিসেবে লিনাক্স ব্যবহার করেন, তবে এনটিএফএস পার্টিশনগুলিকে লিনাক্সে মাউন্ট করা দরকার হতে পারে কারন সেখানে হয়ত আপনার প্রিয় মুভি/গানের কালেকশন রয়েছে যা আপনি ডিলিট/ফরম্যাট না করেই ব্যবহার করতে চান। আজকাল উবুন্তু বা বেশীরভাগ ডিস্ট্রোতেই এনটিএফএস অটো মাউন্ট হয়ে থাকে কিন্তু ডেবিয়ান এক্ষেত্রে একটু ব্যতিক্রম। এখানে আমি ডেবিয়ান এর জন্য একটি সমাধান তুলে ধরব।

এজন্য প্রথমেই আপনাকে ntfs-3g এবং libfuse2 প্যাকেজ দুটি ইনস্টল করতে হবে যা এনটিএফএস ড্রাইভ মাউন্ট করতে লাগবে। ntfs-3g একটি থার্ড পার্টি প্যাকেজ যেটি এনটিএফএস ড্রাইভ কে উইন্ডোজ এর মত ব্যবহার করার সুযোগ তৈরী করে দেয় অর্থাৎ আপনি এ ড্রাইভগুলিতে রিড-রাইট সবই করতে পারবেন।

উপরোক্ত প্যাকেজ দুটি ইনস্টল করার কমান্ড দেইঃ

apt-get install libfuse2
apt-get install ntfs-3g

দুটি প্যাকেজ ইনস্টল হয়ে গেলে আমরা পরবর্তী কাজ শুরু করব।

আপনার মেশিনে যে ড্রাইভগুলি এনটিএফএস এ আছে তা দেখার জন্য নিচের কমান্ড দিনঃ

fdisk -l | grep NTFS

কারন যে ড্রাইভগুলি এখানে দেখতে পাবেন কেবল সেগুলিই আপনি মাউন্ট করতে পারবেন।

উপরের কমান্ড দেয়ার পর আপনি নিচের মত আউটপুট পাবেনঃ

/dev/hda1 * 1 14387 156288421+ 7 HPFS/NTFS

এখানে দেখা যাচ্ছে যে, আপনার এনটিএফএস ড্রাইভটি প্রথম হার্ডডিস্কে (hda1) অবস্থিত।

এখন আমরা মাউন্ট করার জন্য একটি ফোল্ডার তৈরী করি কারন লিনাক্সে এটি অটোমেটিক তৈরী করবে না। এখানে যেহেতু একটি পার্টিশন তাই এটিকে আপনি windows নামে অভিহিত করতে পারেন। যদি একের অধিক পার্টিশন থাকে তাহলে Win_C, Win_D, Win_E ইত্যাদি নামে ফোল্ডার তৈরী করে নিন।

এজন্য কমান্ড দিনঃ

mkdir /media/windows
mount –t ntfs-3g /dev/hda1 /media/windows

hda1 এর জায়গায় অনেক সময় sda1 দেয়ার প্রয়োজন হতে পারে কারন আজকাল নতুন হার্ডডিস্কগুলি সবই স্ক্যাজি সাপোর্টেড।

উপরে ২য় লাইনের কমান্ডটি আপনার windows ডিরেক্টরী কে /media/windows ডিরেক্টরী তে মাউন্ট করবে ফলে এখন আপনি এ ডিরেক্টরীতে গেলে আপনার এনটিএফএস ড্রাইভের ফাইলসমূহ দেখতে পারবেন। আপনি যদি উপরের মত কাজ করে থাকেন তাহলে ডেস্কটপ এর উপর একটি আইকন দেখতে পাবেন যেটির লেবেল / নাম আপনি ফোল্ডার এর যে নাম দিয়েছেন ঠিক সেরকম দেখাবে। এটির উপর ডাবল ক্লিক করেও আপনি ফাইল একসেস করতে পারবেন।
এখন আর একটি গুরুত্বপূর্ন কমান্ড শিখে নেই যেটি উক্ত ড্রাইভকে আনমাউন্ট করবেঃ

umount /dev/hda1

যদি প্রতিবার এভাবে মাউন্ট করার কমান্ড না দিয়ে বুট হওয়ার সময়েই স্বয়ংক্রিয়ভাবে ড্রাইভগুলিকে মাউন্ট করতে চান তার জন্য একটি ছোট ট্রিকস শিখে নেই। এটির জন্য আপনাকে /etc/fstab ফাইলটিতে মাউন্ট করার কমান্ড যোগ করে দিতে হবে। এটি খুব সাবধানতার সাথে করুন তা না হলে মেশিন ঠিকমত বুট নাও হতে পারে।
ফাইলটি খোলার জন্য কমান্ড দিনঃ

gedit /etc/fstab

এবার নিচের লাইনটিকে যোগ করুনঃ

/dev/hda1 /media/windows ntfs-3g defaults 0 0

তারপর সেভ করুন এবং ফাইলটিকে বন্ধ করুন। এখন থেকে প্রতিবার মেশিন চালু হওয়ার সময়েই ড্রাইভগুলি অটো মাউন্ট হয়ে যাবে। যদি একাধিক পার্টিশন মাউন্ট করতে চান তবে প্রতিটি পার্টিশন এর জন্য আলাদা লাইন যোগ করুন যা আমার ক্ষেত্রে এ রকমঃ

/dev/sda1 /media/windows ntfs-3g defaults 0 0
/dev/sda2 /media/soft ntfs-3g defaults 0 0
/dev/sda3 /media/programming ntfs-3g defaults 0 0

উইন্ডোজ ইনস্টলের পর লিনাক্স পূনরুদ্ধার (Recover Linux After Installing Windows)

লিনাক্স ইনস্টল করে অনেকে কিছুদিন ব্যবহার করার পূনরায় উইন্ডোজ ইনস্টল করেন। কিন্তু উইন্ডোজ এর বুট লোডার লিনাক্সকে চিনতে পারে না তাই পরবর্তীতে আর লিনাক্সে বুট করা যায় না এ রকম পরিস্থিতিতে। অনেকে আবার লিনাক্স পুনরায় ইনস্টল করেন এ ধরনের সমস্যায় পড়ার পর। কিন্তু আপনি লিনাক্সকে খুব সহজেই ফিরে পেতে পারেন যদি আপনার কাছে একটি লাইভ সিডি/ইনস্টলেশন সিডি থাকে। এ পদ্ধতিতে আপনি মেশিনকে ডুয়াল বুট সিস্টেমে রূপান্তরিত করতে পারবেন অর্থাৎ একই মেশিনে উইন্ডোজ এবং লিনাক্স দুটোই ব্যবহার করতে পারবেন। তাহলে আসুন শুরু করা যাক উদ্ধার পর্ব।

  • প্রথম পদ্ধতি

মেশিনকে বুট সিডি/লাইভ সিডি দিয়ে বুট করুন।
আপনার মেশিনের লিনাক্স পার্টিশন মাউন্ট করে নিন। উবুন্তু লাইভ সিডিতে এগুলি স্বয়ংক্রিয়ভাবেই হবে।
প্রথমেই আসুন /mnt ফোল্ডারে একটি ডিরেক্টরী তৈরী করি lin নামে।
#mkdir /mnt/lin (create a folder to use as a mount point)

এ ডিরেক্টরীতে আপনার লিনাক্স পার্টিশনকে মাউন্ট করি নিচের কমান্ড দিয়েঃ
#mount /dev/sda4 /mnt/lin

এবার chroot কমান্ড প্রয়োগ করি যাতে বর্তমান লিনাক্স সিস্টেমকে ব্যবহার করা যায় লাইভ সিডি এর কার্নেল দিয়ে।
#chroot /mnt/lin

যদি উবুন্তু লিনাক্স সিডি ব্যবহার করেন উপরের কমান্ডগুলির বদলে শুধু নিচের কমান্ডটি দিনঃ
#chroot /media/yourlinuxpartition(e.g.sda4)

এবার গ্রাবকে ইনস্টলের জন্য নিচের কমান্ডগুলি প্রয়োগ করি একে একেঃ
# mount /proc
#grub-install /dev/sda অথবা #update-grub

update-grub এবং grub-install কমান্ড শুধুমাত্র ডেবিয়ান অথবা ডেবিয়ান বেজড ডিস্ট্রো যেমন উবুন্তুতে কাজ করবে।

  • আরেকটি পদ্ধতি

এক্সপি ইনস্টলের পর যদি উবুন্তু খুজে না পান তবে গ্রাবকে পুনরায় বুট লোডার হিসেবে MBR এ স্থাপন করতে হবে যাতে সে উইন্ডোজ এবং উবুন্তু উভয়কেই খুজে পায়।

এজন্য প্রথমেই Ubuntu Live CD দিয়ে মেশিন বুট করুন এবং “Try Ubuntu without any change to your computer” অপশন নির্বাচন করুন।

একটি টার্মিনাল খুলুন- Applications -> Accessories -> Terminal থেকে

গ্রাব কনফিগারেশন মোডে প্রবেশ করার জন্য কমান্ড দিনঃ

sudo grub

এবং এন্টার চাপি। তারপর একের পর এক নিচের কমান্ডগুলি দিতে থাকিঃ
– root (hd0,0) – SCSI ডিভাইসের জন্য এটি (sd0,0) হতে পারে

-setup (hd0)
– quit
– exit

এখন মেশিন রিস্টার্ট দিন। আপনি গ্রাব বুট লোডার পাবেন কিন্তু সেখানে উইন্ডোজকে পাবেন না – এ জন্য বুট অপশনে কিছু যোগ করতে হবে।

এখন উবুন্তুতে বুট করার পর নতুন আরেকটি টার্মিনাল সেশন চালু করুন এবং টাইপ করুনঃ

sudo gedit /boot/grub/menu.lst

এবার ফাইলের নিচে স্ক্রল করে যান এবং নিচের লাইনগুলি হুবহু টাইপ করুনঃ

title Windows XP
root (hd0,1)
makeactive
chainloader +1

ফাইলটিকে সেভ করুন এবং রিবুট করুন। যখন গ্রাব বুট লোডার চালু হবে বুট মেনুর জন্য ESC চাপুন । এখন সবার শেষে Windows XP দেখতে পাবেন- এটি সিলেক্ট করে এন্টার চাপুন। ফলে এক্সপি চালু হবে।

যদি গ্রাব মেনুকে সবসময় দেখতে চান তবে আবার উপরের মত MENU.LST ফাইলে ঢুকে hiddenmenu খুজে বের করুন এবং একে #hiddenmenu তে পরিবর্তিত করুন।

যদি আর ও বেশী সময় ধরে মেনু দেখতে চান তবে default timeout 3 তে গিয়ে আপনার পছন্দের সময় দিয়ে দিন ৩ এর বদলে ১০,২০ বা অন্যকিছু।

আশা করি বুঝতে উপরে বর্নিত পদ্ধতি দু’টি বুঝতে পেরেছেন।