এখানে কিছু সংস্থান রয়েছে:
"রুট পরিবর্তন করা" বা "ক্রুটিং" আপনার ফাইল সিস্টেমের অংশটি জুম করার জন্য একটি পদ্ধতি, যাতে উদাহরণস্বরূপ, /path
যা আগে অ্যাক্সেসযোগ্য ছিল তা উল্লেখ করবে /mnt/path
। "ক্রুট" এক্সপ্রেশনটির "রুট" /
মূল ব্যবহারকারীকে নয়, মূল ফাইল সিস্টেমকে বোঝায় । (সাধারণত ক্রুট করার জন্য আপনার রুট ব্যবহারকারীর সুবিধাগুলি প্রয়োজন need)
প্রস্তুতি
এই গাইডের সমস্ত পদক্ষেপগুলি রুট ব্যবহারকারী হিসাবে সম্পাদন করতে হবে।
আমরা মনে করি আপনার হার্ড ডিস্কটি / dev / sda1 এ রয়েছে এবং এর ফাইল টাইপ এক্সট্রো 3। আপনি যদি নিজের ডিস্কের অবস্থান এবং ফাইল টাইপ না জানেন তবে এর ফলাফলটি পড়ুন fdisk -l
।
আপনি যে সিস্টেমে বুট করেছেন সেটির আর্কিটেকচার (যেমন এটি একটি 32 বিট লাইভসিডি) এবং আপনি যে সিস্টেমে প্রবেশ করতে চান সেটি (যেমন এটি আপনার হার্ড ড্রাইভের 32 বিট ইনস্টলেশন) ম্যাচটি নিশ্চিত করুন। আপনি যে আর্কিটেকচারটি ব্যবহার করে বুট করেছেন তা নির্ধারণ করতে পারেন uname -m
।
আপনার যে কোনও কার্নেল মডিউলগুলি লোড হয়েছে তা নিশ্চিত হয়ে নিন।
আপনার প্রয়োজন হলে আপনার নেটওয়ার্ক সেট আপ করুন (উদাহরণস্বরূপ, আপডেট প্যাকেজ ইনস্টল করার জন্য)।
প্রয়োজনে আপনার সোয়াপ পার্টিশনটি সূচনা করুন (যেমন, swapon /dev/sda3
)।
ক্রুট পারফর্ম করছে
cd /
mount -t ext3 /dev/sda1 /mnt
mount -t proc proc /mnt/proc
mount -t sysfs sys /mnt/sys
mount -o bind /dev /mnt/dev
যদি আপনার /boot
ডিরেক্টরিটি আপনার থেকে আলাদা পার্টিশনে থাকে /
এবং আপনি এতে ফাইলগুলি পরিচালনা করতে চান (উদাহরণস্বরূপ, আপনি যদি GRUB এর সাথে কাজ করছেন, কার্নেল আপগ্রেড করছেন ইত্যাদি), আপনাকেও সেই পার্টিশনটি মাউন্ট করতে হবে। এটি যদি / dev / sda2 এ থাকে এবং এর ফাইল টাইপটি এক্স 2 হয়, তবে করুন:
mount -t ext2 /dev/sda2 /mnt/boot
একইভাবে আপনার ফাইল সিস্টেমের অন্য কোনও অংশে ( /var
, /usr
) যা পৃথক পার্টিশনগুলিতে থাকে তবে আপনার অ্যাক্সেসের প্রয়োজন। সাধারণত যখন আপনি কোনও কিছু ঠিক করার জন্য ক্রুট করছেন তখন আপনার / বাড়িতে অ্যাক্সেসের প্রয়োজন হবে না, তাই আপনাকে এটি নিয়ে বিরক্ত করার দরকার নেই।
(ক্রোট করার পরে ফাইল সিস্টেমগুলি মাউন্ট করাও সম্ভব, তবে এটি আগে থেকে এটি করা আরও চৌকস। ক্রুট থেকে বেরিয়ে আসার আগে এগুলিকে সামঞ্জস্য করুন, এটি বন্ধ হয়ে গেলে সিস্টেম তাদের সঞ্চার করতে জানতে পারবে না This এটি ফাইল সিস্টেমগুলিকে ক্ষতি করতে পারে))
যদি আপনি নিজের নেটওয়ার্ক সেটআপ করেন এবং এটিকে ক্রোটেড সিস্টেমে ব্যবহার করতে চান তবে অনুলিপি করুন /etc/resolv.conf
যাতে আপনি ডোমেনের নামগুলি সমাধান করতে সক্ষম হবেন:
cp -L /etc/resolv.conf /mnt/etc/resolv.conf
এখন আপনি মাউন্ট করা ফাইল সিস্টেমে যাওয়ার জন্য প্রস্তুত:
chroot /mnt /bin/bash
(যদি এটি কোনও ত্রুটি chroot: cannot run command '/bin/bash': Exec format error
ফেরায়, এটি সাধারণত নির্দেশ করে যে আপনি একটি আর্কিটেকচার (যেমন x86_32) দিয়ে বুট করেছেন এবং অন্যটিতে (যেমন x86_64) ক্রুট করার চেষ্টা করছেন x সমাধানটি হ'ল একটি লাইভসিডি ব্যবহার করা হবে যা আপনার সিস্টেমের মতো একই স্থাপত্য রয়েছে) মধ্যে chroot।)
এই মুহুর্তে, আপনি এখনও কার্নেল আপনার সাথে বুট চালাচ্ছেন, কিন্তু পাথ /path
কি ব্যবহার করা হয় উল্লেখ করব /mnt/path
।
আপনি যদি GRUB এর সাথে কিছু করছেন, আপনার /etc/mtab
ফাইলটি আপ-টু-ডেট রয়েছে তা নিশ্চিত হওয়া দরকার :
grep -v rootfs /proc/mounts > /etc/mtab
এটি করতে এই মুহুর্তে সহায়ক হতে পারে:
source /etc/profile
export PS1="(chroot) $PS1" # add a reminder to your prompt
আপনার নোংরা কাজ করুন
এই মুহুর্তে, আপনার যা যা করা দরকার তা সমাধান করতে পারেন:
- আপনার ডিস্কের এমবিআরতে পুনরায় ইনস্টল করুন GRUB
- ভুলে যাওয়া পাসওয়ার্ড পুনরায় সেট করুন
- কার্নেল আপগ্রেড করুন (বা ডাউনগ্রেড)
- আপনার initramdisk পুনর্নির্মাণ
- আপনার / ইত্যাদি / fstab ঠিক করুন
- আপনার প্যাকেজ ম্যানেজার ব্যবহার করে প্যাকেজগুলি পুনরায় ইনস্টল করুন
- যাই হোক
পরিষ্কার আপ
আপনি শেষ হয়ে গেলে, চলমান সমস্ত প্রোগ্রাম বন্ধ হয়ে গেছে তা নিশ্চিত করুন। তারপরে ক্রুট থেকে প্রস্থান করুন:
exit
এখন আপনি মাউন্ট করা সমস্ত পার্টিশন আনমাউন্ট করুন:
umount /mnt/boot # if you mounted this or any other separate partitions
umount /mnt/{proc,sys,dev}
অবশেষে আপনার হার্ড ড্রাইভটি আনমাউন্ট করার চেষ্টা করুন:
umount /mnt
/ Mnt (বা অন্য কোনও বিভাজন) ব্যস্ত বলে আপনি যদি ত্রুটি পান তবে এর অর্থ দুটি জিনিসের মধ্যে একটি হতে পারে:
ক্রুটের ভিতরে একটি প্রোগ্রাম চলমান ছিল।
বা আরও ঘন ঘন: এই মাউন্টটিতে একটি মাউন্ট পয়েন্ট এখনও বিদ্যমান। উদাহরণস্বরূপ, আনমাউন্ট / এমএনটি করার চেষ্টা করার সময় / mnt / usr এখনও মাউন্ট করা হয়।
পরবর্তী ক্ষেত্রে প্রথমে আপত্তিজনক মাউন্ট পয়েন্টটি আনমাউন্ট করুন। সমস্ত বর্তমান মাউন্ট পয়েন্টগুলির একটি অনুস্মারক পেতে, mount
কোনও পরামিতি ছাড়াই চালান ।
অবশেষে:
reboot
chroot.sh
ব্যবহার করি এমন প্রতিটি সিস্টেমের মূলটিতে একটি স্ক্রিপ্ট রেখে যেতে চাই, যার বিষয়বস্তু কম-বেশি উপরের সাথে মেলে। যখন আমার কোনও লাইভসিডি বা অন্য কিছু থেকে সেই সিস্টেমে ক্রট করা দরকার তখন আমি কেবল রুট ফাইল সিস্টেমটি মাউন্ট করব এবং ক্রুট স্ক্রিপ্টটি চালাব run সঠিক কমান্ডগুলির জন্য আর কোনও ফ্র্যাঙ্কিক গুগলিং নেই।