'গ্রাব রেসকিউ>' ক্র্যাশ থেকে পুনরুদ্ধার করা [বন্ধ]


25

মূলত AskUbuntu.com এ পোস্ট করা হয়েছে ...

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

"ক্লাসিক" সিস্টেম ...

  • উবুন্টু 10.04 (লুসিড লিংক) এর ভিত্তিতে পপি লিনাক্স 5.2.8 (লুসিড)
  • GRUB 2 বুট লোডার

GRUB 2 অনেকগুলি *.modফাইল (কার্নেল মডিউল) রাখে /boot/grub। এই ফাইলগুলি মুছে ফেলা (তারা ভেবেছিলেন যে তারা সাউন্ড ফাইলগুলি ভুল জায়গায় প্রতিস্থাপন করেছেন) রিবুট এবং প্রম্পটে ব্যর্থ হয়েছিল grub rescue>

এই পরিস্থিতিতে পুনরুদ্ধার কিভাবে?


1
বোবা প্রশ্নের মতো মনে হচ্ছে .. স্পষ্টতই আপনি হয় ব্যাকআপ থেকে মুছে ফেলা ফাইলগুলি পুনরুদ্ধার করুন, বা
গ্রাবটি

সম্পূর্ণ অতীত দেখার পরিসংখ্যান গতকালের পত্রিকার মতোই প্রাসঙ্গিক।
অ্যান্থন

অতীতের সংবাদপত্রগুলি অগণিত অপরাধ সমাধান করেছে এবং বিশ্বব্যাপী আরও ভাল জায়গা করে তুলেছে এমন এক বিশাল সমস্যা সমাধানের জন্য দায়বদ্ধ responsible
ডকসালভেজার

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

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

উত্তর:


43

এই উত্তরটি অন্যদের জন্য যা ডকসালভ্যাজারের উত্তরটি কার্যকর করে না।

  1. আমি lsসঠিক হার্ড ড্রাইভ পার্টিশন খুঁজে পেতে ডকসালভাজারের ব্যবহার অনুসরণ করেছি । আমার ক্ষেত্রে ছিল (hd0,msdos5)
  2. তারপরে আমি সাধারণ গ্রাব বুট লোডার স্ক্রিনটিতে ফিরে আসার জন্য নিম্নলিখিত কমান্ডগুলি কার্যকর করেছিলাম।

    grub rescue>  set boot=(hd0,msdos5)
    grub rescue>  set prefix=(hd0,msdos5)/boot/grub
    grub rescue>  insmod normal  
    grub rescue>  normal  
    
  3. উবুন্টুতে বুট করার পরে আমি টার্মিনাল থেকে নিম্নলিখিত কমান্ডগুলির সাহায্যে গ্রাব বুট লোডারটি মেরামত করেছি।

    sudo grub-install /dev/sda 
    

এই প্রক্রিয়াটি দর্শন করার জন্য দয়া করে এই উত্সটি উল্লেখ করুন ।


6
আপনারা এই বন্ধ হওয়ার আগে পোস্ট করেছেন বলে আমি আনন্দিত
স্মাক 89

2
পারফেক্ট - বুট করার জন্য আমার ঠিক সাহায্যের দরকার! আমিও sudo update-grubআগে দৌড়েছি grub-install, কারণ আমার পার্টিশনের বিন্যাস বদলে গিয়েছিল।
mwfearnley

insmod normalকমান্ডটি কত সময় নিতে পারে? এন্টার টিপানোর পরে আমার উবুন্টু হ্যাং হয়ে যায়। স্বীকার করা যায় যদিও এটি ওরাকল ভার্চুয়ালবক্সে ভিএম হিসাবে 'চলছে'।
snark

1
আপডেট: এটি শেষ পর্যন্ত ফিরে এসেছিল error: failure reading sector 0x8019a4 from 'hd0'তাই আমি অনুমান করি এটি বেশ টার্মিনাল!
snark

কিংবদন্তি উত্তর!
জ্যাক

28

