一、Jupyter Notebook 是个什么东西?
简单说,Jupyter Notebook 是一个跑在浏览器里的交互式开发工具。它跟普通 IDE 最大的区别是:代码可以分块执行,每一块下面还能直接看到运行结果、图表,甚至还能在中间穿插 Markdown 写文档说明。
它的核心组成就这几样:
| 组成部分 | 作用 |
|---|---|
| 可执行代码 | 写 Python(或其他语言)代码,点击运行 |
| 文档 | 用 Markdown 写说明、公式、标题 |
| 图标/可视化 | 图表、图片直接显示在页面里 |
| 文件管理 | 新建、上传、删除 notebook 文件 |
二、服务器上安装 Jupyter
我的服务器是 Ubuntu 系统,如果你是 CentOS,把 apt 换成 yum 就行。
第一步:更新软件源
apt update
这步别省略,保证后续安装的包都是最新版本。
第二步:安装 Jupyter
直接用 pip 安装:
pip install jupyter
如果提示 pip 未安装,先装一下:
apt install python3-pip -y
安装完成后验证一下:
jupyter --version
能输出版本号就说明装好了。
第三步:启动 Jupyter 服务
启动命令长这样:
jupyter notebook --allow-root --ip=0.0.0.0 --port=8888
参数解释:
| 参数 | 含义 |
|---|---|
--allow-root | 允许 root 用户运行(服务器上常用) |
--ip=0.0.0.0 | 监听所有网络接口,这样才能从外部访问 |
--port=8888 | 指定端口号,默认就是 8888 |
启动后,终端会打印出一串链接,类似:
http://127.0.0.1:8888/?token=abcdef123456
但这个是本地地址,远程访问需要换成服务器的公网 IP。
三、Linux 远程连接(SSH)
服务器一般都是远程操作的,所以 SSH 是基础技能。
1. 安装 SSH 服务端
如果服务器上还没装 SSH,执行:
sudo apt install openssh-server -y
2. 管理 SSH 服务
安装完成后,服务默认会启动。常用的管理命令:
# 查看运行状态(两种方式都可以)
systemctl status ssh
service ssh status
# 启动
service ssh start
# 停止
service ssh stop
# 重启(修改配置后需要执行)
service ssh restart
我一般习惯用 service,顺手。
3. 从本地连接服务器
连接格式:
ssh 用户名@公网IP
ssh root@123.45.67.89
第一次连接会弹出提示:
The authenticity of host '123.45.67.89 (123.45.67.89)' can't be established. Are you sure you want to continue connecting (yes/no)?
输入 yes 回车就行,系统会把服务器信息记录到 ~/.ssh/known_hosts 里,下次再连就不会问了。
然后输入密码,登录成功就可以开始操作了。
四、浏览器访问 Jupyter
SSH 连上服务器并启动 Jupyter 之后,在本地浏览器输入:
http://服务器公网IP:8888
如果看到 Jupyter 的登录页面,输入之前启动时生成的 token(或者你自己设置的密码),就能进入 Notebook 界面了。
一个小坑:如果打不开,检查一下服务器的防火墙是否开放了 8888 端口:
# Ubuntu 用 ufw
ufw allow 8888
# 或者直接看 iptables
iptables -L -n
五、常用操作速查表
为了方便,把文中用到的命令整理成一张表:
| 操作 | 命令 |
|---|---|
| 更新软件源 | apt update |
| 安装软件 | apt install 软件名 |
| 卸载软件 | apt uninstall 软件名 |
| 安装 SSH 服务 | sudo apt install openssh-server |
| 查看 SSH 状态 | service ssh status |
| 启动 SSH | service ssh start |
| 停止 SSH | service ssh stop |
| 重启 SSH | service ssh restart |
| SSH 连接服务器 | ssh 用户名@公网IP |
| 启动 Jupyter | jupyter notebook --allow-root --ip=0.0.0.0 --port=8888 |

4039

被折叠的 条评论
为什么被折叠?



