ubuntu 20.04安装 Anaconda教程
在安装Anaconda之前需要先安装ros(防止跟conda冲突,先装ros)。提前安装好cuda 和cudnn。
本博客参考:ubuntu20.04配置ros noetic和cuda,cudnn,anaconda,pytorch深度学习的环境


安装完conda后,输入:
python
查询结果为:
Python 3.11.5 (main, Sep 11 2023, 13:54:46) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
也就是系统默认python版本为anaconda下的python,

使用指令which python查询发现确实是用的conda的python.


使用指令
whereis python
查询结果为:
python: /usr/bin/python2.7 /usr/bin/python3.8-config /usr/bin/python3.8 /usr/lib/python2.7 /usr/lib/python3.9 /usr/lib/python3.8 /etc/python2.7 /etc/python3.8 /usr/local/lib/python2.7 /usr/local/lib/python3.8 /usr/include/python2.7 /usr/include/python3.8d /usr/include/python3.8 /usr/share/python /home/xiujie/anaconda3/bin/python3.1 /home/xiujie/anaconda3/bin/python3.11-config /home/xiujie/anaconda3/bin/python /home/xiujie/anaconda3/bin/python3.11
由于ros 用的是系统默认的python3.8,因此如果不更改python 指向,会导致ros启动失败。
使用指令查询当前环境变量path都有哪些参数:
echo $PATH
显示结果为:
/home/xiujie/anaconda3/bin:/opt/ros/noetic/bin:/home/xiujie/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/local/cuda/bin:/usr/local/cuda/bin
有/home/xiujie/anaconda3/bin是因为本人添加过环境变量,后续发现可以不用添加该路径进环境变量。
python 多版本管理:
参考教程:
- ubuntu20.04配置ros noetic和cuda,cudnn,anaconda,pytorch深度学习的环境
- ubuntu下系统python与anaconda下python
- ubuntu20安装python2, python3及版本配置
- ubuntu如何查找python安装目录
使用以下命令设置多版本管理优先级,注意路径为上述whereis指令查到的路径,务必要正确,设置系统python3.8为默认版本:
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.8 40
sudo update-alternatives --install /usr/bin/python python /usr/bin/python2.7 30
sudo update-alternatives --install /usr/bin/python python /home/xiujie/anaconda3/bin/python 20
python --version # 查看当前默认版本
update-alternatives --list python # 显示python代替版本信息
update-alternatives --config python # 手动切换python默认版本

数值越大,优先级越高。使用pdate-alternatives --config python 指令配置版本优先级

设置完成后另外开一个新的终端使用指令查询,证明已经修改回3.8版本,但是这会导致conda启动不了:

使用指令sudo gedit ~/.bashrc设置:
在bashrc文件最低端添加下列指令。其中/home/--------的四段绿色指令为每台主机存放conda,conda.sh,bin文件的地址。记得输入正确。
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/linuxize/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; theneval "$__conda_setup"
elseif [ -f "/home/linuxize/anaconda3/etc/profile.d/conda.sh" ]; then. "/home/linuxize/anaconda3/etc/profile.d/conda.sh"elseexport PATH="/home/linuxize/anaconda3/bin:$PATH"fi
fi
unset __conda_setup
# <<< conda initialize <<<
运行指令:source ~/.bashrc
另外打开新的终端:
输入指令:
source ~/anaconda3/bin/activate
python
进行启动,启动指令变为由source 指定路径进行启动,不能执行默认的conda activate 启动了。
ubuntu20.04配置ros noetic和cuda,cudnn,anaconda,pytorch深度学习的环境中给出了解决办法,但是我不推荐这种方法,后续可以继续修改为直接用conda默认指令启动。

为了避免冲突,需把conda设置为默认关闭。
# added by Anaconda3 5.3.1 installer
# >>> conda init >>>
# !! Contents within this block are managed by 'conda init' !!__conda_setup="$(CONDA_REPORT_ERRORS=false '/home/zrh/anaconda3/bin/conda' shell.bash hook 2> /dev/null)"
if [ $? -eq 0 ]; then\eval "$__conda_setup"
elseif [ -f "/home/zrh/anaconda3/etc/profile.d/conda.sh" ]; then. "/home/zrh/anaconda3/etc/profile.d/conda.sh"CONDA_CHANGEPS1=false conda activate baseelse\export PATH="/home/zrh/anaconda3/bin:$PATH"fi
fi
unset __conda_setupconda deactivate
# <<< conda init <<<
设置完后,新开一个终端,发现正常使用,如果使用conda,conda activate等指令可以正常使用,参考链接:Ubuntu20.04中安装anaconda后与ros依赖python版本冲突

