फिक्सिंग / आदि / sudoers फ़ाइल


5

मैं एक कंपनी के लिए एक सिस्टम व्यवस्थापक हूं और एक बुरी तरह से कॉन्फ़िगर किए गए सर्वर में फेंक दिया गया था। अपने रिफैक्टरिंग के बीच में मैं उपयोगकर्ताओं को अपनी /etc/sudoersफ़ाइल में शामिल कर रहा था । मुझे लगता है कि गलती से मेरे सर्वर व्यवस्थापक खाते को sudoers फ़ाइल एक्सेस से हटा दिया गया है।

मुझे पता है कि मैंने क्या गलत किया (मैंने गलती से %adminरेखा से टिप्पणी की ) सवाल किया जा रहा है, मैं कुछ भी पुनः आरंभ किए बिना फ़ाइल में अपने सर्वर व्यवस्थापक पहुंच को कैसे बहाल कर सकता हूं।

यहाँ है कि यह अभी कैसे दिखता है:

##
## User privilege specification
##
root ALL=(ALL) ALL
#%admin  ALL=(ALL) ALL
%superuser ALL=(ALL) ALL
"user1" ALL=(ALL) ALL
"user2" ALL=(ALL) ALL

यह भी ध्यान दें कि मेरे उपयोगकर्ताओं के पास sudoकिसी कारण से अनुमति नहीं है :

Realtor-Station-3-27:~ user1$ sudo -i

WARNING: Improper use of the sudo command could lead to data loss
or the deletion of important system files. Please double-check your
typing when using sudo. Type "man sudo" for more information.

To proceed, enter your password, or type Ctrl-C to abort.

Password:
user1 is not in the sudoers file.  This incident will be reported.
Realtor-Station-3-27:~ user1$ 

4
एकल उपयोगकर्ता मोड में बूट और फ़ाइल :-) ठीक
nohillside

जवाबों:


5

यदि आपके पास खोजक और एक सिस्टम व्यवस्थापक खाता है, तो आप इनका लाभ उठाकर इसे रिबूट के बिना ठीक कर सकते हैं।

अपने खोजक को खोलें और जाएं /etc। यहाँ, आप sudoers फ़ाइल का विवरण देख सकते हैं, जिसमें अनुमतियाँ - स्क्रीनशॉट नीचे दी गई हैं।

स्क्रीनशॉट जहां खोजक में sudoers फ़ाइल पर अनुमतियाँ बदलने के लिए दिखा रहा है

"सभी" के लिए अनुमतियों को यहां पढ़ें और लिखें को बदलें।

इस समय, आप किसी भी टेक्स्ट एडिटर के साथ फाइल में वापस एडिट कर सकते हैं। सूडो से पहले आपको "सभी" के लिए "एक्सेस" पर वापस जाना होगा sudo


मुझे यह उत्तर CLI पर करने से अधिक उपयोगी लगा।
क्विक

3

एक बार जब आप चीजों को फिर से काम करना शुरू करते हैं, तो आपको यह सुनिश्चित करना चाहिए कि ये लाइनें आपकी /etc/sudoersफ़ाइल के नीचे मौजूद हैं :

## Read drop-in files from /private/etc/sudoers.d
## (the '#' here does not indicate a comment)
#includedir /private/etc/sudoers.d

फिर सुनिश्चित करें कि आपके पास एक /etc/sudoers.d/निर्देशिका है। यह मेरा कैसा दिखता है:

> ls -ld /etc/sudoers.d
drwxr-xr-x 3 root wheel 96 Jul 31 20:59 /etc/sudoers.d/

अब आप प्रभावी रूप sudoersसे /etc/sudoers.d/फ़ोल्डर में एक नई फ़ाइल जोड़कर फ़ाइल में बदलाव कर सकते हैं । उदाहरण के लिए, मैंने अपना नाम दिया tjluomaइसलिए फ़ाइल /etc/sudoers.d/tjluoma( फ़ाइल नाम एक्सटेंशन की कमी को ध्यान में रखें, जो एक आवश्यकता प्रतीत होती है) में मेरे संशोधन हैं, sudoersलेकिन sudoअगर कोई सिंटैक्स त्रुटि है, तो मैं वैश्विक समस्याओं का जोखिम नहीं उठाता।

आप यह सत्यापित कर सकते हैं कि आपकी व्यक्तिगत sudoersफ़ाइल का उपयोग करके पढ़ा जा रहा है, sudo visudo -cजो उन सभी फ़ाइलों की सूची देगा, जो sudoयहां दिखाए गए हैं:

> sudo visudo -c
/etc/sudoers: parsed OK
/private/etc/sudoers.d/tjluoma: parsed OK

(ध्यान दें /private/etc/sudoers.d/और /etc/sudoers.d/उसी फ़ोल्डर को देखें।)

बेशक सबसे अच्छा तरीका करने के लिए परिवर्तन करने के लिए /etc/sudoersया अपने व्यक्तिगत sudoersफाइल के साथ है sudo visudoया sudo visudo -f /private/etc/sudoers.d/tjluomaक्योंकि यह संपादन / बचत की प्रक्रिया के हिस्से के रूप में वाक्य रचना की जाँच करेगा, लेकिन हम सभी शायद उस कदम 😀 का पालन नहीं कर का दोषी किया गया है

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