বিদ্যুৎ ব্যর্থ হওয়ার পরে ফাইল সিস্টেম জার্নালিং কি দুর্নীতির বিরুদ্ধে গ্যারান্টি দেয়?


28

আমি এই প্রশ্নটি অন্য একজন ব্যবহারকারীর পক্ষে জিজ্ঞাসা করছি যিনি উবুন্টু চ্যাট রুমে বিষয়টি উত্থাপন করেছিলেন

ফাইল সিস্টেমে জার্নালিং গ্যারান্টি দেয় যে কোনও বিদ্যুতের ব্যর্থতা দেখা দিলে কোনও দুর্নীতি ঘটবে না?

যদি এই উত্তরটি ফাইল সিস্টেমের উপর নির্ভর করে তবে দয়া করে চিহ্নিত করুন যে কোনটি দুর্নীতির বিরুদ্ধে সুরক্ষা দেয় এবং কোনটি না করে।

উত্তর:


21

কোন গ্যারান্টি আছে। একটি জার্নালিং ফাইল সিস্টেম আরও স্থিতিস্থাপক এবং দুর্নীতিতে কম ঝুঁকিপূর্ণ, তবে অনাক্রম্য নয়।

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

যদিও এই জার্নালিং জার্নালিংয়ের চেয়ে দুর্নীতিতে খুব কম ঝুঁকিপূর্ণ, তবুও দুর্নীতি দেখা দিতে পারে। উদাহরণস্বরূপ, হার্ড ড্রাইভটি যদি যান্ত্রিকভাবে ত্রুটিযুক্ত হয় বা নিজে জার্নালে লিখতে ব্যর্থ হয় বা বাধা হয়ে থাকে।

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

আরও পড়া


আপনি কেন দয়া করে কিছুটা বিস্তারিত বলতে পারেন? সম্ভবত আপনি কোনও দৃশ্যে দুর্নীতি কীভাবে ঘটবে তার একটি উদাহরণ দিতে পারেন।
নাথান ওসমান

1
@ জর্জ এডিসন আমার প্রসারিত উত্তর দেখুন।
অ্যান্ড্রু ল্যামবার্ট

2
শেষ বিটটি ভুল; জিনিসগুলি ভুল হওয়ার কোনও উইন্ডো নেই। যেহেতু এটি কাজটি শুরু করার আগে এটি কী করতে চলেছে তা রেকর্ড করে, শক্তি ব্যর্থ হওয়ার পরে অপারেশনটি পুনরায় শুরু করা যেতে পারে, অপারেশন চলাকালীন এটি কোন পর্যায়ে ঘটে তা বিবেচনা করে না। এটি অর্ডার করার বিষয়, সময় নয়।
psusi

@ স্পুসিতে এখনও জার্নালে লেখার জন্য বাধা দেওয়ার জন্য একটি উইন্ডো রয়েছে। জার্নাল রাইটস ওএস-এ পারমাণবিক প্রদর্শিত হতে পারে তবে তারা এখনও ডিস্কে লেখেন।
অ্যান্ড্রু ল্যামবার্ট 21

5
@ আমাজেদ এগুলি পারমাণবিক কারণ তাদের ক্রম সংখ্যা এবং / অথবা চেকসাম রয়েছে, সুতরাং জার্নাল এন্ট্রি পুরোপুরি লেখা হয়, না হয়। যদি এটি সম্পূর্ণরূপে না লেখা থাকে তবে সিস্টেমটি পুনরায় চালু হওয়ার পরে এটিকে সহজেই উপেক্ষা করা হবে এবং fs এ আর কোনও পরিবর্তন করা হয়নি যাতে এটি ধারাবাহিক থাকে।
psusi

18

না।

মেটাডাটা জার্নালিং নামে পরিচিত জার্নালিংয়ের সবচেয়ে সাধারণ ধরণ কেবলমাত্র ডেটা নয়, কেবল ফাইল সিস্টেমের অখণ্ডতা রক্ষা করে। এটিতে xfsএবং ext3/ ext4ডিফল্ট data=orderedমোডে অন্তর্ভুক্ত।

যদি একটি অ-জার্নালিং ফাইল সিস্টেম ক্র্যাশের শিকার fsckহয় তবে এটি পরবর্তী বুট ব্যবহার করে পরীক্ষা করা হবে । ফাইল সিস্টেমের fsckপ্রতিটি ইনোড স্ক্যান করে , এমন ব্লকগুলি সন্ধান করে যা ব্যবহৃত হিসাবে চিহ্নিত হয়েছে তবে পৌঁছনীয় নয় (যেমন কোনও ফাইলের নাম নেই), এবং সেইগুলি ব্লককে অব্যবহৃত হিসাবে চিহ্নিত করে। এটি করতে দীর্ঘ সময় লাগে।

একটি মেটাডেটা জার্নালিং ফাইল সিস্টেমের সাহায্যে fsckএটি না করে, এটি জানে যে এটি পরিবর্তনের মধ্যবর্তী সময়ে কোনটি ব্লক ছিল, তাই এটি তাদের জন্য পুরো বিভাজন অনুসন্ধান না করে এটিকে মুক্ত হিসাবে চিহ্নিত করতে পারে।

