在Linux服务器Conda环境上安装Jupyter过程中遇到了无数的报错,特此记录。
目录
步骤一:安装Anaconda3
步骤二:配置Conda源
步骤三:安装Jupyter
安装报错:simplejson.errors.JSONDecodeError
安装报错:CondaHTTPError: HTTP 000 CONNECTION FAILED for url
安装报错:distutils.errors.DistutilsError
步骤四:配置Jupyter
设置密码
报错:ImportError: IPython 8.13+ supports Python 3.9 and above
报错:ModuleNotFoundError: No module named 'notebook.auth'
配置文件
步骤五:运行Jupyter
运行报错:Bad config encountered during initialization
运行报错:Running as root is not recommended
运行报错:ImportError: undefined symbol: ffi_type_uint32
步骤一:安装Anaconda3
官网下载Anaconda3对应安装包,傻瓜式执行,不赘述
https://repo.anaconda.com/archive/https://repo.anaconda.com/archive/
bash Anaconda3-2022.05-Linux-x86_64.sh
步骤二:配置Conda源
vim ~/.condarc
# 可用conda源配置
channels:
- conda-forge
- defaults
proxy_servers:
http: http://user:password@xxx.xxx.com:8080
https: http://user:password@xxx.xxx.com:8080
ssl_verify: false
report_errors: false
如果服务器能直接访问外网可不配置
步骤三:安装Jupyter
conda install jupyter notebook
安装报错:simplejson.errors.JSONDecodeError
有可能是源配置有问题,可以修改为步骤二中的源配置后再次尝试,参见:Conda报错解决:ProxyError: Conda cannot proceed due to an error in your proxy configuration.-CSDN博客
安装报错:CondaHTTPError: HTTP 000 CONNECTION FAILED for url
有可能是代理配置有问题,可以添加代理后再次尝试,参见:Conda报错解决:ProxyError: Conda cannot proceed due to an error in your proxy configuration.-CSDN博客
安装报错:distutils.errors.DistutilsError
源配置有误时,创建Conda环境虽然会出现simplejson.errors.JSONDecodeError报错,但仍然能创建成功,在有问题的Conda环境下使用pip安装Jupyter时,有可能出现上述报错。实际上Jupyter与Conda环境无关,不需要创建Conda环境后安装。
步骤四:配置Jupyter
设置密码
# 进入conda安装目录
cd /root/anaconda3/bin
# 设置密码
./python
from notebook.auth import passwd
passwd()
报错:ImportError: IPython 8.13+ supports Python 3.9 and above
ipython版本与python版本不兼容,按照提示中的版本要求,重装对应版本的ipython即可:
# 确认python版本
python --version
# 安装支持的ipython版本
pip install ipython==8.10
报错:ModuleNotFoundError: No module named 'notebook.auth'
有一种说法是新旧版本问题,新版本已经不再使用notebook.auth方式,但没确认,也有可能是源配置有误导致的,参见安装报错
配置文件
# 生成配置文件
jupyter notebook --generate-config
# 修改配置文件
vim ~/.jupyter/jupyter_notebook_config.py
# 所有主机均可访问, 包括IPv6地址
c.NotebookApp.ip = '*'
# 默认的根目录
c.NotebookApp.notebook_dir = '/root'
# 启动时不打开浏览器
c.NotebookApp.open_browser = False
# 设置登录密码, 这个就是上面生成的密钥
c.NotebookApp.password = 'argon2:$argon2id$v=19$m=10240,t=10,p=8$RDPzM9fMk5hqJRMgB3Z9Aw$MJcoqzMOkhi7qiIvxHLsgF52SbXhGc1vqaqxJbVZayg'
# 对外提供访问的端口
c.NotebookApp.port = 8888
# 查找allow_root位置:Esc后输入/allow_root
c.ServerApp.allow_root = True
步骤五:运行Jupyter
jupyter notebook
运行报错:Bad config encountered during initialization
配置文件有误,请检查参数名称是否正确
运行报错:Running as root is not recommended
配置文件有误,请检查allow_root参数是否配置为True
运行报错:ImportError: undefined symbol: ffi_type_uint32
源配置有误时,创建Conda环境虽然会出现simplejson.errors.JSONDecodeError报错,但仍然能创建成功,在有问题的Conda环境下配置或运行Jupyter时,均有可能出现上述报错。实际上Jupyter与Conda环境无关,不需要创建Conda环境后安装。