楽しみにしていた「macOS Catalina」にアップデート。
あれっ、、アップデートしたらAnacondaが使えなくなってる。。。
そんな方への対処法をまとめました。
なんで使えなくなった
Catalinaではルートディレクトリへの書き込みをセキュリティ上推奨しないようです。
一方、Anacondaはディフォルトではルートに生成されています。
OSアップグレードの際にルートディレクトリから丸ごと移動されてしまうため、使えなくなってしまいます。
追い出されたanacondaは以下に移動されています。
/Users/Shared/Relocated Items/Security/anaconda3
デスクトップにエイリアス「場所が変更された項目」が生成されているのでそちらからも辿れます。
#対応方法
詳しくは以下の海外サイト、こちらを参考にしました。
https://superuser.com/questions/1456518/anaconda-not-working-in-mac-catalina
##対応Step
1 追い出されたanacondaディレクトリをホームディレクトリに移動
#追い出されたanaconda
/Users/Shared/Relocated Items/Security/anaconda3
#ホームディレクトリに移動
/Users/[your_user_name]/anaconda3
2 condaを使用可能にする
#binディレクトリに移動
cd /Users/[your_user_name]/anaconda3/bin/
#condaファイルのshebangを変更
vi conda
#1行目
#!/anaconda3/bin/python
#↓以下に変更
#!/Users/[your_user_name]/anaconda3/bin/python
#condaファイルを保存
3 condaの初期化
初期化することで、依存ファイルが最適化され、shellにanacondaのパスが通ります。
conda init bash (conda init zsh)
#(catalinaのディフォルトshはzsh。私は取り急ぎbashでしましたが、zsh移行済みの方は、zshで初期化してください)
#以下のステータスが走ります。
modified 〜〜〜
・・・
・・・
==> For changes to take effect, close and re-open your current shell. <==
4 確認
~/.bash_profileにパスを通す記述が自動追記されます。
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
#<パスを通すコマンドが自動記述される>
unset __conda_setup
# <<< conda initialize <<<
5 読み込み、正常使用を確認
terminalを再度立ち上げるか、
source ~/.bash_profile
で設定を再読み込み。
これでエラーがなければ、anacondaは正常に使えるようになっていると思います。
anaconda経由のpythonや、ライブラリ、condaも使用できるようになります。
まだ、Catalinaがリリースされてから日が浅いので、一部不具合の可能性もあります。心配な方は少し経ってからの移行をおすすめします。
6 anaconda-navigatorの対応
私はanaconda-navigatorを利用してませんが、参考サイトに対応方法ありましたので、ついでに対応してみました。
- anacondaディレクトリに移動
/Users/[your_user_name]/anaconda3/ - Anaconda-Navigator.app を右クリック
パッケージの内容を表示を選択 - Contents/MacOS/run.sh を開く
- 以下の部分を全て書き換える
#変更前
/anaconda3
↓
#変更後
/Users/[your_user_name]/anaconda3
ファイルを保存する。
これで「Anaconda Navigator」は使用できるようになりました。
7 番外
私の場合は、「jupyter notebook」も使えなくっていました。
以前、conda経由でインストールしたのですが、今回のOSアップグレードに関係あるかもしれません。
私の場合ですが、アップグレードしたら使えるようになりました。
#conda自体をアップデート
conda update conda
#jupyter notebookのアップデート
conda update jupyter
ただ、環境により人それぞれ対応方法は異なるかもしれません。
# 追伸
試してないけど、違うやり方です。
https://medium.com/@justinaugust/upgrading-to-osx-catalina-as-an-anaconda-user-2e71db194764
ざっくりこんな方法みたいです。
- セキュリティディレクトリに避難された、anacondaディレクトリをホームディレクトリに移動するのは同じ。
- anacondaの公式ページからダウンロードインストーラーをダウンロード
- Terminalで インストール作業
./<name of anaconda installer> -u
ホームディレクトリを指示してanaconda3をインストール
要はインストールすることで設定を上書きするやり方のようです。
おわりに
以上、macOS Catalinaを入れた際のAnacondaの対応方法をまとめてみました。
OSリリースしてまだ日が浅いこともあり、まだ他の不具合が出てくる可能性もありますが、
ひとまず私の環境ではAnaconda/pythonは使えております。
稚拙なまとめでしたが、みなさんのお力になれると幸いです。