কীভাবে নিষ্ক্রিয় RAID ডিভাইসটি আবার কাজ করবে?


30

বুট করার পরে, আমার RAID1 ডিভাইস ( /dev/md_d0*) কখনও কখনও কিছু মজার অবস্থায় যায় এবং আমি এটি মাউন্ট করতে পারি না।

* মূলত আমি তৈরি করেছি /dev/md0তবে এটি কোনওভাবে নিজেকে পরিবর্তিত হয়েছে /dev/md_d0

# mount /opt
mount: wrong fs type, bad option, bad superblock on /dev/md_d0,
       missing codepage or helper program, or other error
       (could this be the IDE device where you in fact use
       ide-scsi so that sr0 or sda or so is needed?)
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

RAID ডিভাইসটি কোনওভাবে নিষ্ক্রিয় বলে মনে হচ্ছে :

# cat /proc/mdstat
Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] 
                [raid4] [raid10] 
md_d0 : inactive sda4[0](S)
      241095104 blocks

# mdadm --detail /dev/md_d0
mdadm: md device /dev/md_d0 does not appear to be active.

প্রশ্নটি হল, কীভাবে ডিভাইসটি আবার সক্রিয় করবেন (ব্যবহার করে mdmadm, আমি অনুমান করছি)?

(অন্য সময় এটি বুট করার পরে ঠিক আছে (সক্রিয়), এবং আমি সমস্যা ছাড়াই এটিকে ম্যানুয়ালি মাউন্ট করতে পারি But তবে এটি আমার মধ্যে থাকলেও এটি স্বয়ংক্রিয়ভাবে মাউন্ট হবে না /etc/fstab:

/dev/md_d0        /opt           ext4    defaults        0       0

সুতরাং একটি বোনাস প্রশ্ন: বুট করার সময় রেড ডিভাইসটি স্বয়ংক্রিয়ভাবে মাউন্ট করার জন্য আমার কী করা উচিত /opt? )

এটি একটি উবুন্টু 9.10 ওয়ার্কস্টেশন। এই প্রশ্নটিতে আমার RAID সেটআপ সম্পর্কে পটভূমি তথ্য

সম্পাদনা : আমার /etc/mdadm/mdadm.confচেহারাটি এরকম। আমি কখনও এই ফাইলটি স্পর্শ করিনি, অন্তত হাতে হাতে।

# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR <my mail address>

# definitions of existing MD arrays

# This file was auto-generated on Wed, 27 Jan 2010 17:14:36 +0200

ইন /proc/partitionsগত এন্ট্রি md_d0এখন, যখন ডিভাইসটি পুনরায় সক্রিয় হতে হবে কমপক্ষে পুনরায় বুট করার পরে। (আমি নিষ্ক্রিয় না হলে এটি নিষ্ক্রিয় হয়ে গেলে এটি একই রকম হবে কিনা))

রেজোলিউশন : জিমি হেডম্যানের পরামর্শ অনুসারে , আমি এর ফলাফল নিয়েছি mdadm --examine --scan:

ARRAY /dev/md0 level=raid1 num-devices=2 UUID=de8fbd92[...]

এবং এটি এতে যুক্ত করেছে /etc/mdadm/mdadm.conf, যা মনে হয় মূল সমস্যাটি স্থির করে দিয়েছে। পরিবর্তন করার পরে /etc/fstabব্যবহার করার /dev/md0আবার (পরিবর্তে /dev/md_d0), RAID ডিভাইস স্বয়ংক্রিয়ভাবে মাউন্ট পায়!

উত্তর:


25

আপনার বোনাস প্রশ্নের জন্য:

mdadm --examine --scan >> /etc/mdadm/mdadm.conf

