2008-09-26 9 views
15

मैं परीक्षण के उद्देश्य से फाइल सिस्टम भ्रष्टाचार को अनुकरण करना चाहता हूं कि हमारे एम्बेडेड सिस्टम इस पर प्रतिक्रिया कैसे करते हैं और आखिरकार उन्हें जितना संभव हो उतना गहराई से विफल कर देते हैं। हम डेटा के लिए विभिन्न प्रकार के ब्लॉक डिवाइस इम्यूलेटेड फ्लैश स्टोरेज का उपयोग करते हैं जो अक्सर संशोधित होता है और एनएएनडी/एनओआर में भंडारण के लिए अनुपयुक्त है।मैं ext3 फाइल सिस्टम भ्रष्टाचार का अनुकरण कैसे कर सकता हूं?

चूंकि मेरे पास फ़ाइल पेड़ के विभिन्न हिस्सों में डेटा कितनी बार संशोधित किया गया है और जहां संवेदनशील डेटा संग्रहीत किया जाता है, इस बारे में मेरा बहुत अच्छा विचार है। मैं विशिष्ट क्षेत्रों में त्रुटियों को इंजेक्ट करना चाहता हूं न केवल यादृच्छिक रूप से।

आपात स्थिति के मामले में हम सिस्टम को लाने और रिपोर्ट करने के लिए एक बहुत ही खराब स्थिति में रिपोर्ट करने के लिए अंतिम उपाय के रूप में fsck -y का उपयोग करते हैं। मैं त्रुटियों का कारण बनना चाहता हूं जो बैक अप लेने के लिए सिस्टम क्षमता पर प्रभाव का अध्ययन करने के लिए मरम्मत का प्रयास करने के लिए fsck को ट्रिगर करेगा।

dd if=/dev/random मेरे उद्देश्य के लिए पर्याप्त सटीक नहीं है क्योंकि इसे आसानी से नियंत्रित त्रुटियों को इंजेक्ट करने के लिए उपयोग नहीं किया जा सकता है। क्या कोई अन्य उपकरण या विधियां हैं जो मेरी आवश्यकताओं को बेहतर बनाती हैं या क्या मुझे अपना खुद का आविष्कार करना है?

+0

महान सवाल, लेकिन मैं इस गलती-सहनशीलता को सुगंधित गिरावट के बजाय टैग करूंगा। –

उत्तर

2

यदि आप पहले से ही जानते हैं कि क्या संशोधित करना है, डीडी उन बाइट्स वाली फाइल को पढ़ सकता है जिसमें आप लिखना चाहते हैं, और आप इसे कहां लिखना चाहते हैं।

लिखने के लिए कहां लिखना है, e2fsprogs पैकेज से डीबग्स आपकी मदद कर सकता है।

1

यह एक लिनक्स फाइल सिस्टम छवि fuzzer उपयोग करने के लिए पैदा करने के लिए संभव हो जाना चाहिए भ्रष्टाचार:

012,

या लिनक्स डिस्क गलती इंजेक्शन तकनीकों में से एक (उदा। भ्रष्टाचार मोड में डीएम-फ्लेकी) https://unix.stackexchange.com/a/144200 में वर्णित है।

संबंधित मुद्दे