Baru-baru ini saya mulai mendapatkan "Tidak ada protokol yang ditentukan" saat menggunakan sudo vim
. Kurasa itu hanya peringatan, karena semuanya berjalan normal (saya bisa membuka, mengedit, dan menyimpan file). Pesan tidak muncul jika saya gunakan sudo -E vim
jadi saya pikir saya melakukan kesalahan saat mengedit /etc/profile
baru-baru ini, tapi saya tidak yakin. Bagaimana saya bisa memperbaikinya?
vim
sudo
environment-variables
phhehehe
sumber
sumber
Jawaban:
Pembaruan terkini mengubah pengaturan default untuk
sudo
. Jika ada yang punya masalah ini periksasudoer
konfigurasi Anda . Dari contoh di halaman manual:Pastikan Anda memiliki sesuatu seperti itu di
/etc/sudoers
(gunakanvisudo
untuk mengedit file jika Anda perlu).EDIT: Saya tidak tahu persis sejak kapan, tetapi setidaknya xauth 1.0.9 mendukung variabel lingkungan
XAUTHORITY
. Menyetel itu dan membiarkan HOME tidak tersentuh, juga memperbaiki peringatan protokol dan merupakan solusi yang lebih baik, karena tidak ada sumber daya IPC yang dapat ditulis (soket / pipa) yang dibuat mengarah ke sumber daya root (satu jalan untuk eskalasi hak istimewa). xauth tidak secara otomatis mengekspor variabel ke lingkungan, jadi cara terbaik adalah mengaturnya di inisialisasi shell Anda.sumber
Menurut utas ini , ada dua kemungkinan solusi untuk masalah Anda:
Anda juga dapat mencoba menjalankan via
gksudo
.Bagaimanapun, keduanya patut dicoba ...
sumber
.Xauthority
ke/root
dan hanya itu!Meskipun pertanyaan sudah memiliki beberapa jawaban, tidak ada yang berhasil untuk saya sepenuhnya. Saya menyelesaikannya melalui kombinasi beberapa saran di atas dan beberapa bagian saya untuk distro Debian saya.
Saya membuat symlink ke
.Xauthority
file untuk root dan semua pengguna lain. Masalah terselesaikan untuk pengguna root, karena root memiliki izin akses ke file itu, tetapi tidak untuk pengguna lain. Saya menambahkan izin baca-saja untuk semua pengguna lain untuk file .Xauthority.sumber