मैं अपने पासवर्ड के साथ सूडो को पैरामीटर के रूप में चलाना चाहूंगा ताकि मैं इसे स्क्रिप्ट के लिए उपयोग कर सकूं। मैंने कोशिश की
sudo -S mypassword execute_command
लेकिन बिना किसी सफलता के। कोई सुझाव?
मैं अपने पासवर्ड के साथ सूडो को पैरामीटर के रूप में चलाना चाहूंगा ताकि मैं इसे स्क्रिप्ट के लिए उपयोग कर सकूं। मैंने कोशिश की
sudo -S mypassword execute_command
लेकिन बिना किसी सफलता के। कोई सुझाव?
sudo
ठीक से कॉन्फ़िगर करने के लिए बेहतर है कि यह ऐसे गंदे हैक से बचने के लिए कुछ प्रोग्राम / उपयोगकर्ता / समूह के लिए पासवर्ड नहीं पूछेगा।
जवाबों:
-S स्विच सूडो को STDIN से पासवर्ड पढ़ने देता है। इसका मतलब है आप कर सकते हैं
echo mypassword | sudo -S command
पासवर्ड को पास करने के लिए
हालाँकि, दूसरों के सुझाव जो पासवर्ड को कमांड के एक हिस्से के रूप में शामिल नहीं करते हैं जैसे कि यदि उपयोगकर्ता रूट है, तो सुरक्षा कारणों से शायद बेहतर विचार हैं
sudo chmod -R 0100 myScriptFolder
:? क्या यह सुरक्षा समस्याओं को हल नहीं करेगा (बशर्ते कोई आपके कंप्यूटर को रूट के रूप में उपयोग न करे लेकिन आप)?
आप s
अपनी स्क्रिप्ट के लिए बिट सेट कर सकते हैं ताकि इसकी आवश्यकता न हो sudo
और रूट के रूप में चलता रहे (और आपको स्क्रिप्ट में अपना रूट पासवर्ड लिखने की आवश्यकता नहीं है):
sudo chmod +s myscript
+s
बिट है। +t
चिपचिपा सा है।
echo -e "YOURPASSWORD\n" | sudo -S yourcommand
echo -e "YOURPASSWORD\n" | sudo -S "run -x"
। यह कहता है sudo: run -x: command not found
। किसी भी विचार कैसे इस के आसपास पाने के लिए?
एक विकल्प है- ए फ्लैग टू सूडो का उपयोग करना। यह पासवर्ड पूछने के लिए एक कार्यक्रम चलाता है। पूछने के बजाय, आपके पास एक स्क्रिप्ट हो सकती है, जो पासवर्ड को बाहर निकालती है ताकि प्रोग्राम जारी रह सके।