至此conda安装导致的python版本冲突问题就完美解决了。
接下来就可以愉快的pytorch了。
虚拟环境中安装pytorch可以参考这个链接:GPU版本pytorch(Cuda12.1)清华源快速安装一步一步教!小白教学~
本人安装的是1.12.1,具体版本需要根据自己cuda版本去查。
pip install torch==1.12.1+cu113 torchvision==0.13.1+cu113 torchaudio==0.12.1+cu113 -f https://download.pytorch.org/whl/torch_stable.html
安装Pycharm
参考链接:
- 【Ubuntu系统配置】005Ubuntu20.04安装Anaconda3与Pycharm
- Ubuntu20.04手动安装PyCharm
本文安装完成后设置了软连接:
sudo ln -s /home/xiujie/pycharm-2023.2.5/bin/pycharm.sh /usr/local/bin/pycharm
sudo chmod +x /usr/local/bin/pycharm
注意,这里一定要用完整路径,否则会出现如下错误(注意替换为自己的安装路径):
chmod: cannot operate on dangling symlink ‘/usr/local/bin/pycharm’
启动PyCharm。在终端中输入pycharm命令即可:
pycharm
如果希望以非交互模式启动PyCharm,请在命令中添加 -n 参数
pycharm -n
这样,就可以通过 pycharm 命令启动PyCharm,而无需进入特定的目录并运行 pycharm.sh 脚本。
在进行完这步操作后,本文还将图标添加。点击pycharm右下方设置图标,选择create desktop entry, 创建桌面图标。

