准备用phpMyAdmin进入DB10数据库,显示以下错误信息:
马上百度一下,各种分析和解决方法都,但多数让人感觉复杂且不好操作,其中看到一条说换IE浏览器就可以了,决定从成本最低的开始,我现在是safari 。
打开windows10虚拟机,经测试Firefox 和最新版的EDGE都没有问题,遇到类似问题可以一试,不行再从其他方面入手。
记录学习生活的点滴,也是备忘
准备用phpMyAdmin进入DB10数据库,显示以下错误信息:
马上百度一下,各种分析和解决方法都,但多数让人感觉复杂且不好操作,其中看到一条说换IE浏览器就可以了,决定从成本最低的开始,我现在是safari 。
打开windows10虚拟机,经测试Firefox 和最新版的EDGE都没有问题,遇到类似问题可以一试,不行再从其他方面入手。
juoyterhub安装后可以登录,其它各项功能正常,但notebook启动不了,显示500:内部服务错误。
尝试了各种方法,删除jupyterhub重装,删除jupyter重装,甚至删除与jupyter相关的所有目录、文件,均没有效果。
再仔细查看登录时jupyterhub的反馈信息,发现还有一个目录没有动过,nbconvert,全部删除,再重新安装,再次登录正常,问题解决。
500错误原因复杂,我产生这个问题很可能是先安装配置过本地的jupyter-notebook服务器,使nbconvert生成了本地连接,再安装jupyterhub时仍然调用旧的配置,自然无法运行,踩过的坑供大家参考。
近日第二次安装Jupyterhub,再次遇到500问题,上次碰运气解决问题,这次想真正搞清楚原因,并且这次尝试了多用户同时登录,在第一个用户登录后其他用户无法登录或登录后打不开python文件。
1、从网上调研该问题的解决方案
有关该问题的文章不多,大概几种认识,第一是认为安装notebook在先,生成/.jupyter文件,造成后面启动jupyterhub时读取老文件出现错误。第二是认为jupyterhub的设置文件对用户的身份认证和系统防火墙问题。
以上方案在我这里都不起作用,都是一种猜测,并没有真正搞清问题的根本原因。
2、自己动手调试
2.1 第一个用户登录时就出现500错误,采取前述办法,删除nbconvert文件夹,没有出现以前的结果,仍然无法登录。
调试信息显示 permissionERR 13 *******conf.json 表明jupyterhub不能正常处理该文件,打开所在目录发现在nbconvert目录下根本没有该文件。将以前安装的系统中的文件拷贝覆盖当前文件夹,成功登入,并能正常运行python程序。
2.2 第二个用户无法登入,只有第一个用户退出,第二个用户才能登录,并且登录后仍然无法打开python文件,用2.1的方法覆盖文件,仍然不起作用,并且系统没有permissionERR 13错误提示,只提示打开singlenotebookapp失败。
以上表明,2.1没有真正解决问题,并且当前系统只能单用户使用,根本不是多用户环境。从各种现象考虑,出现这些问题应该还是身份认证存在错误。
以第二个用户身份进入终端,在其中启动jupyterhub并尝试浏览器登录,这里系统再次出现permission ERR 13和runtime错误提示,即该用户无权执行相关文件,这算是该软件的一个bug吧。
对相关文件进行 chmod -R 777,退出普通用户环境,以root身份启动jupyterhub,多用户正常运行,问题解决。
普通用户要使用jupyterhub必须要有自己的主目录并配置在config文件中,有权读取配置文件,且第一次运行时要正确生成身份认证信息,否则均不能正常运行。
Notebook作为简便的编辑工具,一般本地安装使用,如果能安装在服务器上,以web方式远程连接,数据也储存在远端,可以一次配置,随时随地使用。
以在linux平台为例,其他没有试过。
1、Linux系统安装Python环境,安装pip工具
2、安装jupyter
2.1 下载并安装:pip3 install jupyter
安装好Ipython模块,并生成远程访问密钥
$ ipython
from notebook.auth import passwd
passwd()
拷贝生成密钥
然后jupyter –version,验证安装正确。
2.2 生成配置文件:jupyter notebook --generate-config
2.3 修改配置文件:vi /root/.jupyter/jupyter_notebook_config.py
修改以下4项:
c.NotebookApp.ip=’*’
c.NotebookApp.password =
c.NotebookApp.open_browser = False
c.NotebookApp.port =8888
password等号后用第1步生成的密钥填入,port可修改为系统不冲突的其它号码
保存退出。
3、以root身份后台运行notebook
nohup jupyter notebook --allow-root > jupyter.log 2>&1 &
用ps -a验证notebook进程正在运行。
4、本地登录地址:http://主机IP:端口号