"Chown -R रूट /" मैं कितना खराब हूँ?


9

मैंने गलती से कमांड चाउन -R रूट / मेरी रेल एप्लिकेशन के सार्वजनिक फ़ोल्डर में अनुमतियाँ बदलने का प्रयास किया। मेरा मानना ​​है कि इसने मेरे सभी फ़ोल्डरों को / डायरेक्टरी पर अनुमति बदल दी। तो मेरा सवाल यह है कि यह कितना खतरनाक है, वास्तव में बेहतर सवाल यह होगा कि क्या इसको पूर्ववत करना है?


3
यह स्वचालित रूप से पूर्ववत नहीं किया जा सकता है, और हाँ, इसका आपके सिस्टम पर महत्वपूर्ण प्रभाव पड़ता है (सहित, लेकिन यह सीमित नहीं है, विभिन्न होम डाइरेक्टरीज़)। मुझे आशा है कि आपके पास हाल ही में बैकअप काम है। सौभाग्य।
Frédéric Hamidi

ऐसे प्रोग्राम हैं जो उपयुक्त अनुमतियों और फ़ाइल स्वामित्व के लिए आपके सिस्टम की जांच करते हैं। मुझे लगता है कि ट्रिपवायर है या एक शुरुआती था। यदि आपके पास एक से अधिक उपयोगकर्ता नहीं हैं, तो आप केवल एक रिपोर्ट प्राप्त करके और / या इस तरह के उपकरण से ठीक करके स्थिति को बचा सकते हैं।
मीनोप्रेत

इसके अलावा नीचे दी गई महान सलाह को पढ़ें "किसी भी तरह से प्रतिक्रिया न करें जो इसे बदतर बना देगा" और "सबसे बुरा न मानें"। या मजाक संस्करण का उपयोग करके इन महत्वपूर्ण सामान्य समस्या निवारण चरणों को याद रखें: आपातकालीन ऑपरेटर: "घबराओ नहीं, क्या आप सुनिश्चित हैं कि आपका दोस्त मर चुका है?" कॉलर: बैंग "हाँ, दुख की बात है कि वह मर चुका है।"
मिनोपेट

ज्यादातर मामलों में, एक सामान्य प्रणाली पर, आपको एक फ़ाइल के समूह से यह बताने में सक्षम होना चाहिए कि मालिक कौन होना चाहिए। इसलिए findसभी फाइलें जो रूट के स्वामित्व में हैं, जहां समूह उचित नहीं है, और उन सभी को समूह से मेल खाने वाले उपयोगकर्ता के लिए भेज दिया है। विफलताओं को लॉग करें, और व्यक्तिगत आधार पर उनसे निपटें।
एएफएफ

क्या आपने उस कमांड को रूट के रूप में चलाया है? (मुझे आशा है कि नहीं ...)
एक्सल

जवाबों:


7

यहां समस्या को कम करने का एक तरीका (समाधान नहीं, लेकिन आपको एक छेद से बाहर निकलने में मदद करना है) फाइलों के लिए उपयुक्त स्वामित्व एकत्र करने के लिए एक समान प्रणाली पर एक प्रक्रिया चलाना है । मैं एक सटीक मैच की संभावना की सराहना करता हूं कि वे कुछ हद तक पतले हैं, लेकिन यदि ओ / एस दोनों समान स्तर पर हैं, तो समान पैकेज के साथ आप भाग्यशाली हो सकते हैं।

एक बार जब आप फ़ाइल अनुमतियों को एक फ़ाइल में एकत्र कर लेते हैं, तो आप फ़ाइलों को पढ़ने के लिए अपने सिस्टम पर एक प्रक्रिया चला सकते हैं और अच्छे से फाइल / परमिट / मालिकाना और उन्हें आप पर प्रतिस्थापित कर सकते हैं। मेरे पास लिनक्स पर छोटे-छोटे घरेलू-विकसित ऐप हैं जो बस यही करते हैं।

उदाहरण के लिए

