एक फ़ाइल भी कैसे रूट उपयोगकर्ता बनाने के लिए इसे हटा नहीं सकते


13

फ़ाइल कैसे बनाएं रूट उपयोगकर्ता भी इसे हटा नहीं सकता है?


9
जबकि टेंट के उत्तर में आपके प्रश्न को कवर किया जाना चाहिए, एक मेटा-टिप्पणी इस पर: यदि आपने अपने प्रश्न को अपने तर्क में जोड़ा है, तो इसका उत्तर देना बहुत आसान होगा। हो सकता है कि फ़ाइल को नष्ट करने से रोकने में आपकी समस्या के आसपास कोई काम न हो?
fschmitt 12

जवाबों:


33

सरल उत्तर: आप नहीं कर सकते, जड़ सब कुछ कर सकता है।

आप चैट के साथ "i" विशेषता सेट कर सकते हैं (कम से कम यदि आप ext {2,3,4} पर हैं) जो फ़ाइल को अपरिवर्तनीय बनाता है, लेकिन रूट केवल विशेषता को अनसेट कर सकता है और फ़ाइल को वैसे भी हटा सकता है।

अधिक जटिल (और बदसूरत हैकिश वर्कअराउंड): उस निर्देशिका को रखें जिसे आप रिमोट सर्वर पर रूट के लिए अपरिवर्तनीय चाहते हैं और इसे एनएफएस या एसएमबी के माध्यम से माउंट करें। यदि सर्वर लिखने की अनुमति नहीं देता है जो स्थानीय रूट खाते को लॉक करता है। बेशक स्थानीय रूट खाता स्थानीय रूप से फाइलों को कॉपी कर सकता है, रिमोट सामान को अनमाउंट कर सकता है, कॉपी को रख सकता है और इसे बदल सकता है।

आप अपनी फ़ाइलों को हटाने से रूट को लॉक नहीं कर सकते। यदि आप फ़ाइलों को अक्षुण्ण रखने के लिए अपनी जड़ पर भरोसा नहीं कर सकते हैं, तो आपको एक सामाजिक समस्या हो रही है, तकनीकी नहीं।


यह सवाल एक साक्षात्कारकर्ता ने मुझसे पूछा है। मुझे जवाब नहीं पता। मैंने उससे जवाब मांगा। उन्होंने कहा कि यह संभव है और अपने आप से समाधान खोजें।
कुमार

12
किसी दिन आप भी एक साक्षात्कारकर्ता होंगे और अपने स्वयं के निरर्थक प्रश्न पूछ सकेंगे: "क्या कोई फ़ाइल इतनी बड़ी बना सकता है कि वह इसे न बना सके mv?" (जो ईसाई धर्मशास्त्र पर आधारित एक लंगड़ा मजाक है, और यदि आप क्षेत्र से परिचित नहीं हैं तो एक भयानक मजाक है)
msw

5
@msw: कोई यह तर्क दे सकता है कि यदि आप मैदान से परिचित हैं तो भी यह एक भयानक मजाक है।
मैथ्यू क्रुमले

@matthew crumley: दोषी के रूप में आरोपित :)
msw

@msw: मैंने अभी देखा कि आपने भी स्वीकार किया था कि यह एक मजाक है। और एफडब्ल्यूआईडब्ल्यू, मुझे पसंद है (कुछ) लंगड़ा चुटकुले इसलिए मुझे वास्तव में पसंद आया। यह विषय से बहुत दूर हो रहा है, हालांकि :)
मैथ्यू क्रुमले

34

इसे सीडी-रोम पर रखो! ;)

(यह एक टिप्पणी होनी चाहिए लेकिन मैं टिप्पणी नहीं कर सकता ...)


टिप्पणियों के लिए प्रतिष्ठा की सीमा के पीछे एक समझ है ;-) बस एक छोटा सा विचार-उत्तेजक आवेग है। लौ का इरादा नहीं ;-)
इकोक्स

6
+1 लेकिन वह काम करेगा।
रिचर्ड होलोवे

1
यह और @mouviciel का उत्तर एकमात्र सही समाधान है। यहां तक ​​कि almighty @root अभी भी हार्डवेयर द्वारा निर्धारित नियमों से बंधा है।
रेयान

15

अपनी फाइल को आसानी से फाइल सिस्टम पर रखें। यह एक रिमोट एफएस हो सकता है जहां रूट अब रूट नहीं है, सीडी-रॉम या रिमूवेबल डिवाइस जिसे राइट-प्रोटेक्ट किया जा सकता है, जैसे, एक एसडी कार्ड।


2

बहुत पहले मैंने कर्नेल पैच (2.2.ancient) लिखा था, जहाँ SELFDESTRUCT नामक फ़ाइल को हटाने की कोशिश ने कॉलिंग प्रक्रिया को मार दिया। यह आकस्मिक "rm -rf *" के खिलाफ पहरा देता है।


बहुत पहले और बहुत दूर। आपने वास्तव में इसे (आज्ञा) कैसे किया?
माइकल ड्यूरेंट

1

आप chattr +iकिसी फ़ाइल को अपरिवर्तनीय बनाने के लिए उपयोग कर सकते हैं ।

बेशक रूट एक्सेस के साथ एक समझदार उपयोगकर्ता अभी भी chattr -iअपरिवर्तनीय विशेषता को हटाने और फिर फ़ाइल को हटाने के लिए उपयोग कर सकता है, लेकिन वे यहां सूचीबद्ध के अलावा अन्य किसी भी प्रयास को एक्सेस ब्लॉक करने के लिए पूर्ववत कर सकते हैं।

मैं यह तर्क दूंगा कि ऐसा करने के लिए chattr सही यूनिक्स तरीका है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.