জার্নালিংয়ের একটি খুব কম সাধারণ ধরণ রয়েছে, যাকে বলা হয় ডেটা জার্নালিং, যা ext3আপনি যদি data=journalবিকল্পটি দিয়ে মাউন্ট করেন তবে তা করে ।

এটি কেবলমাত্র যৌক্তিক ক্রিয়াকলাপের তালিকা নয়, জার্নালে প্রতিটি লেখার পুরো বিষয়বস্তু লিখে আপনার সমস্ত তথ্য রক্ষা করার চেষ্টা করে। তবে এটি আপনার ডেটা দুবার লেখার কারণে এটি অনেক ধীর হতে পারে।

অন্যরা যেমন উল্লেখ করেছে, এমনকি এটি কোনও গ্যারান্টিও নয়, কারণ হার্ড ড্রাইভটি অপারেটিং সিস্টেমটিকে এটি ডেটা সঞ্চিত করে থাকতে বলেছিল, যখন এটি সত্য যে এটি এখনও হার্ড ড্রাইভের ক্যাশে ছিল।

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


1
ফাইল সিস্টেমের দুর্নীতি এবং ডেটা দুর্নীতির মধ্যে পার্থক্যের জন্য +1। সেই সামান্য পার্থক্যটি অনুশীলনে বেশ ডুজি।
স্প্লিন্টরলিলিটি

আমার সম্পূর্ণ অজ্ঞতা ক্ষমা করুন, কিন্তু data=journalএকটি বৈশিষ্ট্য হিসাবে কি আদৌ কোনও ধারণা রাখে না?
Boehj

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

@psusi না যতই সতর্ক থাকুন প্রোগ্রাম ডেটা লিখিতভাবে কি ভাবে, হার্ড ড্রাইভ চুপটি দুর্নীতিগ্রস্ত প্রচুর উপর ডেটা পড়ার stackoverflow.com/q/34141117/3338098
user3338098

@ ব্যবহারকারী 3338098, ড্রাইভগুলি যে নিঃশব্দে দুর্নীতিগ্রস্ত ডেটা মারাত্মকভাবে ভাঙা হয় এবং কখনও ব্যবহার করা উচিত নয় এবং এটি সফ্টওয়্যার দ্বারা ভুল কাজ করার কারণে সৃষ্ট দুর্নীতির চেয়ে সম্পূর্ণ ভিন্ন কথোপকথন।
psusi

8

একটি বিদ্যুৎ ব্যর্থতা দেখা দিলে একটি ফাইল সিস্টেম তার ফাইল সিস্টেমের ধারাবাহিকতার গ্যারান্টি দিতে পারে না, কারণ এটি হার্ডওয়্যারটি কী করবে তা জানে না।

যদি কোনও হার্ড ড্রাইভ লেখার জন্য ডেটা বাফার করে তবে ওএসকে বলে যে এটি ডেটা লিখেছে এবং উপযুক্ত লেখার বাধাগুলি সমর্থন করে না, তবে আউট-অফ-অর্ডার রাইটিংগুলি ঘটতে পারে যেখানে পূর্বের লেখাগুলি প্লাটারটিতে আঘাত না করে, তবে একটি পরে লেখা হয় হয়েছে। দেখুন এই serverfault উত্তর আরো বিস্তারিত জানার জন্য।

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


মাথা ফিরিয়ে নেওয়ার সময় ড্রাইভের ফার্মওয়্যারটি लेखকে স্থগিত করার পক্ষে যথেষ্ট স্মার্ট নয়?
নাথান ওসমান

@ জর্জি: এটি ড্রাইভের উপর নির্ভর করবে। সেখানে অনেক কিছুই রয়েছে এবং আপনি জানেন না যে আপনার (সস্তা) ড্রাইভ কত ভাল কাজ করে।
ক্যামে

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

3

জেডএফএস, যা নিকটবর্তী তবে ঠিক একটি জার্নালিং ফাইল সিস্টেম নয়, বিদ্যুতের ব্যর্থতার পরে দুর্নীতির বিরুদ্ধে নকশার মাধ্যমে গ্যারান্টি দিচ্ছে।

এই ক্ষেত্রে যেমন চলমান লেখার মাঝখানে বাধাগ্রস্ত হয় তাতে কিছু আসে যায় না, এর চেকসাম অবশ্যই ভুল হবে তাই ব্লকটি উপেক্ষা করা হবে। ফাইল সিস্টেমটি লেখার অনুলিপি হিসাবে, পূর্ববর্তী সঠিক তথ্য (বা মেটা-ডেটা) এখনও ডিস্কে রয়েছে এবং পরিবর্তে ব্যবহৃত হবে।


2

উত্তর বেশিরভাগ ক্ষেত্রেই না:

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

কোন ঘটনাগুলি একটি দুর্নীতিগ্রস্ত জার্নাল হতে পারে? আমি কেবল খারাপ ক্ষেত্রগুলিই ভাবতে পারি - অন্য কিছু আছে কি?
নাথান ওসমান

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