anaconda3安装及jupyter环境配置全教程


Posted in Python onAugust 24, 2020

1. 下载

可以去清华源下载最新版的anaconda包,这比在官方网站下载快得多,地址如下:

https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/

将网页滚动到最下方,下载最新版本的Anaconda3-5.3.1-Linux-x86_64.sh。

wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.3.1-Linux-x86_64.sh

2. 安装

使用下行命名进行安装:

sh ./Anaconda3-5.3.1-Linux-x86_64.sh

在安装时,注意指定安装目录为/opt/anaconda3。可以不用将安装程序目录配置到当前用户的.bashrc中,因为为了让多用户可以使用,本地安装是直接在/etc/profile中进行配置。

3. 配置环境变量

编辑/etc/profile进行环境变量配置:

vim ~/.bashrc

直接将下方所有命名复制到文件最下方:

# added by Anaconda3 5.3.1 installer
# >>> conda init >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$(CONDA_REPORT_ERRORS=false '/opt/anaconda3/bin/conda' shell.bash hook 2> /dev/null)"
if [ $? -eq 0 ]; then
 \eval "$__conda_setup"
else
 if [ -f "/opt/anaconda3/etc/profile.d/conda.sh" ]; then
 . "/opt/anaconda3/etc/profile.d/conda.sh"
 CONDA_CHANGEPS1=false conda activate base
 else
 \export PATH="/opt/anaconda3/bin:$PATH"
 fi
fi
unset __conda_setup
# <<< conda init <<<

使环境变量生效:

source ~/.bashrc

这里需要提醒一下,最好不要直接将上述命令直接配置到/etc/profile中,虽然这样可使直接令所有用户都可以使用anaconda,但是亲测可能会对系统产生不良影响,例如将终端命令行开头变成:(base) -bash-4.2#。

4. 创建用户组

如果不创建用户组进行用户权限统一管理的话,除root用户外,其他系统用户也可以使用anaconda程序,但是在进行环境创建时,创建的虚拟环境就回在各自的家目录下的.conda中,不方便进行统一管理。

创建一个anaconda用户组,然后将anaconda的运行程序授权给这个用户组,随后将需要执行anaconda程序的用户添加到anaconda用户组中,这样所有用户都可以使用anaconda程序,且创建的所有虚拟环境都统一存放在/opt/anaconda/envs目录中。

创建用户组:

sudo groupadd anaconda

将/opt/anaconda3所属组设置为anaconda:

sudo chgrp -R anaconda /opt/anaconda3

修改/opt/anaconda3的目录权限:

sudo chmod 770 -R /opt/anaconda3

将需要使用anaconda程序的系统用户添加到anaconda用户组当中:

sudo usermod -a -G anaconda 用户名

5. 卸载anaconda

如果要卸载anaconda可以这么做:

(1)直接删除安装目录/opt/anaconda3

rm -rf /opt/anaconda3

(2)修改环境变量

将~/.bashrc和/etc/profile中的关于anaconda的所有配置删除,然后执行下行代码,使其生效:

source ~/.bashrc

6. 更新conda+安装ipykernel

进行后续操作之前,先更新conda,否则,可能出现下面的异常: Traceback (most recent call last): File "./conda", line 7, in <module> from conda.cli import main ModuleNotFoundError: No module named 'conda' (base) [chb@chb-VMserver bin]$ conda Traceback (most recent call last): File "/opt/anaconda3/bin/conda", line 7, in <module> from conda.cli import main ModuleNotFoundError: No module named 'conda' 使用如下命令进行更新:

conda update conda

安装ipykernel:

conda install ipykernel

7. kernel配置:

配置虚拟环境之前,需要先为每个虚拟环境创建kernel文件:

conda install -n 环境名称 ipykernel

例如为名为nlp的虚拟环境添加kernel文件:conda install -n nlp ipykernel

进入需要添加kernel的Python环境,然后写入配置:

注意,一定要先进入需要添加kernel的Python环境中,不然虽然修改了第7步骤中创建的nlp的kernel文件,但依然使用的是当前所处的Python环境。修改方式如下所示:

conda activate nlp

python -m ipykernel install --user --name nlp --display-name "自然语言处理"

8. 配置jupyter lab

生产加密密码,这个密码适用于登录jupyter lab时使用,增加安全性,后续配置jupyter lab写入配置文献,这里先创建好:

python -c "import IPython; print(IPython.lib.passwd())"

生成jupyter lab配置文件:

jupyter notebook --generate-config

生成的配置文件保存在当前用户的 .jupyter 目录下。例如在root用户下运行则生成配置文件在/root/.jupyter/jupyter_notebook_config.py。

修改生成的配置文件,修改后的内容如下:

c.NotebookApp.allow_remote_access = True # 允许远程访问
c.NotebookApp.ip = '*'    # 允许任意ip访问此服务器
c.NotebookApp.password = 'sha1:xxx:xxx'  # 上一步生成的密文,注意sha1这部分不能少
c.NotebookApp.open_browser = False  # 运行时不打开本机浏览器
c.NotebookApp.allow_root =True   # 允许使用 root 权限运行
c.NotebookApp.port = 8888   # 指定 jupyter notebook 使用的端口
c.ContentsManager.root_dir = '/jupyter' # 指定 ipynb 等文件的保存目录
c.NotebookApp.notebook_dir = '/jupyter'  # 工作目录(项目根目录)

