Macのアカウント名とホームディレクトリ名変えたらいろいろ大変だった
もう3年くらい使っているMacbookのユーザー名(とホームディレクトリの名前)が本名のままで、
なんとなく嫌だし変えたいな〜と思ったので、公式を参考に変えてみた
そしたらいろいろと大変だった。
大変なことその1:そもそもうまく変更ができない
公式を見ながらやっていたのに、変更できているのではなく新しいユーザーができてしまっていてめちゃくちゃ焦った。
ので、他の人のブログを参考にやってみたらできた。
参考にしたのはこちら↓
違いとしては、こちらの方のブログでは、公式で紹介されている作業にプラスして
FinderでUserフォルダの名前を直接変更している点。
私も直接いじったら無事に変更できました。
OSが古いのがいけないのかな?でもSierraなんですけどね。
大変なことその2:シェルのカスタマイズがもとに戻ってしまった
私はzshを使っていて、かつPreztoっていうライブラリを使ってカスタマイズしているんですが
これのシンボリックリンクが古いユーザー名のパスのままで、設定ファイルが反映されていなかったというのが原因。
$ ls -al
すると
lrwxr-xr-x 1 user-name staff 45 7 22 15:04 .zlogin -> /Users/user-name/.zprezto/runcoms/zlogin lrwxr-xr-x 1 user-name staff 46 7 22 15:04 .zlogout -> /Users/user-name/.zprezto/runcoms/zlogout drwxr-xr-x 10 user-name staff 340 2 13 2017 .zprezto lrwxr-xr-x 1 user-name staff 48 7 22 15:04 .zpreztorc -> /Users/user-name/.zprezto/runcoms/zpreztorc lrwxr-xr-x 1 user-name staff 47 7 22 15:04 .zprofile -> /Users/user-name/.zprezto/runcoms/zprofile lrwxr-xr-x 1 user-name staff 45 7 22 15:04 .zshenv -> /Users/user-name/.zprezto/runcoms/zshenv lrwxr-xr-x 1 user-name staff 44 7 22 15:04 .zshrc -> /Users/user-name/.zprezto/runcoms/zshrc
こんな感じで、シンボリックリンクが張られているのがわかる。
なので、新しく張り直す。
$ ls -nfs /Users/new-user-name/.zprezto/runcoms/zpreztorc .zpreztorc
みたいな感じで、ひとつずつ変えていけばOK。
大変なことその3:ライブラリなどの参照先パスが古いままなので動かない
変更後、rails s
しようとしたらそんなコマンドねえぞって怒られていて、よく見たら古いユーザー名でのパスがエラー文に表示されていた。
これ多分もうrbenvに限った話ではなくて、今ここだけ直してもこの先エラーのたびに修正し直すのを何回もやらないといけないんだなと思って絶望しました。。
古いユーザー名でgrepしたらめちゃくちゃたくさん出てきたし、もうもとに戻そうって決めた…
ちなみに一括で置換する方法もあるみたいだけど、失敗すると多分死にたくなると思います。
まとめ
という感じで、ホームディレクトリやユーザー名は軽率に変更しないほうがよいということを学びました。
特に開発者とか、外部からライブラリなんかを持ってきて使う人はやめたほうがいいですね。
そういうの全部$HOME
とかシェル変数でできればいいんだけどなあ。