Jawaban:
Menambahkan Defaults editor=/path/to/editorfile sudoers akan menyebabkan visudo menggunakan editor yang ditentukan untuk perubahan.
Selain itu, jika paket sudo Anda telah dibuat dengan --with-env-editor, seperti default pada beberapa distribusi Linux, Anda juga dapat mengatur variabel lingkungan EDITOR dengan mengeksekusi export EDITOR=/path/to/editor. Dilakukan pada baris perintah, ini akan kembali segera setelah sesi shell diakhiri, pengaturan variabel dalam ~ / .bashrc atau / etc / profile akan menyebabkan perubahan berlanjut.
visudomenghormati $VISUALdan $EDITOR?
--with-env-editor, baru-baru ini di sini berarti dalam memori internet. Selain itu paket sudo mengubah default mereka beberapa waktu lalu untuk menggunakan vi sebagai editor default mereka yang saya percaya bertepatan dengan perubahan perilaku sehubungan dengan penerimaan variabel lingkungan. Saya tidak memiliki garis waktu yang jelas tentang bagaimana, kapan, atau jika peristiwa-peristiwa ini berhubungan satu sama lain saat ini.
Pengikut
alternatives(awalnya hanya Debian dan forks-nya, tetapi sekarang sebagian besar distro, IIUC).memiliki kelebihan itu
sudoersterlebih dahulu dengan editor default-nyasudotelah tidak dibangun dengan--with-env-editorDari baris perintah:
sudo update-alternatives --config editorsudo visudo sekarang harus membuka editor pilihan Anda.
Program unix normal yang ingin memohon editor akan menjalankan program yang namanya ada dalam variabel lingkungan EDITORatau VISUAL, dan jika variabel tidak disetel, default yang bergantung pada sistem. Banyak, tetapi tidak semua, program memeriksa keduanya EDITORdan VISUAL; perbedaannya sudah lama usang (sekali Anda akan menjalankan EDITORpada teletype dan VISUALpada terminal "kaca" ...) sehingga Anda harus mengatur keduanya ke nilai yang sama. Ada beberapa ketidaksepakatan tentang apakah konten variabel harus path lengkap ke file executable, nama executable yang dicari $PATH, atau potongan shell, jadi Anda harus tetap berpegang pada path ke file executable yang tidak mengandung metacharacter shell. Sistem default ketika variabel tidak diatur secara tradisionalvi, meskipun beberapa distribusi telah mengubah ini menjadi editor yang lebih ramah bagi pemula seperti nano.
visudomemeriksa keduanya VISUALdan EDITOR(ini dapat dikompilasi, mungkin untuk mencegah root dari menggunakan editor yang keamanan pembuat distribusinya tidak percaya, tetapi bahkan OpenBSD tidak melakukan ini).
Langkah-langkah ini izinkan saya mengatur editor ke vi untuk visudo pada Ubuntu 12.04, mereka mungkin bekerja untuk sebagian besar distribusi:
Perintah masalah:
sudo visudo
Ini membuka file sudoers di nano. Di dekat bagian atas Anda akan melihat baris ini:
Defaults env_reset
Tambahkan baris berikut di bawah baris di atas:
Defaults editor=/usr/bin/vi
Simpan file dan keluar. Buka kembali visudo sebagai pengguna default Anda:
sudo visudo
File sudoers sekarang terbuka di VI.