RStudioがどうしても起動しなかった件
アクセス権限の問題
公式ホームページからRStudioをダウンロードしてインストール、普通ならどうということのない作業だ。
ところが、これが大変な事になった。うちには2台のApple Silicon MacBook Proがある。一台では何の問題もなく起動できるのに、もう一台では何をどうやってもダメ。
解決方法の糸口はコンソールにあるsystem.logだ。(myaccountはUsers以下に表示されているログイン名に置き換えること)
Aug 17 01:56:54 MyMacBook-Pro rsession-myaccount[23108]: ERROR system error 13 (Permission denied) [path: /Users/myaccount/.local/share/rstudio, target-dir: ]; OCCURRED AT Error rstudio::core::FilePath::createDirectory(const std::string &) const src/cpp/shared_core/FilePath.cpp:848; LOGGED FROM: int main(int, char *const *) src/cpp/session/SessionMain.cpp:2261
つまり自分の.local/shareディレクトリ内にrstudioディレクトリをアクセス権限の問題で作れない事が原因だった。
対策はrstudioディレクトリを作ってやり、アクセス権限を付与してあげることだ。
sudo mkdir -p /Users/myaccount/.local/share/rstudio
sudo chown -R myaccount:staff /Users/myaccount/.local/share/rstudio
chmod -R 755 /Users/myaccount/.local/share/rstudio
ちなみにR, RStudioはインストールしたままでOK。
R, RStudioインストール時のベストプラクティス
RやRStudioをインストールする時、あちこちに付録ファイルを生成する。brewでインストールした方がいい。アンインストールが楽になるからだ。
macOSアプリとしてインストールするためには–caskオプションをつけるといい。
brew install --cask r
brew install --cask rstudio
アンインストール時は
brew uninstall --cask r
brew uninstall --cask rstudio
のようにする。RやRStudioのインストーラにはアンインストールの機能がないのである。Windowsでよく見かけるインストーラにはアンインストールの機能がついている事が多いのに対し、こちらのインストーラは片方行のみだ。生成したファイルを削除するには手作業が必要になる。
まとめ
今回はRStudioだったが、他のアプリケーションの場合でも不具合があればコンソールでsystem.logを見てみるのは常套手段として記憶した方がいい。
macOSやUbuntuなど〇〇X系のOSでは権限の問題が不具合を生じさせる事がある、と記憶しておくこと。ちなみにiOSやAndroidも〇〇X系のOSである。