দূষিত এক্সএফএস ফাইল সিস্টেমগুলির সাথে ডিল করার উপযুক্ত উপায়


19

আমি সম্প্রতি একটি এক্সএফএস ফাইল সিস্টেম পাওয়ারফেলের কারণে দুর্নীতিগ্রস্থ হয়ে পড়েছিলাম। (CentOS 7 সিস্টেম)। সিস্টেমটি সঠিকভাবে বুট করবে না।

আমি রেসকিউ সিডি থেকে বুট করে চেষ্টা xfs_repairকরেছিলাম, এটি আমাকে লগটি মোকাবেলায় পার্টিশনটি মাউন্ট করতে বলেছিল।

আমি পার্টিশনটি মাউন্ট করেছি এবং lsএটি যাচাই করার জন্য একটি করেছি , হ্যাঁ, এটি উপস্থিত রয়েছে বলে মনে হয়। আমি পার্টিশনটি আনমাউন্ট করে xfs_repairআবার চেষ্টা করেছি এবং একই বার্তাটি পেয়েছি।

এই পরিস্থিতিতে আমার কী করার কথা? আমার রেসকিউ সিডি (সিস্টেম রেসকিউ সিডি, সংস্করণ 4.7.1) এর সাথে কিছু ভুল আছে? আমার অন্য কোন পদ্ধতি ব্যবহার করা উচিত ছিল?

আমি কেবল ব্যাকআপগুলি থেকে সিস্টেমটি পুনরুদ্ধার করে শেষ করেছি (এটি এই ক্ষেত্রে দ্রুত এবং সহজ ছিল) তবে ভবিষ্যতে কী করতে হবে তা জানতে চাই।

উত্তর:


22

আপনি যদি xfs_repair চালানোর চেষ্টা করছেন , ত্রুটি বার্তা পেয়ে যা লগটি পুনরায় খেলতে ফাইল সিস্টেমটি মাউন্ট করার পরামর্শ দেয় এবং এখনও একই ত্রুটি বার্তা প্রাপ্ত করার পরে, আপনাকে জোর করে মেরামত করতে হবে (এর -Lসাথে পতাকা ব্যবহার করে xfs_repair)। এই বিকল্পটি একটি শেষ অবলম্বন হওয়া উচিত।

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

মাউন্ট: মাউন্ট / ডেভ / ম্যাপার / সেন্টো-রুট অন / এমএনটি / সেন্টোস-রুট ব্যর্থ হয়েছে: কাঠামোটি পরিষ্কার করা দরকার

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

Xfs_metadump এবং xfs_mdrestore ব্যবহার করে আপনি আক্রান্ত পার্টিশনের একটি মেটাডেটা চিত্র তৈরি করতে পারেন এবং পার্টিশনের পরিবর্তে চিত্রটিতে জোর করে মেরামত করতে পারেন। এর সুবিধাগুলি হ'ল পার্টিশনে সঞ্চালনের আগে জোর করে মেরামত করে যে ক্ষতি হয় তা দেখার ক্ষমতা।

এটি করতে, আপনার একটি শালীন আকারের ইউএসবি বা বাহ্যিক হার্ড ড্রাইভের প্রয়োজন হবে। ইউএসবি ড্রাইভ মাউন্ট করে শুরু করুন - আমার ইউএসবিটি এখানে অবস্থিত ছিল /dev/sdb1, আপনার নাম অন্যরকম হতে পারে।

mkdir -p /mnt/usb
mount /dev/sdb1 /mnt/usb

একবার মাউন্ট হয়ে গেলে, xfs_metadumpইউএসবিতে পার্টিশন মেটাডেটার একটি অনুলিপি তৈরি করতে চালান - আবার আপনার প্রভাবিত পার্টিশনটি ভিন্ন হতে পারে। এই ক্ষেত্রে, আমার এখানে একটি দূষিত মূল বিভাজন ছিল /dev/mapper/centos-root:

xfs_metadump /dev/mapper/centos-root /mnt/usb/centos-root.metadump

এর পরে, আপনি মেটাডেটা কোনও চিত্রে পুনরুদ্ধার করতে চাইবেন যাতে আমরা একটি মেরামত করতে পারি এবং ক্ষতিটি পরিমাপ করতে পারি।

xfs_mdrestore /mnt/usb/centos-root.metadump /mnt/usb/centos-root.img