2
ঠিক আছে, mdadm --examine --scanউত্পাদিত ARRAY /dev/md0 level=raid1 num-devices=2 UUID=...(md_d0 পরিবর্তে স্বয়ং md0 দ্রষ্টব্য!) আমি করা যে mdadm.conf ফাইলে (ম্যানুয়ালি, কারণ উবুন্টু এবং সঙ্গে কিছু সমস্যা হয়েছে >>( "এর অনুমতি অস্বীকার করেছেন"), এবং উবুন্টু হয় প্রয়োজনীয়) এবং ব্যবহার করা fstab ফাইলের আপডেট md0 (md_d0 নয়) আবার। এখন আমি "নিষ্ক্রিয়" সমস্যাটি আর চালাচ্ছি বলে মনে হয় না এবং RAID ডিভাইসটি স্বয়ংক্রিয়ভাবে মাউন্ট হয়ে যায় / বুটিং শুরু হয়। সূতরাং ধন্যবাদ!
জোনিক

3
আপনার যে সমস্যার কারণে সমস্যা হয়েছিল sudo ... >> mdadm.confতা হ'ল শ্যাড সুডো চালানোর আগে পুনঃনির্দেশিত ফাইলগুলি খুলবে। কমান্ড su -c '.... >> mdadm.conf'কাজ করা উচিত।
মেই

10

আমি খুঁজে পেয়েছি যে /etc/mdadm/mdadm.confলিনাক্সটিকে এটি পুনরায় বুট করার জন্য আমাকে নিজেই অ্যারে যুক্ত করতে হবে। অন্যথায় আপনার কাছে এখানে যা ঠিক আছে আমি তা md_d1পেয়েছি - -দেখাগুলি নিষ্ক্রিয় ইত্যাদি etc.

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

# definitions of existing MD arrays
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f10f5f96:106599e0:a2f56e56:f5d3ad6d
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=aa591bbe:bbbec94d:a2f56e56:f5d3ad6d

প্রতি এমডি-ডিভাইসে একটি অ্যারে যুক্ত করুন, এবং উপরের মন্তব্যটি অন্তর্ভুক্ত করার পরে, বা ফাইলের শেষে এই জাতীয় মন্তব্য উপস্থিত না থাকলে সেগুলি যুক্ত করুন। আপনি ইউআইডিগুলি পেয়ে যাবেন sudo mdadm -E --scan:

$ sudo mdadm -E --scan
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=f10f5f96:106599e0:a2f56e56:f5d3ad6d
ARRAY /dev/md1 level=raid1 num-devices=2 UUID=aa591bbe:bbbec94d:a2f56e56:f5d3ad6d

আপনি দেখতে পাচ্ছেন যে স্ক্যান-ফলাফল থেকে আউটপুটটি কেবল ফাইলটিতে অনুলিপি করতে পারবেন।

আমি উবুন্টু ডেস্কটপ 10.04 এলটিএস চালাই, এবং যতদূর আমি মনে করি এই আচরণটি উবুন্টুর সার্ভার সংস্করণ থেকে পৃথক, তবে এটি এত দীর্ঘ সময় আগে আমি সার্ভারে আমার এমডি-ডিভাইস তৈরি করেছি আমি ভুল হতে পারি। এটিও হতে পারে যে আমি কেবল কিছু বিকল্প মিস করেছি।

যাইহোক, কনফ-ফাইলটিতে অ্যারে যুক্ত করা কৌশলটি মনে হচ্ছে। আমি উপরোক্ত রেড 1 চালিয়েছি এবং কোন সমস্যা ছাড়াই বছরের জন্য 5 টি অভিযান চালিয়েছি।


1
সুতরাং মূলত আপনি বর্তমানে গ্রহণযোগ্য উত্তর হিসাবে একই জিনিস বলছেন, আরও বেশি শব্দচোষী? :) এখনও, +1, সুন্দর প্রথম পোস্ট।
জোনিক

7

সতর্কতা: প্রথমে আমাকে বলতে দাও যে নীচে ("বল" - এর ব্যবহারের কারণে) আমার পক্ষে ঝুঁকিপূর্ণ বলে মনে হচ্ছে এবং যদি আপনার অপরিবর্তনযোগ্য ডেটা থাকে তবে আমি আপনার যে কোনওটি চেষ্টা করার আগে জড়িত পার্টিশনের অনুলিপিগুলি তৈরি করার পরামর্শ দেব recommend নীচের জিনিসগুলি। যাইহোক, এটি আমার পক্ষে কাজ করেছিল।

