【操作与配置】Linux的CPU深度学习环境

news2025/1/10 23:55:12

Conda安装

可浏览官网:Miniconda — Anaconda 文档

这四条命令会快速而且悄悄地安装最新的64位安装程序,然后清理安装过程中产生的文件。如果需要安装 Linux 版本的其他版本或架构的 Miniconda,只需要在命令中更改安装程序的名称。

mkdir -p ~/miniconda3
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh
bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3
rm -rf ~/miniconda3/miniconda.sh

#mkdir -p ~/miniconda3:创建一个名为 miniconda3 的文件夹,如果已存在则不报错,并且创建必要的父文件夹。
#wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh -O ~/miniconda3/miniconda.sh:从指定链接下载 Miniconda3 最新版本的 64 位 Linux 安装程序,并将其保存为 ~/miniconda3/miniconda.sh。
#bash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3:运行下载的安装程序,其中: -b:以批处理模式运行安装程序。 -u:安装过程中可以更新已经存在的已安装包。 -p ~/miniconda3:将 Miniconda 安装到指定的路径 ~/miniconda3 中。
#rm -rf ~/miniconda3/miniconda.sh:删除下载的 Miniconda 安装程序 miniconda.sh 及其文件夹。

在这里插入图片描述

安装完成后,请初始化您新安装的Miniconda。以下命令适用于bash和zsh终端:

~/miniconda3/bin/conda init bash
~/miniconda3/bin/conda init zsh
#Ubuntu默认使用的是Bash(Bourne Again Shell),它是sh的增强版,也是Linux标准默认的Shell

要使conda更改生效,您需要确保在新的bash shell会话中加载了这些更改。如果您当前已经在bash shell中,您可以执行 source ~/.bashrc 来手动加载这些更改。

Conda换源

使用命令查看conda镜像源

conda config --show channels

在这里插入图片描述

执行命令添加清华源

conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
conda config --add channels http://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
conda config --set show_channel_urls yes

再次查看,已添加成功

conda config --show channels

在这里插入图片描述

配置虚拟环境

使用conda命令新建一个环境

conda create -n test python=3.10.4

进入虚拟环境执行后续操作

conda activate test

使用pip安装深度学习库

pip install numpy==1.24.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install matplotlib==3.8.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install tensorflow==2.13.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
#通常在使用pip的时候,加上参数-i和镜像地址进行临时换源

在官网获取对应的pytorch下载命令:Start Locally | PyTorch

pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu

在这里插入图片描述

Jupyter安装

安装 Jupyter 在基础环境中:

首先,你只需要在 Miniconda 的基础环境中安装一次 Jupyter。

conda install jupyter 
#nb_conda_kernels 是一个额外的插件,它可以自动检测和使用 Conda 环境中的内核,但并不是必须的。
conda install nb_conda_kernels 

为 Jupyter 设置密码

你可以通过命令为 Jupyter 重置密码:

jupyter notebook password

为每个虚拟环境安装 ipykernel

对于每个你想要在 Jupyter Notebook 中使用的虚拟环境,你需要安装 ipykernel 并注册内核。假设你有两个虚拟环境 env1env2

conda activate env
conda install ipykernel
#若在base环境中已安装nb_conda_kernels可以跳过下一步
python -m ipykernel install --user --name env [--display-name "Python (env)"]

--name 参数指定内核名称,--display-name 参数是在 Jupyter Notebook 中显示的名称。

使用 Jupyter Notebook:

现在,你可以激活基础环境并启动 Jupyter Notebook,在 Jupyter Notebook 的内核选择菜单中,你会你添加的选项。

conda activate base
jupyter notebook

Jupyter本地访问

通过 SSH 隧道将远程服务器上的 Jupyter Notebook 服务转发到本地计算机,以便你可以在本地浏览器中访问和使用它。

这条命令用于通过 SSH 隧道将远程服务器上的 Jupyter Notebook 服务转发到本地计算机,以便你可以在本地浏览器中访问和使用它。以下是这条命令的详细讲解:

