كيف تكتسب امتيازات الجذر في بيثون عبر سوود رسومية؟

StackOverflow https://stackoverflow.com/questions/4112737

  •  29-09-2019
  •  | 
  •  

سؤال

جزء من برنامج بيثون يحتاج إلى وصول المسؤول. كيف يمكنني الحصول على امتيازات الجذر باستخدام نافذة نافذة على واجهة المستخدم الرسومية مماثلة ل gksudo يأمر؟

أحتاج فقط إلى امتيازات الجذر لجزء صغير من برنامجي ، لذا سيكون من الأفضل فقط الحصول على امتيازات لوظيفة معينة.

آمل أن أتمكن من فعل شيء مثل:

gksudo(my_func, 'description of why password is needed')
هل كانت مفيدة؟

المحلول

لديك خياران فقط:

ستحتاج إلى جعل جزء البرنامج الذي يتطلب امتيازات الجذر ملفًا منفصلًا ثم تنفيذ الملف مثل هذا:

>>> import subprocess
>>> subprocess.call(['gksudo','python that_file.py'])

والتي ستجلب موجه كلمة المرور وتشغيل That_file.py كجذر

قد تتطلب أيضًا تشغيل البرنامج كجذر من البداية وجعل نوع مستخدم البرنامج فقط "gksudo python your_program.py" في سطر الأوامر من البداية والذي من الواضح أنه ليس أفضل فكرة إذا تم إطلاق برنامجك عادة قائمة.

نصائح أخرى

يمكن استخدام Gksudo لإطلاق برامج تعمل بامتيازات المسؤول. يجب أن يكون جزء من التطبيق الذي يحتاج إلى الجذر ، قادرًا على التذرع كعملية منفصلة عن سطر الأوامر. إذا كنت بحاجة إلى شكل من أشكال الاتصال بين الاثنين ، فيمكنك استخدام المقابس أو مراقبة ملف ، إلخ.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top