2006-02-13
_ .viminfo のエラー
ここ最近,sudo で vim 使って編集したあとに,終了しようとすると以下のようなメッセージが表示されるようになった.
E138: Can't write viminfo file $HOME/.viminfo! Hit ENTER or type command to continue
$HOME に .viminfo はあるし,権限の問題でもない.どうしたものかと困っていたのですが,zt日記で,この辺の現象についてかかれていました.このエラーの原因としては,DSA-946-1 sudo -- missing input sanitising の対応によるものらしく,環境変数 $HOME がないことから生じるものでした,sudo env を実行してみると,確かに環境変数 $HOME がありません.
解決策としては,sudo での vim 実行時に,
$ sudo -H vim
と,実行することで,このエラー表示を回避することができます.毎回これを指定するもの面倒なので,エイリアスを作成することにしときました.