16.04LTS এ অবনমিত RAID1 বুট কীভাবে সক্ষম করবেন?


14

পূর্ববর্তী উবুন্টু সংস্করণে যোগ BOOT_DEGRADED=trueকরার /etc/initramfs-tools/conf.d/mdadmস্বয়ংক্রিয়ভাবে বুট করার জন্য সিস্টেমের অনুমতি যখন রুট ফাইল সিস্টেম একটি নিকৃষ্ট অ্যারের হয়। এটি আর 16.04 এলটিএসে কাজ করবে বলে মনে হচ্ছে না।

ডকুমেন্টেশন ( https://help.ubuntu.com/lts/serverguide/advanced-installation.html ) পুরানো বলে মনে হচ্ছে; sudo dpkg-reconfigure mdadmআর অবনমিত বুটের অনুমতি দিতে বলবে না এবং bootdegraded=trueকার্নেল আর্গুমেন্টটি আর কাজ করবে বলে মনে হচ্ছে না। রুট ফাইল সিস্টেম অ্যারে অবনমিত হলে সিস্টেমটি সর্বদা ইনি্রামফগুলিতে বুট হয়। সেখান থেকে, mdadm -IRsসিস্টেমটি বুট করার অনুমতি দেয়।

16.04LTS এ যখন রুট ফাইল সিস্টেমটি অবনমিত RAID1 অ্যারে থাকে তখন আমি কীভাবে স্বয়ংক্রিয় বুটিং সক্ষম করব?


আসল কনফিগারেশন বাগটি ঠিক করা হয়েছে বলে মনে হয় তবে বাগস.লাঞ্চপ্যাড.net / সার্ভারগাইড /+ বাগ / ১৩১০১62২ অনুসারে ডকুমেন্টেশনটি এখনও ভুল আছে যতদূর আমি বুঝতে পেরেছি, অবনমিত RAID সহ বুট করার জন্য আর কোনও অতিরিক্ত কনফিগারেশন প্রয়োজন নেই (18.04)।
দিয়েগো

উত্তর:


9

উল্লিখিত বাগ এমডিএডএম 3.3-2ubuntu7 এ প্রদর্শিত হবে এবং 3.4-2 এ স্থির করা হয়েছে।

ইয়াক্কেটি (16.10) 3.4-4 এর সর্বশেষতম এমডিএমএম রিলিজটিতে ইতিমধ্যে ফিক্স রয়েছে এবং 16.10 এর জন্য উপলব্ধ কিন্তু 16.04LTS এর জন্য (এখনও?) নয়।

এইভাবে আমি আমার 16.04LTS এর এমডিএডএম হাতে নিয়ে আপগ্রেড করেছি:

wget http://launchpadlibrarian.net/275652884/mdadm_3.4-4_amd64.deb
sudo dpkg -i mdadm_3.4-4_amd64.deb

আমি যাচাই করতে

  • কম্পিউটার বন্ধ করুন
  • ডিস্ক / এসএসডি এর মধ্যে একটি প্লাগ প্লাগ করা হয়েছে
  • কম্পিউটার চালু করো

কনসোল পর্যবেক্ষণ: অবনমিত রাইড অ্যারে থেকে বুট !

বাগ: https://bugs.launchpad.net/ubuntu/+source/mdadm/+bug/1635049 https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=784070


আপনি সবেমাত্র আমার 1 সপ্তাহ অনুসন্ধানে সমাধান করেছেন ... ধন্যবাদ মানুষ।
ফাহাদ আহমাদ

সেই বাগটি হতাশাবোধক একটি পঠন।
কেভিন লিদা

1

দেখে মনে হচ্ছে যে মূল কারণটি /usr/share/initramfs-tools/scripts/local-top/mdadmস্ক্রিপ্টের অনুপস্থিতি - দেবিয়ান -8 এ এটি mdadmপ্যাকেজটিতে অন্তর্ভুক্ত রয়েছে তবে উবুন্টু -16.04 ;-( এর জন্য একই প্যাকেজটিতে হারিয়ে গিয়েছিল;

সুতরাং, আমি এর নোংরা-হ্যাক সংস্করণ তৈরি করে আবার তৈরি করার পরে initramfs- আমার পরীক্ষা উবুন্টু -১ 16.০৪ এলটিএস সার্ভারটি RAID1 অ্যারে থেকে একমাত্র দ্বিতীয় এইচডিডি ব্যবহার করে পুরোপুরি বুট করতে সক্ষম হয়েছিল।

#!/bin/sh
# 2016-07-13 andrey@kopeyko.ru - missed mdadm script for Ubuntu-16.04
# see debian8_host:/usr/share/initramfs-tools/scripts/local-top/mdadm for full version

MDADM=/sbin/mdadm 
. /scripts/functions

echo "===>"
cat /proc/mdstat
echo "===>"
log_begin_msg "Assembling all MD arrays"
if $MDADM --assemble --scan --run --auto=yes
then
  log_success_msg "assembled all arrays."
else
  log_warning_msg "failed to assemble all arrays, attempting individual starts"
  for dev in $(cat /proc/mdstat | grep md | cut -d ' ' -f 1)
  do
    log_begin_msg "attempting mdadm --run $dev"
    if $MDADM --run $dev; then
      log_success_msg "started $dev"
    else
      log_failure_msg "failed to start $dev"
    fi
  done
fi
log_end_msg
echo "===>"
cat /proc/mdstat
echo "===>"

sleep 5

# TODO: run mdadm --readwrite /dev/mdN
# if array is in 'auto-read-only' mode

1
আপনি এই স্ক্রিপ্টটি রেখেছেন /usr/share/initramfs-tools/scripts/local-top/mdadmএবং তারপরে ইনস্টল করুন update-initramfs -k all -u। তবে এটি একটি সতর্কতা উত্পন্ন করবে। সতর্কতাটি লাইনের case ${1:-} in prereqs) echo "multipath"; exit 0;; esacপূর্বে রাখা অক্ষম করতে . /scripts/functions
কেভিন লিয়দা

হ্যাঁ, এটি একটি সতর্কতা উত্পন্ন করে - তবে এই সতর্কতাটি নিরীহ। আমি মনে করি functionsসম্ভাব্য পার্শ্ব প্রতিক্রিয়াগুলির কারণে হ্যাকিং কোনও ভাল ধারণা নয়। সুতরাং আমি কেবল এই সতর্কতা উপেক্ষা করি।
Andrey Kopeyko

0

16.04 এর সাথে আমারও একই সমস্যা ছিল, রেইড অ্যারে সাধারণ তার অবনমিত মোডে সক্রিয় হতে অস্বীকৃতি জানায়।

এখানে একটি সহজ কাজ

  1. নতুন ফাইল তৈরি করুন: জন্য / etc / initramfs -র-সরঞ্জামগুলি চালু / স্ক্রিপ্ট / init-premount / delay_mounting (সেট মনে রাখবেন + X)

যোগ

20 ঘুমা (বা আপনি যে সেকেন্ডে পছন্দ করেন)

  1. নতুন ফাইল তৈরি করুন: / ইত্যাদি / initramfs- সরঞ্জাম / স্ক্রিপ্ট / স্থানীয় শীর্ষ / m دادm (+ এক্স সেট করতে মনে রাখবেন)

নিম্নলিখিতটি যোগ করুন (জোর করে আরে শুরু করুন, যদি আপনার / dev / md0, / dev / md1 এবং / dev / md2 থাকে)

mdadm ব্যবহার --run, / dev / md0
mdadm ব্যবহার --run, / dev / md1
mdadm ব্যবহার --run, / dev / MD2

তারপর

আপডেট-initramfs -k all -u , তারপরে আপনি সমস্ত প্রস্তুত।

দয়া করে মনে রাখবেন যে, কেবলমাত্র 1) 14.04 এর জন্য প্রয়োজন, তবে এটি উভয় ক্ষেত্রেই ক্ষতি করে না। আপনি বাদে কিছু সতর্কতা বার্তা দেখতে পাবেন যেমন:

m دادm: অ্যারে / ডিভ / এমডি0 চালাতে ব্যর্থ: ডিভাইস বা সংস্থান ব্যস্ত

যা ক্ষতিকারক নয়, যেহেতু এটি কেবলমাত্র বলে যে / dev / md0 সক্রিয় তাই আপনি অবশ্যই স্পষ্টত স্ক্রিপ্ট লিখতে পারেন যখন প্রয়োজন হয় --run চালানো যায়।


0

এখানে অন্যান্য উত্তরগুলির সমস্যার সমাধানের জন্য কার্যকারণ রয়েছে, তবে এটি উবুন্টুর সাথে একটি বাগ এবং এটি ঠিক করা উচিত। এখানে বাগটি রয়েছে: https://bugs.launchpad.net/ubuntu/+source/mdadm/+bug/1635049

এটি আগে ঠিক করা হয়েছিল: https://wiki.ubuntu.com/ReliableRaid

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