それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

Ubuntuのvisudoエディタが変nanoになる

ubuntuのvisudo のエディタがnano になってしまう。visudo って書いてあるのにnanoが起動する。viXXXってコマンドでnano起動するの何なの。と思ったりした。
環境変数EDITORで何とかなることもあるんだけど,毎回やるのも面倒だしアップデートかかる度に書き戻されることがある気がする.

ちゃんと解決する

標準のコマンドエディタは alternativesという機構で管理されている.altenativesは同様のソフトウェアがあるとき、どれを使うかを事前決定しておく機構。たとえばJavaで使われるSun JavaJDKにするか Open JavaJDKにするか。とか。

sudo update-alternatives --config editor #alternativesでeditorを更新するコマンド

じっさいやってみた

エディタを変更してみると複数の候補があるのが分かる.

takuya@atom:~$ sudo update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                優        Status
------------------------------------------------------------
* 0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
  3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

Press enter to keep the current choice[*], or type selection number: 3


通常vimに設定。 nano の良さが正直分からない

設定が変わったことを確認
takuya@atom:~$ sudo update-alternatives --config editor
There are 4 choices for the alternative editor (providing /usr/bin/editor).

  Selection    Path                優        Status
------------------------------------------------------------
  0            /bin/nano            40        auto mode
  1            /bin/ed             -100       manual mode
  2            /bin/nano            40        manual mode
* 3            /usr/bin/vim.basic   30        manual mode
  4            /usr/bin/vim.tiny    10        manual mode

Press enter to keep the current choice[*], or type selection number:

そのほかの解決方法

visudo する際に,環境変数EDITORを指定して起動する

EDITOR=/usr/bin/vi visudo

または

環境変数EDITORを設定して起動する

export EDITOR=/usr/bin/vim;sudo visudo

但し、環境変数を使う方法は,alternativesが動いてるときはうまく出来なかった

alternativesは実際にはsynlink

alternativesは/etc/alternativesにあるショートカットで管理されている.詳しくはそのうちエントリに書きます.