ssh -L localhost:8888:localhost:8888 uesr@ip -p 22
  • ssh: SSH 命令,用于连接远程服务器。

  • -L localhost:8888:localhost:8888
    

    : 这是端口转发选项,指定本地端口、远程端口和主机。具体格式为

    -L [本地绑定地址:]本地端口:远程绑定地址:远程端口
    
  • localhost:8888: 本地计算机上的地址和端口。

  • localhost:8888: 远程服务器上的地址和端口。假设 Jupyter Notebook 在远程服务器上运行并监听 8888 端口。

  • uesr@ip: SSH 登录的用户名和服务器 IP 地址。这里 user 是用户名,ip 是服务器的 IP 地址。

  • -p 22: 指定 SSH 连接的端口号。默认是 22,但你可以根据实际情况更改。

错误解决

在远程链接时出现该错误:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

这个消息表明 60.204.246.59 的 SSH 主机密钥发生了变化。这可能是因为远程服务器重新安装了操作系统,或者是因为存在中间人攻击。

要解决这个问题,你需要从 C:\Users\username\ssh\known_hosts 文件中删除旧的密钥。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1889330.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++】const详解

📢博客主页:https://blog.csdn.net/2301_779549673 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📢本文作为 JohnKi ,引用了部分大佬的案例 📢未来很长,…

【Kali-linux for WSL】图形化界面安装

文章目录 前言图形化界面安装 前言 之前在WSL中安装了Kali 启动之后发现什么都没有!!! 那我还怎么学习渗透技术??? 看来,得改进下我的kali-linux for wsl,安装个图形化界面 图形化…

JCR一区级 | Matlab实现BO-Transformer-LSTM多变量回归预测

JCR一区级 | Matlab实现BO-Transformer-LSTM多变量回归预测 目录 JCR一区级 | Matlab实现BO-Transformer-LSTM多变量回归预测效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.Matlab实现BO-Transformer-LSTM多变量回归预测,贝叶斯优化Transformer结合LSTM长…

【Python】Python中的常量与变量

常量与变量 导读一、新建项目二、常量2.1 字面常量2.2 特殊常量 三、变量3.1 变量的定义3.2 变量的命名3.2.1 关键字 结语 导读 大家好,很高兴又和大家见面啦!!! 在上一篇内容中我们详细介绍了Python环境的搭建过程,…

一键转换,高效管理:引领文件批量改后缀名与TXT转DOCX格式新潮流

在这个数字化时代,文件管理和格式转换成为了我们日常工作中不可或缺的一部分。然而,手动更改文件后缀名以及将TXT文件转换为DOCX格式,不仅耗时耗力,还容易出错。幸运的是,我们有了文件批量改名高手这款强大的工具&…

【JAVA多线程】JDK中的各种锁,看这一篇就够了

目录 1.概论 1.1.实现锁的要素 1.2.阻塞队列 1.3.Lock接口和Sync类 2.各种锁 2.1.互斥锁 2.1.1.概论 2.1.2.源码 1.lock() 2.unlock() 2.2.读写锁 2.3.Condition 2.3.1.概论 2.3.2.底层实现 1.概论 1.1.实现锁的要素 JAVA中的锁都是可重入的锁,因为…

固定网国内数据传送业务经营许可证

一、国内固定网数据传送业务是什么? 固定网国内数据传送业务是指互联网数据传送业务以外的,在固定网中以有线方式提供的国内端到端数据传送业务。主要包括基于IP承载网、ATM网、X.25分组交换网、DDN网、帧中继网络的数据传送业务等。该业务属于A2类基础…

数字源表表征及测试纳米材料高温原位方案

01/纳米材料电学性能的表征和分析/ 与传统的材料相比,纳米材料具有原子级厚度、表面平整无悬空键、载流子迁移率好等优点,其导电性能很大程度依赖于材料本身的带隙、掺杂浓度和载流子迁移率。同样的掺杂浓度下,迁移率越大,电阻率…

计算机网络--网络层

一、网络层的服务和功能 网络层主要为应用层提供端对端的数据传输服务 网络层接受运输层的报文段,添加自己的首部,形成网络层分组。分组是网络层的传输单元。网络层分组在各个站点的网络层之间传输,最终到达接收方的网络层。接收方网络层将运…