9. 安装nodejs

jupyter中很多功能需要nodejs的支持,例如插件,我们在启动之前先安装好nodejs,避免后续启动话在出现因没有安装nodejs而出现异常。安装nodejs命令如下:

conda install nodejs

10. 启动jupyter

前台运行:

jupyter lab

后台运行:

nohup jupyter lab > /home/username/jupyter/jupyter.log 2>&1 &

11. 插件安装

开启插件,一次点击Settings->Advaned Settings Editor

anaconda3安装及jupyter环境配置全教程

点击后出现下方页面,点击Extension Manager,将中间的内容复制到右侧,并将enabled的值修改为true,如下图所示:

anaconda3安装及jupyter环境配置全教程

然后按ctrl + S 保存。

总结

到此这篇关于anaconda3安装及jupyter环境配置全教程的文章就介绍到这了,更多相关anaconda3安装及jupyter环境配置内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python cx_freeze打包工具处理问题思路及解决办法
Feb 13 Python
Python 内置函数memoryview(obj)的具体用法
Nov 23 Python
在Windows中设置Python环境变量的实例讲解
Apr 28 Python
python dataframe常见操作方法:实现取行、列、切片、统计特征值
Jun 09 Python
Django + Uwsgi + Nginx 实现生产环境部署的方法
Jun 20 Python
pytorch 自定义数据集加载方法
Aug 18 Python
Python3显示当前时间、计算时间差及时间加减法示例代码
Sep 07 Python
Tensorflow实现部分参数梯度更新操作
Jan 23 Python
Python基于百度AI实现OCR文字识别
Apr 02 Python
浅谈Python协程
Jun 17 Python
Django限制API访问频率常用方法解析
Oct 12 Python
基于Python-turtle库绘制路飞的草帽骷髅旗、美国队长的盾牌、高达的源码
Feb 18 Python
Python+pyftpdlib实现局域网文件互传
Aug 24 #Python
实例代码讲解Python 线程池
Aug 24 #Python
详解python UDP 编程
Aug 24 #Python
PyTorch如何搭建一个简单的网络
Aug 24 #Python
Python pysnmp使用方法及代码实例
Aug 24 #Python
详解python tcp编程
Aug 24 #Python
Python rabbitMQ如何实现生产消费者模式
Aug 24 #Python
You might like
PHP4(windows版本)中的COM函数
2006/10/09 PHP
PHP中的session永不过期的解决思路及实现方法分享
2011/04/20 PHP
php5.2以下版本无json_decode函数的解决方法
2014/05/25 PHP
android上传图片到PHP的过程详解
2015/08/03 PHP
详细解读PHP的Yii框架中登陆功能的实现
2015/08/21 PHP
PHP运行模式汇总
2016/11/06 PHP
laravel自定义分页效果
2017/07/23 PHP
PHP使用ajax的post方式下载excel文件简单示例
2019/08/06 PHP
jquery实现图片裁剪思路及实现
2013/08/16 Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
2014/09/24 Javascript
jquery.cookie.js用法实例详解
2015/12/25 Javascript
浅谈jquery点击label触发2次的问题
2016/06/12 Javascript
jQuery动态改变多行文本框高度的方法
2016/09/07 Javascript
基于js实现checkbox批量选中操作
2016/11/22 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
2017/05/11 Javascript
解决layui弹出层layer的area过大被遮挡的问题
2019/09/21 Javascript
js代码实现轮播图
2020/05/04 Javascript
如何在微信小程序中使用骨架屏的步骤
2020/06/12 Javascript
[01:39:42]Fnatic vs Mineski 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/18 DOTA
在Django中创建动态视图的教程
2015/07/15 Python
Python中几种导入模块的方式总结
2017/04/27 Python
Python实现完整的事务操作示例
2017/06/20 Python
深入理解Django的自定义过滤器
2017/10/17 Python
Redis使用watch完成秒杀抢购功能的代码
2018/05/07 Python
Python实现调用另一个路径下py文件中的函数方法总结
2018/06/07 Python
PyTorch在Windows环境搭建的方法步骤
2020/05/12 Python
python中zip()函数遍历多个列表方法
2021/02/18 Python
英国现代绅士品牌:Hackett
2017/12/17 全球购物
在线吉他课程,学习如何弹吉他:Fender Play
2019/02/28 全球购物
Pedro官网:新加坡时尚品牌
2019/08/27 全球购物
MATCHESFASHION澳大利亚/亚太地区:英国时尚奢侈品电商
2020/01/14 全球购物
英语专业学子个人的自我评价
2013/10/02 职场文书
春季运动会加油词
2015/07/18 职场文书
用Python将GIF动图分解成多张静态图片
2021/06/11 Python
Redis中缓存穿透/击穿/雪崩问题和解决方法
2021/12/04 Redis