ऑटो सूडो सू के बाद एक स्क्रिप्ट


2

मैं एक मशीन पर काम कर रहा हूं जिसमें कुछ उपयोगकर्ता खाते हैं जो गतिशील रूप से उत्पन्न होते हैं, और इसलिए मैं उपयोगकर्ता को अनुकूलित नहीं कर सकता हूं .bashrcया नहीं .profile

मुझे कुछ कॉन्फ़िगरेशन को बदलने के लिए अक्सर इन खातों का उपयोग करने की आवश्यकता होती है; ऐसा करने के लिए मैं sudo suउनमें शामिल हूं।

मेरा मुद्दा यह है कि मेरे उपयोगकर्ता खाते पर मैंने बहुत सारे उपनामों को कॉन्फ़िगर किया है जो कि मैं इस उपनाम के लिए मौजूद नहीं है, उन उपनामों के बारे में सोचने के बिना भी उपयोग करने के लिए आया हूं su

क्या कोई तरीका है, मेरे शेल से, एक विशिष्ट फ़ाइल को स्वचालित रूप से स्रोत करने के लिए जब मैं केवल suएक उपयोगकर्ता के लिए?

जवाबों:


2

आप बस --rcfile /path/to/scriptझंडे के साथ अपनी बैश शुरू कर सकते हैं । विशिष्ट होना, उपयोग करना

sudo -u $USER bash --rcfile /path/to/file

सुनिश्चित करें कि bash --rcfile /path/to/fileदोहरे उद्धरण चिह्नों द्वारा कवर न करें, क्योंकि यदि हां, तो sudo बैश कमांड नहीं ढूंढेगा।

आप एक फ़ंक्शन भी बना सकते हैं जिसमें उपयोगकर्ता पैरामीटर के रूप में हो $1


उन्होंने कहा, मैंने अभी यह कोशिश की है लेकिन यह काम नहीं कर रहा है। मैंने इसे दिए गए कमांड के साथ आजमाया, हालांकि मेरे पास वह उपयोगकर्ता नहीं है जिसे मैं बनने की कोशिश कर रहा हूं, मैं sudo का उपयोग कर रहा हूं। मैंने बिना किसी भाग्य के इस कमांड में सूडो को बहाने की कोशिश की। bash: cannot set terminal process group (-1): Inappropriate ioctl for device bash: no job control in this shell
मैट क्लार्क

1
ओह ... कोई खेद नहीं, आपके प्रश्न को अच्छी तरह से नहीं पढ़ा। यदि आप sudo का उपयोग करते हैं तो आपको बेहतर उपयोग करना चाहिए sudo -u $USER bash --rcfile /path/to/file। उस स्थिति में आप कार्य कर सकते हैं जैसेsudo -u $1 bash --rcfile /path/to/file
Schwertspize 16

बहुत बढ़िया। आप अपना उत्तर संपादित करने के लिए संपादन पर क्लिक करें , यह एक स्वीकार्य समाधान है।
मैट क्लार्क

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