关联anaconda的Python解释器:
参考:Python环境配置系列—第二篇:Pycharm与Anaconda的完美配合
相关文章:
ubuntu 20.04安装 Anaconda教程
在安装Anaconda之前需要先安装ros(防止跟conda冲突,先装ros)。提前安装好cuda 和cudnn。 本博客参考:ubuntu20.04配置ros noetic和cuda,cudnn,anaconda,pytorch深度学习的环境 安装完conda后,输入: pyth…...
iframe渲染后端接口文件和实现下载功能
一:什么是iframe? 1、介绍 iframe 是HTML 中的一种标签,全称为 Inline Frame,即内联框架。它可以在网页中嵌入其他页面或文档,将其他页面的内容以框架的形式展示在当前页面中。iframe的使用方式是通过在HTML文档中插入…...
广西建筑工地模板:支模九层桉木模板
广西作为中国西南地区的重要建筑市场,建设工地的模板需求量一直居高不下。在众多建筑模板中,支模九层桉木模板以其强度高、使用寿命长的特点而备受关注。本文将介绍广西建筑工地常用的支模九层桉木模板,并探讨其在建筑施工中的应用优势。支模…...
java集合,栈
只有栈是类 列表是个接口 栈是个类 队列 接口有双链表,优先队列(堆) add会报错 offer是一个满了不会报错 set集合 有两个类实现了这个接口...
Ubuntu 20.04 LTS ffmpeg gif mp4 互转 许编译安装ffmpeg ;解决gif转mp4转换后无法播放问题
安装ffmpeg apt install ffmpeg -y gif转mp4 ffmpeg -f gif -i ldh.gif ldh.mp4 故障:生成没报错,但mp4无法播放,体积也不正常 尝试编译安装最新版 sudo apt install -y yasm axel -n 100 https://ffmpeg.org/releases/ffmpeg-6.0.1.tar.x…...
【Nginx】使用nginx进行反向代理与负载均衡
使用场景 反向代理:一个网站由许多服务器承载的,网站只暴露一个域名,那么这个域名指向一个代理服务器ip,然后由这台代理服务器转发请求到网站负载的多台服务器中的一台处理。这就需要用到Nginx的反向代理实现了 负载均衡…...
基于IDEA 进行Maven依赖管理
1. 依赖管理概念 Maven 依赖管理是 Maven 软件中最重要的功能之一。Maven 的依赖管理能够帮助开发人员自动解决软件包依赖问题,使得开发人员能够轻松地将其他开发人员开发的模块或第三方框架集成到自己的应用程序或模块中,避免出现版本冲突和依赖缺失等…...
瑞萨RZ/G2L平台 初起动(SD卡启动)
文章目录 一 准备条件1 工具2 硬件3 镜像 二 烧录SD卡启动盘三 写Bootloader1 烧录文件2 启动烧录3 烧录 四 启动设置 一 准备条件 1 工具 ** BalenaEtcher(俗称“ Etcher”),是一款快速将系统镜像文件( .iso 或 .img 或 .zip或…...
chkconfig及服务脚本
运行级别 linux启动之后处于某个状态 linux运行级别 0:关机 #设置即重启 1:单用户,为root权限,禁止远程登录 2:无网络文本模式 3:多用户文本模式 4:未使用 5:图形化…...
[Android] libcutils - native 获取/设置 property
前言: Android 的property系统类似于linux的环境变量,但是更加精细。可以通过adb 设置和读取 property,同时也可以在代码 (JAVA/C/C) 中设置和获取属性。这有助于我们在运行时控制代码执行逻辑。比如打开 测试开关 或者 dump源数据文件。 工…...
Matlab 方位角计算之二
文章目录 一、简介二、实现代码三、实现效果一、简介 我们总是说降维打击,这种思路尤其在一些问题上显现的尤为突出,就比如方位角这个问题,如果我们局限于二维这个空间,那么很多时候就需要判断方向向量落在了那个象限,之后再一个个情况逐一分析,虽然这样做并不复杂,但总…...
Postman工具简介
介绍 Postman是一个商业的接口测试工具。免费的版本也可以使用不少功能。 官网:https://www.postman.com/ 下载、安装、应用界面 下载 安装、安装成功以后的应用界面 双击下载下来的可执行文件进行安装,出现如下界面: 可以注册一个账…...
2023.11.17 -hivesql调优,数据压缩,数据存储
目录 1.hive命令和参数配置 2.hive数据压缩 3.hive数据存储 0.原文件大小 18.1MB 1.textfile行存储格式, 压缩后size:18MB 2.行存储格式:squencefile ,压缩后大小8.89MB 3. 列存储格式 orc - ZILIB ,压缩后大小2.78MB 4.列存储格式 orc-snappy ,压缩后大小3.75MB 5…...
基于Vue+SpringBoot的大学计算机课程管理平台 开源项目
目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 实验课程档案模块2.2 实验资源模块2.3 学生实验模块 三、系统设计3.1 用例设计3.2 数据库设计3.2.1 实验课程档案表3.2.2 实验资源表3.2.3 学生实验表 四、系统展示五、核心代码5.1 一键生成实验5.2 提交实验5.3 批阅实…...
2.c++基础语法
文章目录 1.c 程序结构关键字标识符、操作符、标点预处理指令注释main 主函数命名空间 2.c 变量和常量变量 3.c 数组和容器4.c 程序流程5.c字符和字符串 1.c 程序结构 关键字 关键字事程序保留的,程序员不能使用,c的常见关键字如下图: 标识…...
applicationContext.getBean 为null
场景: 使用SpringUtils 添加了统一类的调用。单元测试是正常的。 SpringUtils public class SpringUtils implements ApplicationContextAware {private static ApplicationContext applicationContext;Overridepublic void setApplicationContext(Nonnull Applica…...
无线WiFi安全渗透与攻防(六)之WEP破解-Gerix-wifi-cracker自动化破解WEP加密
WEP破解-Gerix-wifi-cracker自动化破解WEP加密 WEP破解-Gerix-wifi-cracker自动化破解WEP加密1.环境准备1.软件和kali2.下载软件,下载地址3.将软件复制到kali,解压4.进入软件目录2.破解步骤1.启动gerix-wifi-cracker-2-master软件2.设置无线网卡位Monitor Mode模式3.重新扫描…...
华为OD机试 - 环中最长子串(Java JS Python C)
题目描述 给你一个字符串 s,首尾相连成一个环形,请你在环中找出 o 字符出现了偶数次最长子字符串的长度。 输入描述 输入是一个小写字母组成的字符串 输出描述 输出是一个整数 备注 1 ≤ s.length ≤ 500000s 只包含小写英文字母用例 输入alolobo输出6说明最长子字符串之一…...
bug-跨域访问问题
问题场景 自定义 header,导致跨域问题 一个大屏项目,设置请求接口获取数据时,有的接口能够正常返回数据,有的接口提示跨域(接口域名不同),后端也进行支持跨域设置,结果还是提示跨域…...
Babyk勒索病毒数据集恢复,计算机服务器中了babyk勒索病毒怎么办?
计算机网络技术的不断应用,为企业的生产运营提供了极大便利,网络技术的不断发展也带来了许多网络安全隐患,近期,云天数据恢复中心陆续接到许多企业的求助,企业的计算机服务器遭到了babyk勒索病毒的攻击,导致…...
Redis相关知识总结(缓存雪崩,缓存穿透,缓存击穿,Redis实现分布式锁,如何保持数据库和缓存一致)
文章目录 1.什么是Redis?2.为什么要使用redis作为mysql的缓存?3.什么是缓存雪崩、缓存穿透、缓存击穿?3.1缓存雪崩3.1.1 大量缓存同时过期3.1.2 Redis宕机 3.2 缓存击穿3.3 缓存穿透3.4 总结 4. 数据库和缓存如何保持一致性5. Redis实现分布式…...
Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...
Windows安装Miniconda
一、下载 https://www.anaconda.com/download/success 二、安装 三、配置镜像源 Anaconda/Miniconda pip 配置清华镜像源_anaconda配置清华源-CSDN博客 四、常用操作命令 Anaconda/Miniconda 基本操作命令_miniconda创建环境命令-CSDN博客...
永磁同步电机无速度算法--基于卡尔曼滤波器的滑模观测器
一、原理介绍 传统滑模观测器采用如下结构: 传统SMO中LPF会带来相位延迟和幅值衰减,并且需要额外的相位补偿。 采用扩展卡尔曼滤波器代替常用低通滤波器(LPF),可以去除高次谐波,并且不用相位补偿就可以获得一个误差较小的转子位…...
Docker拉取MySQL后数据库连接失败的解决方案
在使用Docker部署MySQL时,拉取并启动容器后,有时可能会遇到数据库连接失败的问题。这种问题可能由多种原因导致,包括配置错误、网络设置问题、权限问题等。本文将分析可能的原因,并提供解决方案。 一、确认MySQL容器的运行状态 …...
Linux基础开发工具——vim工具
文章目录 vim工具什么是vimvim的多模式和使用vim的基础模式vim的三种基础模式三种模式的初步了解 常用模式的详细讲解插入模式命令模式模式转化光标的移动文本的编辑 底行模式替换模式视图模式总结 使用vim的小技巧vim的配置(了解) vim工具 本文章仍然是继续讲解Linux系统下的…...
CppCon 2015 学习:REFLECTION TECHNIQUES IN C++
关于 Reflection(反射) 这个概念,总结一下: Reflection(反射)是什么? 反射是对类型的自我检查能力(Introspection) 可以查看类的成员变量、成员函数等信息。反射允许枚…...
FTXUI::Dom 模块
DOM 模块定义了分层的 FTXUI::Element 树,可用于构建复杂的终端界面,支持响应终端尺寸变化。 namespace ftxui {...// 定义文档 定义布局盒子 Element document vbox({// 设置文本 设置加粗 设置文本颜色text("The window") | bold | color(…...
python可视化:俄乌战争时间线关键节点与深层原因
俄乌战争时间线可视化分析:关键节点与深层原因 俄乌战争是21世纪欧洲最具影响力的地缘政治冲突之一,自2022年2月爆发以来已持续超过3年。 本文将通过Python可视化工具,系统分析这场战争的时间线、关键节点及其背后的深层原因,全面…...
MLP实战二:MLP 实现图像数字多分类
任务 实战(二):MLP 实现图像多分类 基于 mnist 数据集,建立 mlp 模型,实现 0-9 数字的十分类 task: 1、实现 mnist 数据载入,可视化图形数字; 2、完成数据预处理:图像数据维度转换与…...