অ্যারেটি নিষ্ক্রিয় হিসাবে দেখানো হয়েছে এবং আমার অন্যদের পরামর্শ অনুসারে "এমডাদম - এক্সামাইন - স্ক্যান> /etc/m دادm.conf" সহ আমি কিছুই করি নি, একই সমস্যা ছিল আমার।

আমার ক্ষেত্রে, যখন এটি ড্রাইভ প্রতিস্থাপনের পরে RAID-5 অ্যারে শুরু করার চেষ্টা করেছিল, তখন এটি বলছিল যে এটি নোংরা (মাধ্যমে dmesg):

md/raid:md2: not clean -- starting background reconstruction
md/raid:md2: device sda4 operational as raid disk 0
md/raid:md2: device sdd4 operational as raid disk 3
md/raid:md2: device sdc4 operational as raid disk 2
md/raid:md2: device sde4 operational as raid disk 4
md/raid:md2: allocated 5334kB
md/raid:md2: cannot start dirty degraded array.

এটিকে নিস্ক্রিয় হিসাবে দেখাতে কারণ /proc/mdstat:

md2 : inactive sda4[0] sdd4[3] sdc4[2] sde4[5]
      3888504544 blocks super 1.2

আমি আবিষ্কার করেছি যে আমি প্রতিস্থাপন করা ড্রাইভ ব্যতীত সমস্ত ডিভাইসে তাদের একই ইভেন্ট রয়েছে /dev/sdb4:

[root@nfs1 sr]# mdadm -E /dev/sd*4 | grep Event
mdadm: No md superblock detected on /dev/sdb4.
         Events : 8448
         Events : 8448
         Events : 8448
         Events : 8448

তবে অ্যারের বিবরণে দেখা গেছে যে এটির মধ্যে 5 টির মধ্যে 4 টি ডিভাইস উপলব্ধ ছিল:

[root@nfs1 sr]# mdadm --detail /dev/md2
/dev/md2:
[...]
   Raid Devices : 5
  Total Devices : 4
[...]
 Active Devices : 4
Working Devices : 4
[...]
    Number   Major   Minor   RaidDevice State
       0       8        4        0      inactive dirty  /dev/sda4
       2       8       36        2      inactive dirty  /dev/sdc4
       3       8       52        3      inactive dirty  /dev/sdd4
       5       8       68        4      inactive dirty  /dev/sde4

(উপরেরটি "স্টেট" কলামের স্মৃতি থেকে এসেছে, আমি এটি আমার স্ক্রোল-ব্যাক বাফারে খুঁজে পাচ্ছি না)।

আমি অ্যারে বন্ধ করে এবং তারপরে এটি পুনরায় একত্রিত করে সমাধান করতে সক্ষম হয়েছি:

mdadm --stop /dev/md2
mdadm -A --force /dev/md2 /dev/sd[acde]4

এই মুহুর্তে অ্যারে উঠেছিল, 5 টির মধ্যে 4 টি ডিভাইস নিয়ে চলছিল, এবং আমি প্রতিস্থাপন ডিভাইস যুক্ত করতে সক্ষম হয়েছি এবং এটি পুনর্নির্মাণ করছে। আমি কোনও সমস্যা ছাড়াই ফাইল-সিস্টেম অ্যাক্সেস করতে সক্ষম।


4

আমার উবুন্টু 10.04 এর সাথে সমস্যা ছিল যেখানে এফস্ট্যাবটিতে একটি ত্রুটি সার্ভারটি বুট করা থেকে বিরত ছিল।

উপরের সমাধানগুলিতে বর্ণিত হিসাবে আমি এই আদেশটি চালিয়েছি:

mdadm --examine --scan >> /etc/mdadm/mdadm.conf

এটি "এমডাদম - এক্সামাইন - স্ক্যান" থেকে "/etc/m دادm/m دادm.conf" এ ফলাফল যুক্ত করবে

আমার ক্ষেত্রে, এটি ছিল:

