मैं एक ऐसा एप्लिकेशन लिख रहा हूं जिसके लिए रूट उपयोगकर्ता विशेषाधिकार निष्पादित करने की आवश्यकता है। अगर एक गैर जड़ उपयोगकर्ता द्वारा निष्पादित, यह बाहर निकल जाता है और इस तरह के रूप में एक perror संदेश के साथ समाप्त हो जाता है:मेरा सी/सी ++ एप्लिकेशन कैसे निर्धारित कर सकता है कि रूट उपयोगकर्ता कमांड निष्पादित कर रहा है या नहीं?
pthread_getschedparam: Operation not permitted
मैं आवेदन अधिक उपयोगकर्ता के अनुकूल बनाने के लिए करना चाहते हैं। प्रारंभिक प्रारंभिकरण के हिस्से के रूप में मैं यह जांचना चाहता हूं कि इसे रूट द्वारा निष्पादित किया जा रहा है या नहीं। और यदि रूट नहीं है, तो यह एक संदेश प्रस्तुत करेगा जो इंगित करता है कि यह केवल रूट द्वारा चलाया जा सकता है, और फिर समाप्त हो सकता है।
आपकी मदद के लिए अग्रिम धन्यवाद।
आमतौर पर हम इसके विपरीत चिंतित हैं: कितने प्रोग्राम रूट होने और विशेषाधिकार छोड़ने के बारे में चेतावनी देते हैं, उन्हें कोड को अधिक सुरक्षित रूप से चलाने की आवश्यकता नहीं है? – ShinTakezou