ubuntu安装anaconda位置

ubuntu安装anaconda位置

conda 默认的虚拟环境存储在 home 目录下,但 home 目录预先分配的内存有限

du -ah ~ | sort -rh | head -20

之前已经移动过安装其他环境的位置-参考博客1参考博客2参考博客3
Conda base 环境安装在 /home/ros/Downloads/yes,而其他环境 (psmnet 和 yolov8) 在 /mnt/.conda/envs/,说明 base 环境占用了 Home 目录的大量空间

conda env list

移动 Anaconda 到 /mnt 释放 Home 目录空间

查看anaconda安装目录位置

which conda
conda info

移动 Anaconda 目录到更大存储空间

sudo mv /home/ros/Downloads/yes /mnt/anaconda3

修改 ~/.bashrc

gedit ~/.bashrc

找到以下 Conda 相关代码

__conda_setup="$('/home/ros/Downloads/yes/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/home/ros/Downloads/yes/etc/profile.d/conda.sh" ]; then
        . "/home/ros/Downloads/yes/etc/profile.d/conda.sh"
    else
        export PATH="/home/ros/Downloads/yes/bin:$PATH"
    fi
fi
unset __conda_setup

修改 /home/ros/Downloads/yes/mnt/anaconda3

# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/mnt/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
    eval "$__conda_setup"
else
    if [ -f "/mnt/anaconda3/etc/profile.d/conda.sh" ]; 
then
        . "/mnt/anaconda3/etc/profile.d/conda.sh"
    else
        export PATH="/mnt/anaconda3/bin:$PATH"
    fi
fi
unset __conda_setup

# <<< conda initialize <<<
export PATH="/mnt/anaconda3/bin:$PATH"

保存并使更改生效

source ~/.bashrc

测试

conda activate base

大概率会提示bash: /home/ros/Downloads/yes/bin/conda: No such file or directory

which conda
conda info

也会是bash: /home/ros/Downloads/yes/bin/conda: No such file or directory

echo $PATH

$PATH 环境变量中仍然包含了旧的路径 /home/ros/Downloads/yes/condabin
关闭当前终端窗口,打开一个新的终端(这一步也可以在测试之前进行,不记得什么时候起作用了)

修改conda内的变量

gedit /mnt/anaconda3/bin/pip
gedit /mnt/anaconda3/bin/conda
gedit /mnt/anaconda3/bin/pip3

将第一行的对应路径进行修改

#!/mnt/anaconda3/bin/python

注意是你自己的路径

关闭当前终端窗口,重新激活虚拟环境测试

若还出现问题,输入以下命令

env | grep 'conda\|PATH' 

结果显示CONDA_EXE仍然指向旧的路径/home/ros/Downloads/yes/bin/conda,而PATH变量中还包含旧的/home/ros/Downloads/yes/condabin
此标题以下步骤不确定是否起作用了,忘了记录

  • 强制清除残留的 CONDA_EXE
# 临时清除当前会话的变量(立即生效)
unset CONDA_EXE

# 永久修复:确保 Conda 初始化脚本指向新路径
echo 'export CONDA_EXE=/mnt/anaconda3/bin/conda' >> ~/.bashrc
  • 直接清理 PATH
# 使用 sed 从所有配置文件中删除旧路径
sed -i '/\/home\/ros\/Downloads\/yes/d' ~/.bashrc ~/.profile ~/.bash_aliases /etc/environment 2>/dev/null

# 重新加载配置
source ~/.bashrc

再次关闭当前窗口,重新激活虚拟环境测试,大概是成功了

出现问题

Error while loading conda entry point: conda-content-trust (OpenSSL 3.0's legacy provider failed to load. This is a fatal error by default, but cryptography supports running without legacy algorithms by setting the environment variable CRYPTOGRAPHY_OPENSSL_NO_LEGACY. If you did not expect this error, you have likely made a mistake with your OpenSSL configuration.)
Error while loading conda entry point: anaconda-cloud-auth (PyO3 modules compiled for CPython 3.8 or older may only be initialized once per interpreter process)
echo 'export CRYPTOGRAPHY_OPENSSL_NO_LEGACY=1' >> ~/.bashrc
source ~/.bashrc

感觉像是掩耳盗铃的做法,先凑合用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值