通过ssh远程使用服务器jupyter notebook(并维持服务器端口转发)

通过ssh建立连接

  1. 确保你的服务器有jupyter notebook,如果没有bash输入pip install jupyter安装

  2. 先ssh连接到服务器,然后创建jupyter notebook密码, bash输入

    jupyter notebook password
    
  3. 在服务器的某端口打开jupyter notebook,bash输入

    jupyter notebook --no-browser --port=12345
    
  4. 建立ssh连接:我们将服务器打开jupyter notebook的端口远程转发到本地即可,在新的命令行窗口输入(非服务器bash)

    ssh -N -L 8080:localhost:12345 <user_name>@<host_ip>
    

    示例

    -N说明不执行任何远程命令;-L指明执行端口转发

  5. 本地打开notebook:我们已经将服务器12345端口转发到了本地的8080端口,此时浏览器打开本地8080端口即可,浏览器地址栏输入http://localhost:8080/即可在本地浏览器打开远程服务器的jupyter notebook

  6. 开始使用jupyter notebook吧!如果存在端口占用问题,自行修改端口

退出远程jupyter

方法一

在本地浏览器打开远程jupyter后点击右上角quit

方法二

命令行执行

  1. 远程服务器命令行:
    jupyter notebook stop your_port
    
  2. 本地命令行
    ssh username:password@remote_server_ip   "jupyter notebook stop  your_port"
    
  3. 远程服务器bash
    ssh username:password@remote_server_ip "pkill -u username jupyter"
    

使用screen session维持服务器端口转发

  本节参考here
  做法:使用screen session

  1. 连接服务器,然后bash输入
    screen
    
  2. 输入空格后输入命令,此时的bash已经成为screen类型,输入的命令可以保持。按照第一节的做法进行端口转发
  3. 按下
    ctrl+ a
    ctrl+ d
    此时你可以安心关闭远程连接了
  4. 重新登录服务器可使用screen -r重新打开你的screen session

几个screen常用命令

命令说明
screen创建一个screen session
screen -S name创建名为name的screen session
screen -ls列举当前screen session
screen -list同上
screen -r [session]恢复screen session并显示期间输出
ctrl+ a配合ctrl+ d退出当前screen session
screen -X -S [session] killkill某个screen session
screen -X -S [session] quit彻底kill某个screen session
screen -S session -X quit同上
### 远程连接至Jupyter Notebook 为了能够从远程位置安全地访问操作位于服务器上的Jupyter Notebook实例,需遵循一系列特定设置流程。这不仅涉及到了解如何启动带有适当参数的Notebook服务[^1],还涉及到确保网络配置允许外部设备通过SSH隧道等方式建立连接。 对于Jetson Nano这类边缘计算平台而言,在其上部署VNC或配置远程桌面可以作为辅助手段来管理环境,但这非直接用于Jupyter Notebook远程访问;相反,应专注于调整防火墙规则以及安装必要的Python库以支持预期的功能开发需求[^4]。 当准备就绪后,可以通过执行`jupyter notebook --generate-config`命令创建默认配置文件(如果尚未存在),此步骤有助于后续自定义端转发和其他高级选项[^3]。之后,利用如下所示的方式启动Jupyter Notebook: ```bash jupyter notebook --no-browser --port=8888 ``` 上述指令会阻止自动打开浏览器窗指定监听于8888端的服务。接着,可通过SSH客户端构建一条通往目标机器的安全通道,具体做法是在本地计算机运行下面这条命令: ```bash ssh -N -f -L localhost:8889:localhost:8888 username@remote_host_ip_address ``` 这里假设远端主机IP地址已知且用户名正确无误。完成这些准备工作以后,只需在个人电脑上的Web浏览器输入http://localhost:8889即可加载来自远程服务器Jupyter Notebook界面[^2]。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值