Ada dua Q & As yang berbeda di stackoverflow menjawab pertanyaan Anda: di sini dan di sini .
Kedua jawaban menggunakan perintah gksudo
(sudah disebutkan oleh @khamer). Jika Anda menjalankan gksudo command
(juga tanpa python) pada dasarnya akan melakukan apa yang sudo
dilakukan, tetapi dengan antarmuka grafis - yaitu meminta kata sandi pengguna dan kemudian menjalankan perintah sebagai root jika pengguna berada dalam file sudoers.
Untuk mengimplementasikan solusi yang disarankan dari jawaban yang ditautkan dalam python, Anda dapat menggunakan sesuatu seperti yang ditunjukkan oleh contoh berikut:
Buat file run.py
:
#!/usr/bin/python
import subprocess
subprocess.call(['gksudo','python create.py'])
Dan sebuah file create.py
:
#!/usr/bin/python
# Create test file..
f = file("mytestfile", "w")
Kemudian jalankan python run.py
dan setelah Anda memasukkan kata sandi Anda, sebuah file yang dimiliki oleh root akan dibuat. Jika Anda menjalankannya, python create.py
itu akan menjadi milik Anda (file tersebut seharusnya tidak ada sebelum menjalankan skrip).