Cara membuka GUI dengan izin sudo tanpa perubahan tema di sudo dan dari file .desktop

Apr 15 2020

TL, DR: Saya ingin dapat meluncurkan aplikasi GUI dengan hak akses root melalui klik ganda pada file .desktop, dan dengan mempertahankan tema non-sudo way yang baik (relatif terhadap cara sudo).


Saya telah melihat pertanyaan / jawaban terkait di sini, namun, saya tidak dapat mengatakan bahwa saya memahami situasinya dan menemukan solusi. Entah mereka tidak terstruktur dan eksploratif dengan baik, atau saya tidak mengerti. ATAU kebanyakan dari mereka menyebutkan gksu, namun, sejauh yang saya mengerti, gksutelah dihapus dari repositori. Saya tidak dapat menginstalnya.

Tangkapan layar dapat ditemukan seperti terlampir di akhir pertanyaan.

Saya sadar ini akan menjadi pertanyaan yang berantakan, mohon maaf.


Sekarang, saya memiliki program Quartus terinstal di komputer saya, dan saya dapat menjalankannya melalui (SISI KIRI SCREENSHOT):

/home/muyustan/altera/13.1/quartus/bin/quartus --64bit

Saya juga telah membuat .desktopfile sebagai berikut:

[Desktop Entry]
Type=Application
Version=0.9.4
Name=Quartus II 13.1 (64-bit) Web Edition
Comment=Quartus II 13.1 (64-bit)
Icon=/home/muyustan/altera/13.1/quartus/adm/quartusii.png
Exec=/home/muyustan/altera/13.1/quartus/bin/quartus --64bit
Terminal=false
Path=/home/muyustan/altera/13.1

Sejauh ini bagus, saya dapat menjalankannya melalui entri desktop, tidak ada jendela terminal yang muncul dan berhenti di sana (cukup menjengkelkan). Semuanya baik-baik saja.

Namun, saya tahu bahwa dalam bagian dari aplikasi Quartus, ia harus membuka (panggilan) program lain (Modelsim) dan menyimpan beberapa file ke beberapa tempat dll Masalahnya adalah, jika saya tidak meluncurkan aplikasi dengan sudodi di depannya (SISI KANAN SCREENSHOT), saya mendapatkan beberapa kesalahan yang menyatakan permission denieddan hal-hal tidak berfungsi.

Jadi, saya bisa menyelesaikan ini dengan mengubah kebiasaan peluncuran saya,

from -- double click on the desktop entry

to -- Ctrl+Alt+T -> sudo [executablePath] -> enter password

Sekarang, jelas saya tidak akan menginginkan ini karena dua alasan utama.

  1. Butuh waktu lebih lama.
  2. Terminal itu tetap di sana selama aplikasinya terbuka.

Dan tepat pada titik ini muncul alasan (bonus) ke-3, seperti yang mungkin Anda perhatikan atau tidak perhatikan dari tangkapan layar, diluncurkan dengan sudomembuat tema GUI tampak seperti, yah, gaya Windows XP ... Saya belum memilih / mengubah tema apa pun ketika saya pertama kali menginstal Quartus atau lebih, omong-omong.

Jadi, saya harap saya menjelaskan maksud saya.

Terima kasih sebelumnya.


Pembaruan untuk pertanyaan

Setelah permintaan seseorang di komentar, lihat kesalahan yang saya dapatkan di aplikasi yang dipanggil (diluncurkan dari dalam Quartus), Modelsim:

do temp1_run_msim_rtl_verilog.do 
# if {[file exists rtl_work]} {
#   vdel -lib rtl_work -all
# }
# ** Error: (vdel-19) Failed to access library 'rtl_work' at "/home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work".
# Permission denied. (errno = EACCES)
# ** Error: /home/muyustan/altera/13.1/modelsim_ase/linux/vdel failed.
# Error in macro ./temp1_run_msim_rtl_verilog.do line 4
# /home/muyustan/altera/13.1/modelsim_ase/linux/vdel failed.
#     while executing
# "vdel -lib rtl_work -all"
#     invoked from within
# "if {[file exists rtl_work]} {
#   vdel -lib rtl_work -all
# }"

Jawaban

1 user.dz Apr 15 2020 at 17:55

Pengguna mendapatkan pesan kesalahan ini:

# ** Error: (vdel-19) Failed to access library 'rtl_work' at "/home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work".
# Permission denied. (errno = EACCES)

Dari penggunaan sudo, saya berharap beberapa folder / file dibuat dengan tingkat hak akses root.

  1. Kami membuat daftar seluruh pohon di folder "altera" untuk memverifikasi kepemilikan dan izin. Menggunakan:

    find /home/muyustan/altera -type d -exec stat -c '%A %G %U %n' {} \; > log.txt
    
  2. Cari folder itu temp1atau pengguna / grup root, karena Anda bisa melihat ada folder yang dimiliki oleh root

    drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/simulation/qsim/work/up_counter
    drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/simulation/qsim/work/prime_detector_4bits_vlg_check_tst
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work/_temp
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work/up_counter_tb
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/qsim/rtl_work/up_counter
    drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/simulation/modelsim
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/gate_work
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/gate_work/prime_detector_4bits
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/gate_work/_temp
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/rtl_work
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/rtl_work/_temp
    drwxr-xr-x root root /home/muyustan/altera/13.1/temp1/simulation/modelsim/rtl_work/up_counter
    drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/db
    drwxrwxr-x muyustan muyustan /home/muyustan/altera/13.1/temp1/incremental_db
    
  3. Ubah kepemilikan folder altera itu dan semua folder anak dan file di dalamnya ke pengguna dan grup Anda.

    sudo chown -R muyustan:muyustan /home/muyustan/altera
    

Coba lagi menjalankan Quartus tanpa sudo