ARRAY /dev/md/0 metadata=1.2 UUID=2660925e:6d2c43a7:4b95519e:b6d110e7 name=localhost:0

এটি একটি ভুয়াফারিড 0। স্বয়ংক্রিয়ভাবে মাউন্ট করার জন্য / etc / fstab এ আমার কমান্ডটি হ'ল:

/dev/md0 /home/shared/BigDrive ext3 defaults,nobootwait,nofail 0 0

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

আশা করি এটি কিছু লোককে সহায়তা করবে।


এটা আমার জন্য এটি কি। আমি আমার রেড ড্রাইভগুলি একটি পিসিআই এক্সপ্রেস সাটা কার্ডের মাধ্যমে সংযুক্ত করেছি, সুতরাং আমি অনুমান করছি বুট করার সময় সিস্টেমটি সেই ড্রাইভগুলি দেখতে পেল না।
মাইকেল রবিনসন

2

আপনি আপনার এমডি ডিভাইসটি সাথে সক্রিয় করতে পারেন

mdadm -A /dev/md_d0

আমি মনে করি কিছু RAID সদস্য আবিষ্কার হওয়ার আগে বা একই জাতীয় কোনও সমস্যার আগে খুব দ্রুত কিছু স্টার্টআপ স্ক্রিপ্ট শুরু হয়ে যায়। দ্রুত এবং নোংরা কাজ হিসাবে আপনার এই লাইনটি /etc/rc.local এ যুক্ত করতে সক্ষম হওয়া উচিত:

mdadm -A /dev/md_d0 && mount /dev/md_d0

সম্পাদনা করুন: আপাতদৃষ্টিতে আপনার /etc/m دادm/m دادm.conf এ এখনও পুরানো কনফিগারেশন নাম রয়েছে। এই ফাইলটি সম্পাদনা করুন এবং md0 এর ইভেন্টগুলি md_d0 এর সাথে প্রতিস্থাপন করুন।


ঠিক আছে, সেই সময়গুলোতে সেখানে ডিভাইস যখন হয় পুনরায় বুট করার পরে সক্রিয় শুধু mount /dev/md_d0/etc/rc.localকাজ জরিমানা। mdadm -A /dev/md_d0অন্যদিকে উভয় ক্ষেত্রেই ত্রুটি বার্তাটি ব্যর্থ হয় (যাতে আমি এটি &&অপারেটরের আগে এটি ব্যবহার করতে পারি না )। যাইহোক, সমস্যার অর্ধেক সমস্যার সমাধান হয়েছে বলে মনে হয়।
জোনিক

আসলে m دادm.conf এর কোনও কনফিগারেশন নাম নেই, অন্তত সরাসরি (এটি /proc/partitionsযদিও উল্লেখ করা হয় ); সম্পাদিত প্রশ্ন দেখুন। আমি কখনও mdadm.conf স্পর্শ করি নি - এটি কী কী সরঞ্জাম যা এটি স্বয়ংক্রিয়ভাবে তৈরি করে?
জোনিক

রেকর্ডটির জন্য, /etc/rc.localকাজটি সরিয়ে ফেলা হয়েছে বলে মনে হচ্ছে যে আমি সবকিছু
ঠিকঠাকভাবে

2

আমারও অনুরূপ সমস্যা ছিল ... আমি থিসাসিয়েটেড ডিভাইসগুলির পার্টিশনগুলি বাড়ানোর পরে আমার সার্ভার এমডি 2 মাউন্ট করবে না। এই থ্রেডটি পড়ে আমি দেখতে পেলাম যে md2 RAID ডিভাইসে একটি নতুন ইউআইডি রয়েছে এবং মেশিনটি পুরানোটি ব্যবহার করার চেষ্টা করছে।

প্রস্তাবিত হিসাবে ... 'এমডি 2' আউটপুট ব্যবহার করে

mdadm --examine --scan

আমি /etc/mdadm/mdadm.confউপরের কমান্ডের এক আউটপুট দিয়ে পুরানো ইউআইডি লাইনটি সম্পাদনা করেছি এবং প্রতিস্থাপন করেছি এবং আমার সমস্যাটি চলে গেছে।


