বুট এবং রুট পার্টিশনগুলি কীভাবে অন্য ড্রাইভে স্থানান্তরিত করতে হয়


27

আমার কম্পিউটারে আমার দুটি ড্রাইভ রয়েছে যার নিম্নলিখিত কনফিগারেশন রয়েছে:

Drive 1: 160GB, /home
Drive 2: 40GB, /boot and /

দুর্ভাগ্যক্রমে, ড্রাইভ 2 মারা যাচ্ছে বলে মনে হচ্ছে, কারণ এটিকে লেখার চেষ্টা করা আমাকে ত্রুটি দিচ্ছে, এবং স্মার্ট সেটিংস পরীক্ষা করে দেখার বিষয় একটি দুঃখজনক পরিস্থিতি দেখায়।

ড্রাইভ 1 এ আমার প্রচুর জায়গা রয়েছে, তাই আমি যা করতে চাই তা হ'ল / এবং / বুট পার্টিশনগুলিকে এতে স্থানান্তরিত করা, সিস্টেম থেকে ড্রাইভ 2 সরান, ড্রাইভ 2 একটি নতুন ড্রাইভের সাথে প্রতিস্থাপন করুন, এবং প্রক্রিয়াটি বিপরীত করুন।

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


উত্তর:


29

আপনাকে একটি লাইভ সিডি থেকে বুট করতে হবে। তাদের জন্য ডিস্ক 1 এ পার্টিশন যুক্ত করুন, সমস্ত বিষয়বস্তু অনুলিপি করুন এবং তারপরে sudo blkidপ্রতিটি পার্টিশনের ইউআইডি পেতে ব্যবহার করুন । ডিস্ক 1 এর নতুন / এ, আপনি সন্ধান করা নতুন ইউআইডিগুলি ব্যবহার করতে / ইত্যাদি / fstab সম্পাদনা করুন।

GRUB আপডেট করা নির্ভর করে এটি GRUB1 বা GRUB2 কিনা on GRUB1 হলে আপনার /boot/grub/device.map সম্পাদনা করতে হবে

যদি GRUB2, আমি মনে করি আপনার পার্টিশনগুলি একটি সত্যিকারের পরিস্থিতিতে যেমন হবে ঠিক তেমন প্রয়োজন। উদাহরণ স্বরূপ:

sudo mkdir /media/root
sudo mount /dev/sda1 /media/root
sudo mount /dev/sda2 /media/root/boot
sudo mount /dev/sda3 /media/root/home

(আসল পার্টিশনগুলি যে কোনও ক্ষেত্রেই পূরণ করা, আপনি অবশ্যই জিনিসগুলি অনুলিপি করেছেন)

তারপরে মাউন্ট / প্রোক এবং / ডি / মিডিয়া / রুটে আবদ্ধ করুন:

sudo mount -B /proc /media/root/proc
sudo mount -B /dev /media/root/dev
sudo mount -B /sys /media/root/sys

এখন ড্রাইভে প্রবেশ করুন যাতে আপনি GRUB কে নতুন লেআউট অনুযায়ী নিজেকে আপডেট করতে বাধ্য করতে পারেন:

sudo chroot /media/root
sudo update-grub

দ্বিতীয় কমান্ডটি একটি অভিযোগ করবে (আমি এটি ভুলে যাচ্ছি যদিও ...), তবে তা এড়ানো ঠিক হবে।

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


3
এফআইআইআই আজকাল এটি দেখার জন্য কারও কাছে এটি ইএফআই সেটআপগুলিতে প্রযোজ্য নয়। /media/root/boot/efiঅন্যান্য জিনিসগুলির সাথে আপনাকেও মাউন্ট করতে হবে ।
wjandrea

1
আমি করতে প্রয়োজন sudo grub-install /dev/sdaসামনেsudo update-grub
উইলিয়াম Mortada

5

আপনি যদি এখনই ড্রাইভটি প্রতিস্থাপন করেন তবে আপনি ব্যবহার করতে পারেন dd(কয়েক মাস আগে এটি আমার সার্ভারে চেষ্টা করে দেখেছি এবং এটি একটি কবজির মতো কাজ করেছে)।