গ্রাব রেসকিউ ক্র্যাশ থেকে উদ্ধার করা হচ্ছে ...

  • grub rescue>সমর্থন করে না cd, cpবা তার নিজস্ব প্রকরণ ব্যতীত অন্য কোনও ফাইল সিস্টেম কমান্ড lsসত্যই এক ধরণের findকমান্ড।
  • সুতরাং প্রথমে /bootডিরেক্টরি vmlinuzএবং অন্যান্য বুট চিত্র ফাইলযুক্ত ডিরেক্টরি সহ পার্টিশনটি সন্ধান করতে হবে ...

    grub rescue>  ls  
    (hd0,4) (hd0,3) (hd0,2) (hd0,1)  
    
    grub rescue>  ls (hd0,4)/boot
    ... some kind of 'not found' message
    
    grub rescue>  ls (hd0,3)/boot
    ... some kind of 'not found' message
    
    grub rescue>  ls (hd0,2)/boot
    ... grub ... initrd.img-2.6.32-33-generic ... vmlinuz-2.6.32-33-generic 
    
    • ls যুক্তি ছাড়াই এই সিস্টেমে চারটি পার্টিশন প্রদান করে।
    • ls (hd0,4)/boot/bootপার্টিশনে কোনও ডিরেক্টরি খুঁজে পায় না (hd0,4)
    • ls (hd0,3)/boot/bootপার্টিশনে কোনও ডিরেক্টরি খুঁজে পায় না (hd0,3)
    • ls (hd0,2)/boot/bootপার্টিশনে একটি ডিরেক্টরি খুঁজে পায় (hd0,2)এবং এটিতে vmlinuzআমরা চাই এমন একটি এবং অন্যান্য বুট চিত্র ফাইল রয়েছে ।
  • grub rescue>প্রম্পট থেকে ম্যানুয়ালি বুট করতে ...

    grub rescue>  set root=(hd0,2)/boot  
    grub rescue>  insmod linux  
    grub rescue>  linux (hd0,2)/boot/vmlinuz-2.6.32-33-generic  
    grub rescue>  initrd (hd0,2)/boot/initrd.img-2.6.32-33-generic  
    grub rescue>  boot  
    
    • পার্টিশনে ডিরেক্টরি rootব্যবহার করার জন্য সেট /bootকরুন (hd0,2)
    • গ্রাব মডিউল লোড করুন linux
    • কার্নেল চিত্রটি ব্যবহার করতে সেই মডিউলটি সেট করুন vmlinuz-2.6.32-33-generic
    • চিত্রটি ব্যবহার করতে initrd (init র‌্যাম ডিস্ক) সেট করুন initrd.img-2.6.32-33-generic
    • বুট লিনাক্স।
  • এটি একটি ব্যাসিবক্স কমান্ডলাইন প্রম্পটে বুট করে যাতে সমস্ত বুনিয়াদি ফাইল সিস্টেম কমান্ড রয়েছে ( এবং তারপরে কিছু! )।

  • তারপরে *.modফাইলগুলি /boot/grubডিরেক্টরিতে ফিরে যেতে পারে ...

    busybox>  cd /boot  
    busybox>  mv mod/* grub
    busybox>  reboot
    
  • সফল রিবুট!

আরো দেখুন ...



1
আপনি যে ভিএমলিনুজ, ... বুট চিত্রগুলি সন্ধান করছেন সেটি শীর্ষ স্তরের মূল ফাইল সিস্টেমের মধ্যে থাকতে পারে তাই কেবল একটি স্ল্যাশ ব্যবহার করে চেষ্টা করুন। এটি শীর্ষ স্তরের ডিরেক্টরিগুলিও প্রদর্শন করবে। বুট চিত্রগুলি যদি শীর্ষ-স্তরের মূলের মধ্যে না থাকে, আপনি ডিরেক্টরিগুলি না পাওয়া পর্যন্ত আপনি সবচেয়ে প্রতিশ্রুতিবদ্ধ চেষ্টা শুরু করতে পারেন। উদাহরণস্বরূপ: ls (hd0,1)/, ls (hd0,2)/, ls (hd0,2)/initramfs/, ইত্যাদি ..
DocSalvager

আমার ক্ষেত্রে, দৌড়ানোর পরে ls (hd0,7)/boot, এটি দেখায় attempt to read or write outside of disk 'hd0'
ডেইজি

Hd0 ড্রাইভে part টিরও কম পার্টিশন রয়েছে। এটিও হতে পারে যে ড্রাইভে কিছু অবৈধ স্থান রয়েছে যা কোনও বিভাজনের অংশ নয়।
ডকসালভ্যাজার

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