777*0*0*S*16*1334559119*1334532895*1361208513*/usr/lib32/*libgomp.so.1
644*0*0*F*67370*1359536382*1359374461*1359717843*/usr/lib32/*librt.a
644*0*0*F*59044*1334559119*1334532931*1355405098*/usr/lib32/*libgomp.so.1.0.0
644*0*0*F*1238*1359536382*1359374461*1359717843*/usr/lib32/*libBrokenLocale.a
777*0*0*S*17*1359536382*1359374460*1361208513*/usr/lib32/*libdl.so
644*0*0*F*905712*1334559116*1334533011*1355405098*/usr/lib32/*libstdc++.so.6.0.16
777*0*0*S*15*1333306601*1323929512*1361208513*/usr/lib32/*libbz2.so.1.0
777*0*0*S*24*1359536382*1359374460*1361208513*/usr/lib32/*libnss_files.so
644*0*0*F*1128*1359536382*1359374462*1359717843*/usr/lib32/*crt1.o

RWX * UID * GID * अन्य सामान * निर्देशिका * फ़ाइल नाम


5

सबसे पहले, यदि यह अभी भी चल रहा है, तो कमांड को रोकें!

अब सब कुछ जड़ से होगा और यह काफी समस्याग्रस्त है।

आपको अपने नवीनतम बैकअप से जानकारी को पुनर्स्थापित करने का प्रयास करना चाहिए।

यह भी महत्वपूर्ण है कि चल रहे सभी एप्लिकेशन और उपयोगकर्ता को बूट पर लॉन्च करने से पहले सिस्टम को पुनः आरंभ न करें। यदि आप करते हैं, तो उनमें से कुछ अनुमतियों की समस्याओं के कारण ठीक से शुरू नहीं हो सकते हैं।

सौभाग्य।


3

बहुत और काफी नहीं।

"बहुत" इस अर्थ में कि अगर कमांड वास्तव में गुजर गया है, तो आपकी सुरक्षा खराब हो गई है। अब आप नहीं जानते हैं कि किन रास्तों में कौन से मालिक हैं और उन्हें क्या करने की अनुमति दी जानी चाहिए।

"बिलकुल नहीं" इस अर्थ में - क्या आप सुनिश्चित हैं कि जब आप यह कर रहे थे तब आप रूट थे और क्या कमांड अंत तक गया था? यदि आपने इसे रद्द कर दिया है, जैसे ही आपने इसे देखा, तो आप भाग्यशाली हो सकते हैं और मरम्मत कम हो सकती है। यदि आप रूट नहीं होते, तो यह कमांड ऐसा करने में सक्षम नहीं होता, जब तक कि आप कुछ ऐसा नहीं करते sudo ...

इसका एक भी उपाय नहीं है। यदि आपके पास एक बैकअप है, तो आप इसे पुनर्स्थापित कर सकते हैं। आपको बैकअप में मालिकों की जांच करने और उन्हें लागू करने की आवश्यकता हो सकती है। यदि आप रूटकिट (rkhunter) चेकर का उपयोग कर रहे हैं, तो हो सकता है कि यह सबसे बुनियादी मालिकों की सूची हो और संभवतः इसे ठीक करने में सक्षम हो। (काफी संभावना नहीं)।


2

कम से कम फेडोरा पर, आरपीएम कमांड के पास विकल्प हैं --setpermsऔर --setugids, उन का उपयोग करके आप अधिकांश सिस्टम स्वामित्व वाली फ़ाइलों को ठीक कर सकते हैं rpm --setugids -a। प्रत्येक उपयोगकर्ता के लिए (कुछ) फ़ाइलें ठीक करें, आप प्रत्येक के लिए कर सकते हैं chown -R user /home/user। वहाँ शायद बचे हुए हैं जो ऊपर से तय नहीं किए गए हैं, खासकर यदि आपके पास कुछ प्रकार के सर्वर (वेब, एफटीपी, अन्य) हैं, तो उन्हें एक-एक करके संभालना होगा।

संभवतः अन्य वितरणों में समान तंत्र हैं। या एक पूर्ण ताज़ा करें (यानी, सब कुछ नए सिरे से स्थापित करें, जैसे यह किसी तरह क्षतिग्रस्त हो गया था। ठीक है, यह किसी तरह क्षतिग्रस्त हो गया था ।)

[हाँ, यह फिर से यूनिक्स 'है, बल्कि उपयोगकर्ताओं को अनचाहे सिखाने का क्रूर तरीका है, जो ENTER दबाने से पहले प्रत्येक कमांड पर ध्यान से विचार करने के लिए, और मूल रूप से रूट उपयोग करने के लिए है । अपने आप को सिखाया हुआ समझें।]


setuidऔर setgidअनुमतियों को हाथ से सेट करने की आवश्यकता है। rpmउन्हें पुनर्स्थापित नहीं करेगा।
11:14 पर jnas

1

यदि आपके OSX ऐप्पल का उपयोग करने से डिस्क यूटिलिटीज में एक पुनर्स्थापना सुविधा मिलती है, तो यह बहुत ही समस्या को ठीक करता है। यदि आप एक linux distro का उपयोग कर रहे हैं, तो मुझे पूरा यकीन है कि आपको मैन्युअल रूप से सभी अनुमतियों को फिर से करना होगा। या तो मामले में, अपने हाथों को स्मैक दें और फिर से ऐसा न करें


संभवतः लिनक्स पर इससे पूरी तरह से पुनर्प्राप्त करने में सक्षम होने की संभावना नहीं है। यहां तक ​​कि अगर आप सिस्टम को काम कर सकते हैं, तो आप शायद कुछ याद करते हैं जो आपको बाद में काटने के लिए वापस आ सकता है, या तो अस्थिरता या सुरक्षा भेद्यता के रूप में। मैं कहूंगा कि बैकअप या पुनर्निर्माण दृष्टिकोण से एक पुनर्स्थापना संभवतः आवश्यक है।
क्रिस कुएहल

0

दुर्भाग्य से मैं इसे "पूर्ववत" करने के किसी भी तरीके के बारे में नहीं जानता, लेकिन आप शायद सिस्टम फ़ाइलों को रूट के स्वामित्व में छोड़ सकते हैं और आपके $ HOME की सभी फाइलों को आपके स्वामित्व में रख सकते हैं (और सभी उपयोगकर्ताओं के लिए भी ऐसा ही कर सकते हैं। प्रणाली)। उस बिंदु पर आप प्रत्येक फ़ाइल पर अनुमतियाँ और / या स्वामी को अपने $ HOME निर्देशिका में नहीं रख सकते हैं, जिसकी उसे आवश्यकता है। हाँ, यह एक दर्द है, लेकिन मुझे नहीं लगता कि एक आसान समाधान है। वैसे भी मैं यही करूंगा।


0

मैं कहता हूँ कि आप जैसा कहते हैं, आप बहुत "खराब" हैं। सबसे अच्छा तरीका (और सबसे कुशल) अपने अच्छे बैकअप से महत्वपूर्ण वस्तुओं को पुनर्स्थापित और पुनर्स्थापित करना है। क्षमा करें, यह एक ऐसी स्थिति नहीं है जिसमें आम तौर पर एक सुखद अंत के साथ त्वरित सुधार होता है। शुभ लाभ!

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