2

আপনি যখন কিছু করার ভান করেন তখন /dev/md[012346789}এটি যায় /dev/md{126,127...}/dev/md0মাউন্ট চালিয়ে যায় /dev/md126বা /dev/md127আপনার করতে হবে:

umount /dev/md127 বা umount /dev/md126

আপনার সিস্টেমটি বন্ধ না করে আপনাকে কমান্ড এবং কিছু অ্যাপ্লিকেশন কার্যকর করতে দেয় এটি অস্থায়ী।


1

md_d0 : inactive sda4[0](S)একটি RAID1 অ্যারের জন্য ভুল দেখাচ্ছে। দেখে মনে হয় যে অ্যারের কোনও সক্রিয় ডিভাইস এবং একটি অতিরিক্ত ডিভাইস নেই ((এস) দ্বারা নির্দেশিত, আপনি সেখানে একটি ব্যর্থ ডিভাইস এবং ঠিক আছে / সক্রিয় ডিভাইসের জন্য কিছুই নেই) দেখতে পাবেন - একটি RAID1 অ্যারের জন্য যা অবনমিতভাবে চলমান সেখানে কমপক্ষে দুটি ঠিক / সক্রিয় ডিভাইস থাকা উচিত (এবং একটি অবনমিত অ্যারের জন্য, কমপক্ষে একটি ওকে / অ্যাক্টিভ ডিভাইস) এবং আপনি কোনও RAID1 অ্যারেটি সক্রিয় করতে পারবেন না কোনও ব্যর্থ নয়-অতিরিক্ত ডিভাইস (অতিরিক্ত হিসাবে) অন্য ড্রাইভ ব্যর্থ হয়ে যাওয়ার পরে এগুলি সক্রিয় না হওয়া অবধি ডেটার অনুলিপিটি ধারণ করবেন না)। যদি আমি সেই /proc/mdstatআউটপুটটি সঠিকভাবে পড়ছি তবে আপনি অ্যারেটিকে বর্তমান অবস্থায় সক্রিয় করতে সক্ষম হবেন না।

মেশিনে আপনার কোনও শারীরিক ড্রাইভ রয়েছে যা স্পিন-আপ ব্যর্থ হয়েছে? না ls /dev/sd*তালিকায় সব ড্রাইভ এবং পার্টিশন আপনি সাধারণত যে মেশিনে দেখার আশা করতে পারে?


মনে হচ্ছে জিমির উত্তরের পরামর্শ অনুসরণ করার পরে আমি আর নিষ্ক্রিয় পরিস্থিতি পুনরুত্পাদন করতে পারব না (কয়েকটি রিবুটের পরে যেমন মনে হচ্ছে) ... যা দুর্দান্ত :) যে কোনও ক্ষেত্রে ধন্যবাদ!
জোনিক

আমি এই রাষ্ট্রের প্রশ্নটি লিনাক্স RAID মেলিং তালিকায় নিয়ে এসেছি এবং এই প্রতিক্রিয়াটি পেয়েছি: স্পিনিক্স.টেন
মেসেজ

আমি যেমন এখানে লিখেছি , echo active > /sys/block/md0/md/array_stateআমার পক্ষে কাজ করেছেন, কেবলমাত্র অতিরিক্ত ছাড়াই RAID0 এর পরিবর্তে আমার RAIDটিকে হারিয়ে যাওয়া ডিস্কের সাথে RAID1 হিসাবে দেখিয়েছে।
এনএইচ 2

1

কোনও হার্ডওয়্যার সমস্যা নেই এবং ধরে নিয়ে আপনার অ্যারে শুরু করার জন্য পর্যাপ্ত ড্রাইভ / পার্টিশন রয়েছে তা ধরে নিলে অ্যারে চালানোর একটি সহজ উপায় নিম্নলিখিতটি:

md20 : inactive sdf1[2](S)
      732442488 blocks super 1.2

 sudo mdadm --manage /dev/md20  --run

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

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