আমি খুঁজে পেয়েছি যে রেসকিউ মোডে পাওয়া যায় xfs_mdrestoreনা এবং এর পরিবর্তে আপনাকে লাইভ সেন্টোস সিডির রেসকিউ মোডে থাকা দরকার।

অবশেষে, আমরা ইমেজটিতে মেরামতের কাজ করতে পারি:

xfs_repair -L /mnt/usb/centos-root.img

মেরামত সম্পন্ন হওয়ার পরে এবং আপনি আউটপুট এবং সম্ভাব্য ক্ষতির মূল্যায়ন করেছেন, আপনি পার্টিশনের বিরুদ্ধে মেরামতের সম্পাদন করতে চান কিনা তা নির্ধারণ করতে পারেন।

পার্টিশনের বিপরীতে মেরামত করতে, চালান:

xfs_repair -L /dev/mapper/centos-root

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

মনে রাখবেন -Lপতাকাটি সর্বশেষ অবলম্বন হিসাবে ব্যবহার করা উচিত যেখানে মেরামতের জন্য অন্য কোনও সম্ভাব্য বিকল্প নেই।

আমি দেখেছি যে এই অনলাইন নিবন্ধগুলি সাহায্য করেছে:


ঠিক আছে, সুতরাং -L একটি শেষ অবলম্বন, এবং আমরা -L ব্যবহার করে এটি কীভাবে খারাপ হতে চলেছে তা কীভাবে দেখার জন্য এটি দুর্দান্ত নির্দেশাবলী। আমার কাছে আর কী বিকল্প আছে -L ব্যবহারের কম?
মাইকেল কোহনে

1
@ মিশেলকোহেন অবশ্যই ব্যাকআপ থেকে পুনরুদ্ধার করছেন। ব্যাকআপ না পেলে আপনাকে জাহান্নামের এই স্তরের কোথাও পৌঁছানো উচিত নয়।
মাইকেল হ্যাম্পটন

1
@ মিশেলহ্যাম্পটন - ঠিক আছে, যথেষ্ট ন্যায্য। তবে আমি মনে করি না আমি পাওয়ারফেইলে এক্সটোর 4 টির জন্য এর আগে কোনও ফাইল সিস্টেম হারিয়ে ফেলেছি - এক্সএফএস কি কম স্থিতিস্থাপক নয়? বা এই মুহুর্তে আমার কি সত্যিই দুর্ভাগ্য হয়েছিল?
মাইকেল কোহনে

@ মিশেলকোহেন আমি মনে করি আপনি সবেমাত্র অসাধারণ হয়ে গেছেন got এক্সএফএস বেশ নির্ভরযোগ্য একটি ফাইল সিস্টেম।
মাইকেল হ্যাম্পটন

3
আমরা কেবল এটি আরআরডি থেকে করতে সক্ষম হয়ে থাকি। আমরা কি দুর্দান্ত "অগ্রগতি" করেছি।
ফ্লোরিয়ান হিগল

1

আমার কেভিএম ভার্চুয়াল-মেশিনের ভিতরে সেন্টোস bad টি খারাপ স্টপ ছিল এই ত্রুটিটি ছিল:

এক্সএফএসে মেটাডেটা দুর্নীতি সনাক্ত হয়েছে ...

আমি যখন "জার্নাল্টেল-এক্স" লগটি ব্যবহার করি তখন আমি একটি মাউন্ট মাউন্ট করার সময় খুঁজে পেয়েছি:

/ দেব / ম্যাপার / মূল / সিস্রুট

আমি এটি ব্যবহার করে এটি সমাধান:

xfs_repair / dev / mapper / root

তারপরে সিস্টেমটি সাতটি পর্যায় সম্পূর্ণ করে এবং তারপরে y রিবুট করে

./shutdown

এবং তারপরে ভার্চুয়াল মেশিন সেন্টোস 7 ভাল কাজ করে ...

শুভেচ্ছা সহ

দ্রষ্টব্য: সম্ভবত আপনার / ডেভ / ম্যাপার / মূলের অন্য কোনও নাম রয়েছে, দয়া করে আপনার ইউনিটের নাম খারাপ মাউন্ট করা সন্ধানের জন্য জার্নালটিএল-এক্স দিয়ে আপনার ত্রুটি লগটি দেখুন

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