जवाबों:
suएक नहीं है उपयोगकर्ता यह कार्यक्रम एक कमांड को क्रियान्वित की तुलना में किसी अन्य उपयोगकर्ता का एक वैकल्पिक पहचान के अंतर्गत बाद आदेशों / कार्यक्रमों को चलाने के लिए। यह sudoउस संबंध में बहुत समान है ।
जब तक किसी अन्य उपयोगकर्ता को निर्दिष्ट नहीं किया जाता है तब तक दोनों कमांड उपयोगकर्ता की वैकल्पिक पहचान के तहत कमांड चलाने के लिए डिफ़ॉल्ट होंगे root, सुपरयूजर / प्रशासक।
के बीच मुख्य अंतर suऔर sudoवह यह है कि:
su आपको उस वैकल्पिक उपयोगकर्ता का पासवर्ड जानना होगा, जहांsudosudoकमांड चलाने वाले उपयोगकर्ता के पासवर्ड के लिए संकेत देगा और सेटअप की आवश्यकता होगी ताकि उपयोगकर्ता को अनुरोधित कमांड / प्रोग्राम चलाने की अनुमति हो।(जब या rootतो रन चाहिए या पासवर्ड की आवश्यकता नहीं है।)susudo
किसी भी init स्क्रिप्ट की तरह, /etc/rc.localस्क्रिप्ट द्वारा निष्पादित किया जाता है rootउपयोगकर्ता और आप आगे जोड़ते या तो ज़रूरत नहीं है suया sudoकि जरूरत रूट के रूप में चलाने के लिए आदेशों / कार्यक्रमों के लिए।
तुम अब भी उपयोग करना पड़ सकता है suया sudoअपने init स्क्रिप्ट में उन आदेशों क्रियान्वित किया जा करने की आवश्यकता है के रूप में नहींroot , लेकिन अन्य उपयोगकर्ता / सेवा-खाता ...
su -oracle/do/something/as/oracle/user
हां, सभी लिपियों और कार्यक्रमों को सीधे रूट द्वारा बुलाया जाता है।
/etc/rc.localफ़ाइल init प्रक्रिया के द्वारा सीधे कहा जाता है।
sudoआदेशों से पहले जोड़ने की आवश्यकता नहीं है /etc/rc.local?