這裡介紹如何在 Linux 環境中設定好預設的編輯器,讓 visudo 等指令可以使用自己習慣的編輯器。

在 Linux 中使用終端機在管理系統時,某些指令在執行時會需要配合一個文字編輯器來使用,讓使用者進行文字的修改之後,再繼續執行後續的動作,visudo 就是一個典型的例子,在執行該指令之後,就會開啟系統預設的編輯器,對 /etc/sudoers 進行編輯:

visudo-1

visudo 的畫面



在使用者修改設定並且存檔離開之後,visudo 就會自動更新系統上的狀態,讓新設定馬上生效。因為我的 Ubuntu Linux 系統上有另外安裝 vim-gnome,這裡 visudo 所呼叫的編輯器預設會使用 Vim,如果是在新安裝好的系統上,預設會是 nano

雖然每個編輯器都可以使用,但是大家通常都會喜歡使用自己習慣的那一個,我們可以透過 EDITOR 這個環境變數來指定要使用的編輯器:

sudo EDITOR=nano visudo

如果要更改系統預設的編輯器,可以執行:

sudo update-alternatives --config editor

這時候它會列出系統上所有可以使用的編輯器:

替代項目 editor(提供 /usr/bin/editor)有 5 個選擇。

  選項       路徑              優先權  狀態
------------------------------------------------------------
* 0            /usr/bin/vim.gnome   60        自動模式
  1            /bin/ed             -100       手動模式
  2            /bin/nano            40        手動模式
  3            /usr/bin/vim.basic   30        手動模式
  4            /usr/bin/vim.gnome   60        手動模式
  5            /usr/bin/vim.tiny    10        手動模式

按 [enter] 保留目前選項 [*],或輸入選項編號:

接著輸入想要選擇的編輯器編號就可以了。

參考資料:askubuntustackexchangestackexchange