এর জন্য আপনার একটি বুট-সিডিও লাগবে।

  1. বুট-সিডি শুরু করুন
  2. কেবল মাউন্ট ড্রাইভ 1
  3. চালান dd if=/dev/sdb1 of=/media/drive1/backuproot.img- sdb1 আপনার মূল ( /) পার্টিশন হওয়া। এটি একটি ফাইলে পুরো পার্টিশনটি সংরক্ষণ করবে।
    • একই জন্য /boot
  4. পাওয়ার অফ, ডিস্ক প্রতিস্থাপন করুন, পাওয়ার চালু করুন
  5. চালান dd if=/media/drive1/backuproot.img of=/dev/sdb1- এটি আবার লিখুন।
    • একই জন্য /boot

উপরেরগুলি ঠিক আগের মতো একই আকারের সাথে 2 টি পার্টিশন তৈরি করবে। আপনার গ্রাব সামঞ্জস্য করতে হবে (ম্যাকো পোস্ট পরীক্ষা করুন)।

আপনি যদি নিজের পার্টিশনটির আকার পরিবর্তন করতে চান (যেমনটি করেছিলেন):

  1. নতুন ড্রাইভে 2 পার্টিশন তৈরি করুন ( আপনি যা চান তার জন্য /এবং /bootমাপ করুন)
  2. ব্যাকআপ-চিত্রটি মাউন্ট করুন: mount /media/drive1/backuproot.img /media/backuproot/
  3. খালি /পার্টিশন মাউন্ট করুন :mount /dev/sdb1 /media/sdb1/
  4. নতুন পার্টিশনে এর বিষয়বস্তু অনুলিপি করুন (আমি এই আদেশটি সম্পর্কে নিশ্চিত নই, মালিকানা সংরক্ষণ করা সত্যই গুরুত্বপূর্ণ, এটি cp -Rকরবে না!) cp -R --preserve=all /media/backuproot/* /media/sdb1
    • একই জন্য /boot/

এটি করা উচিত।


দেখা যাচ্ছে যে নতুন "40GB" ড্রাইভটি আমি ইনস্টল করার চেষ্টা করছি সেটি আমার বর্তমান "40GB" ড্রাইভের চেয়ে ছোট। আমি দু'জনেই সংযুক্ত হয়েছি এবং আমি লাইভসিসিডি করে আছি। পুরানোটি থেকে নতুনকে নতুন করে ডিড করার কোনও সহজ উপায় কী এবং এটি একটি সম্পন্ন চুক্তি বলে?
mlissner

আসলে, আমি এই প্রশ্নটি বাছাই করেছি। যে পার্টিশনটি খুব বড় ছিল এটি একটি এক্সট্রোশন পার্টিশন ছিল, তাই আমি একটি লাইভসিডি বুট করেছি এবং এটি কিছুটা সঙ্কুচিত করতে জিপিআর্ট ব্যবহার করেছি।
mlissner

4

এটি সম্পর্কে আমার চূড়ান্ত সমাধানটি বেশ কয়েকটি কৌশলগুলির সংমিশ্রণ ছিল:

  1. আমি ডাইং ড্রাইভ এবং এর প্রতিস্থাপনটি কম্পিউটারে একই সাথে সংযুক্ত করেছি।
  2. নতুন ড্রাইভটি পুরানোের চেয়ে ছোট ছিল, তাই আমি জিপিআর্ট ব্যবহার করে পুরানো পার্টিশনগুলি সঙ্কুচিত করেছিলাম।
  3. এটি করার পরে, আমি পুরানো ড্রাইভে পার্টিশনগুলি অনুলিপি করেছি এবং সেগুলি নতুনতে (জিপিআর্টেড ব্যবহার করে) পেস্ট করেছি।
  4. এর পরে, আমি নতুন ড্রাইভের সঠিক পার্টিশনে বুট পতাকা যুক্ত করেছি, সুতরাং এটি কার্যকরভাবে পুরানো ড্রাইভের একটি আয়না।

এটি সব ভালভাবে কাজ করেছে, তবে আমার এখানে নির্দেশাবলীতে গ্রুব 2 আপডেট করা দরকার ।

এত কিছুর পরে কাজগুলি মনে হয় কাজ করে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.