Saat itu hendak menjalankan installer program untuk bisa digunakan oleh semua user. Biasanya, installer akan memasang program di HOME Folder ketika dijalankan langsung. Tapi kalau ingin memasang program untuk semua user, installer harus dijalankan dengan hak akses superuser atau pakai sudo.
Saat menggunakan OpenSUSE Leap 15.1 KDE, muncul masalah, tidak bisa menjalankan GUI installer suatu program yang saya dapatkan dari internet. Errornya ketika dijalankan dengan sudo adalah No Protocol Specified
dan cannot open Display :0
.
Ternyata superuser saya (root) tidak punya hak akses untuk mengakses DISPLAY. Langkah pertama saya adalah menambahkan environment DISPLAY saat menjalankan installer dengan sudo:
sudo DISPLAY=:0 path/to/installer.sh
Namun masih tetap tidak bisa dijalankan. sekarang errornya berganti menjadi:
cannot open DISPLAY :0
Langkah kedua, saya menambahkan file .Xauthority
ke dalam folder /root
. Lalu mengedit file /root/.bashrc
dan mengisikan export XAUTHORITY=~/.Xauthority
.
Tapi juga belum membuahkan hasil 😦 (mungkin saya salah)
Langkah terakhir, menambahkan pam_xauth
ke dalam konfigurasi pam
di /etc/pam.d
. Ini adalah modul PAM, yang disediakan oleh paket pam_wrapper
, namun di mesin saya belum terpasang. Pasang dengan perintah:
sudo zypper in pam_wrapper
Lalu edit file /etc/pam.d/sudo
dan pastikan ada baris berikut dan tidak di-comment (hilangkan comment dengan menghapus tanda #
):
session optional pam_xauth.so
Simpan lalu restart komputer.
Sekarang, installer atau program GUI yang memerlukan akses sudo
bisa dijalankan dengan perintah sudo path/to/program
tanpa lagi mendapat pesan error No Protocol Specified
dan Cannot Open Display
.
Selamat bekerja!