Centos搭建jupyterhub环境

最近为方便学生使用jupyter,在服务器上搭建了其多用户版本:jupyterhub

踩了一些坑,在此记录以方便他人

一、安装jupyterhub是容易的:

用conda安装:

conda install -c conda-forge jupyterhub

或者用pip安装:

pip install jupyterhub

1号坑:如果使用0.9以上版本,要求python>=3.5,否则安装时不会报错但启动时会有attribute error

二、配置jupyterhub:

创建配置文件

jupyterhub --generate-config

2号坑: 默认配置在我的系统上会出现登录问题。启动服务后第一个用户可以正常登录,然后其它用户登录就会报如下错误,第一个用户登出后重新登录也会报同样的错。

PAM Authentication failed: [PAM Error 7] Authentication failure

解决方法:修改系统的PAM配置

PAM authentication errors · Issue #323 · jupyterhub/jupyterhubgithub.com图标

vim /etc/pam.d/login

注释掉两行

#session required pam_loginuid.so

# session required pam_selinux.so open

整体文件如下

#%PAM-1.0
auth [user_unknown=ignore success=ok ignore=ignore default=bad] pam_securetty.so
auth       substack     system-auth
auth       include      postlogin
account    required     pam_nologin.so
account    include      system-auth
password   include      system-auth
# pam_selinux.so close should be the first session rule
session    required     pam_selinux.so close
# session    required     pam_loginuid.so
session    optional     pam_console.so
# pam_selinux.so open should only be followed by sessions to be executed in the user context
# session    required     pam_selinux.so open
session    required     pam_namespace.so
session    optional     pam_keyinit.so force revoke
session    include      system-auth
session    include      postlogin
-session   optional     pam_ck_connector.so

然后在配置文件jupyterhub_config.py中添加

c.PAMAuthenticator.open_sessions = False

三、启动jupyterhub

必须以root身份启动

nohup jupyterhub >hublog.txt &

四、补充

开机启动jupyterhub

jupyterhub 安装配置 - bregman - 博客园

jupyterhub/jupyterhub

发布于 2019-02-26