起因
安裝好了opencv 3.4.9 c++版本,發現cmake找到的是Anaconda中的opencv(我很久之前裝的)
然後切換到root想去conda中把其中的opencv給刪掉,結果運行conda
的命令,只顯示[y/N]。沒有截圖,例如:
root@ubuntu:~ conda remove opencv
[y/N]
沒有看懂,y和N都按過一遍了。然後查資料,發現是.condarc出問題了,刪了就可以正常刪除了。但是,刪完opencv後,突然發現python版本從3.6變到了3.8,而且執行conda
命令,顯示ModuleNotFoundError: No module named 'conda'
:
恢復
- 到這裏下載對應平臺的conda(.exe文件,我選擇的是
conda-4.7.11-linux-64.exe
),重命名爲conda-exec
,並賦予執行權限:
wget -O conda-exec https://repo.anaconda.com/pkgs/misc/conda-execs/conda-4.7.11-linux-64.exe
chmod +x conda-exec
- 將Anaconda的路徑臨時添加到環境變量
CONDA_ROOT_PREFIX
。我的路徑是/opt/anaconda3
:
export CONDA_ROOT_PREFIX=/opt/anaconda3
- 運行命令看能否正常輸出:
./conda-exec info
注意查看base environment
後面跟的應該爲你的anaconda路徑,並且有**(writable)**;package cache
後面爲正確的pkg
路徑
- 查看conda的歷史變動記錄:
./conda-exec list -n base --revisions
找一個除了最新以外的歷史變動記錄編號(rev後面的那個數字),我這裏選擇的是11
- 恢復:
#revision 後面跟上一步找到的編號
./conda-exec install -n base --revision 11
- 打開一個新的shell,查看
conda
是否恢復正常。如果正常表示成功了,可以刪掉conda-exec
。
沒有成功,可以參考這個網頁