नोट: मैं उत्तर दे रहा हूँ 1. , क्योंकि इग्नासियो ने पहले ही उत्तर दिया था 2 .।
निम्नलिखित sudoप्रविष्टि में:
superadm ALL=(ALL) ALL
चार क्षेत्र हैं:
- पहला एक उपयोगकर्ता निर्दिष्ट करता है जिसे कुछ आदेशों के लिए विशेषाधिकार प्रदान किए जाएंगे।
- दूसरा शायद ही कभी इस्तेमाल किया जाता है। यह उन होस्टनामों की सूची है, जिन पर यह सुडोल प्रविष्टि प्रभावी होगी। मानक सेटअप पर केवल एक होस्ट प्रासंगिक है (लोकलहोस्ट) इसलिए यह फ़ील्ड आमतौर पर छोड़ दी जाती है
ALL।
- चौथे क्षेत्र कमांड की सूची है
superadmऊपर उठाया विशेषाधिकारों के साथ चलाने के लिए सक्षम हो जाएगा। ALLसभी आज्ञाओं का अर्थ है। अन्यथा आदेशों की अल्पविराम से अलग सूची का उपयोग करें।
- तीसरा फ़ील्ड (एक लिखित
(…)जो वैकल्पिक है) निर्दिष्ट करता है कि कौन से उपयोगकर्ता (और समूह) superadmउपयोगकर्ता निम्न आदेशों को चलाने में सक्षम होंगे। ALLइसका मतलब है कि वे कुछ भी (अप्रतिबंधित) चुन सकते हैं। इस क्षेत्र को छोड़ दिया गया है, इसका मतलब उसी के समान है (root)।
उदाहरण:
alan ALL = (root, bin : operator, system) /bin/ls, /bin/kill
इधर, alanदो आदेशों को चलाने के लिए अनुमति दी है /bin/lsऔर /bin/killके रूप में root(या bin), संभवतः अतिरिक्त के साथ operatorया systemसमूहों विशेषाधिकार।
तो उपयोगकर्ता के रूप में और इस तरह के समूह विशेषाधिकारों के साथ alanचलाने का विकल्प चुन सकते हैं :lsbinoperator
sudo -u bin -g operator /bin/ls /whatever/directory
यदि -uछोड़ा गया है, तो यह उसी के समान है -u root। यदि -gछोड़ दिया जाता है, तो कोई अतिरिक्त समूह विशेषाधिकार प्रदान नहीं किए जाते हैं।