nginx SSI(Server Side Include)服务端包含 合并拼装静态内容

一、什么是SSI 在被传送给浏览器之前,服务器会对 HTML 文档进行完全地读取、分析以及修改,使用SSI指令将文本、图片或代码信息包含到网页中。对于整个页面可以拆分成多个模块,通过SSI指令将几个模块拼接成一个完整的页面,当有内容…

大模型在软件测试领域的应用场景有哪些?_大模型在测试领域应用

在数字化转型的大背景下,在软件定义一切的趋势下,软件测试人员需要接触和理解的信息越来越多,并呈现加速增长的态势。需求越来越大,交付周期越来越短,受制于体力和能力限制,测试人员的效率和质量难以同步提…

基于模式识别的垃圾分类系统-计算机毕业设计源码96151

摘 要 随着城市化进程的加速和人口的不断增长,垃圾管理和环境保护成为了全球面临的重要挑战之一。垃圾分类作为一种可行的解决方案,旨在减少垃圾的数量、降低环境污染,并促进资源的回收与再利用。 本文旨在设计并开发一个垃圾分类系统。该系统…

电工电子革新风暴:在线电路仿真软件重塑行业格局

随着科技的不断进步,电工电子行业正迎来一场由在线电路仿真软件引领的革新风暴。这些功能强大的软件工具不仅极大地提高了电路设计的效率,更为整个行业带来了前所未有的冲击和机遇。 仿真软件:电工电子行业的“隐形推手” 在线电路仿真软件…

代码随想录算法训练营第42天| 198.打家劫舍、213.打家劫舍II 337.打家劫舍III、 337.打家劫舍III

198.打家劫舍 题目链接:198.打家劫舍 文档讲解:代码随想录 状态:不会 记忆化搜索思路: 可以从最后一间房子开始,每次面对一个房子要考虑打劫还是不打劫,如果打劫了就从它的下下个房子开始打劫,在…

idea Git操作

1、代码拉取(左上角) 或 2、代码push(左上角) 3、切换分支(右下角) 4、分支管理 5、当前分支和某一个分支对比差异 6、当前分支某一个提交需要恢复成提交前状态(revert) 7、其他分…

Python处理浮点数的实用技巧

更多Python学习内容:ipengtao.com 四舍五入是一种常见的数学操作,它用于将数字舍入到指定的精度。Python 提供了多种方法来实现四舍五入操作,从基本的 round 函数到高级的 decimal 模块,满足不同的需求。本文将详细介绍这些方法&a…

Profibus DP主站转Modbus网关连接伺服与电机通讯

在工业自动化领域,将Profibus DP主站转Modbus网关(XD-MDPBM20)用于连接伺服与电机通讯是一种常见且重要的应用方式。当使用Profibus DP主站转Modbus网关(XD-MDPBM20)连接伺服与电机进行通讯时,可以参考以下…

使用代理,在Mapper层面统一封装VO、Entity 之间的转换逻辑

无聊看看开源项目,无意间看到里面的业务代码用到了BaseMapperPlus,于是点进去发现里面封装了Vo、Entity 之间的转换逻辑。想着自己平时都是手动的进行 copy 转换来着。于是本地进行验证了一番,发现还挺好用的,懒人必备。但是前提是…

MySQL 9.0 悄悄上线,支持面向AI的向量数据库

MySQL狂热粉丝群已经发现MySQL官网上MySQL9.0这两天悄然上线,已经可以下载体验了,目前被定义为创新版本(Innovation)。 下载地址:https://dev.mysql.com/downloads/mysql/ 支持主流的操作系统,安装后可以直…

101 个现实世界的新一代 AI 用例

自从一年半前生成式人工智能首次引起世界关注以来,人们一直在热烈讨论这项新技术的最佳用途。虽然我们都喜欢早期的有趣聊天和诙谐的打油诗,但我们很快发现,许多最大的人工智能机会显然都在企业中。 短短几个月内,这些组织就从 A…