当前位置: 首页 > news >正文

如何利用windows本机调用Linux服务器,以及如何调用jupyter界面远程操控

其实这篇文章没必要存在,教程太多了

参考博客(1 2 3),如侵删

奈何网上的大神总是会漏掉一些凡人遇到的小问题

(1) 建议下载PuTTy for windows,从而建立与远程服务器的SSH连接

需要确认目标服务器的ip(或者网站地址) 端口号 以及用户名与密码

(2)搭建Python等环境,建议找一个好用的requirement

比如提前利用scp命令将自己要跑的,要复现的代码的requirement上传上去, 再用pip或者conda指令安装requirement的库
所以一个团队制作一个合格的requirement,确保涵盖大多需求是比较合理的
如何用scp将多个文件夹上传到服务器或下载回本地,参考博客(4)

例如将我 的本地代码 E:/GAN 文件目录下所有的文件,上传到身份为 root 的远程服务器 1.1.1.1 的文件路径 home/me 上

scp -r E:/GAN root@1.1.1.1:/home/me/

或者带端口 2222 的服务器

scp -P 2222 E:/GAN root@1.1.1.1:/home/me/

(3)因为重点想实现远程跑jupyter,本地可视化,所以需要额外的步骤

为避免小白重进坑,此处借鉴博客(1 2 3)的步骤加以修改

1 jupyter notebook远程访问设置
conda activate abc	#激活虚拟环境[不在虚拟环境中可以省略此步骤]
pip install jupyter	#安装
jupyter notebook --generate-config	#生成配置文件

安装完成后,Jupyter会生成一个默认的配置文件。这个配置文件通常位于~/.jupyter/jupyter_notebook_config.json。

2 在服务器上生成加密密钥

为了安全地连接Jupyter Notebook,您需要生成一个加密密钥。

首先,在终端输入python指令进行python环境,

python

并依次执行:

from IPython.lib import passwd 
passwd()
2.1 如果出现如下错误,(我出现了)

在这里插入图片描述
则可能是您的python版本过高,可以换条指令:

from notebook.auth import passwd
passwd()

如果仍然出现报错(是的,我还是):
在这里插入图片描述
可以继续换指令(下面指令在python3.8中不报错):

from jupyter_server.auth import passwd
passwd()
这三条指令都会提示您输入和确认一个密码。这个密码将被用于加密Jupyter Notebook的连接(复制密文备用,如下图所示)。

在这里插入图片描述
输入 exit() 就可以退出python环境。

3 修改服务器配置文件

执行以下指令进入Jupyter的配置文件~/.jupyter/jupyter_notebook_config.json。

vim ~/.jupyter/jupyter_notebook_config.py

此外,进入这个py文件后, 可以看到如下的内容。
在这里插入图片描述
如果你没看到,可能是没生成设置文件。 请再次尝试

jupyter notebook --generate-config	#生成配置文件

linux系统服务器中可使用 :$ 进行索引定位到文件底部。
小白可以当光标到达最后一个字符位置后,按下小写字母o就可以换行并允许输入了。然后在这个最后面增加如下内容:

c.NotebookApp.ip='*'
c.NotebookApp.password = u'argon2:xxxxxxxxxxxxxxxxxxx'  # 先前备份的加密密钥
c.NotebookApp.port = 8888 # 随便设定一个端口
c.NotebookApp.open_browser = False
c.NotebookApp.allow_remote_access = True
c.NotebookApp.allow_root = True
c.NotebookApp.notebook_dir = '/project'  # 定义notebook的起始路径

这里一定要确认自己的加密秘钥, 以及 最后的启示路径, 因为团队中可能会分配各自的文件夹,所以这里最好给自己分配为自己的文件夹。后续方便本地调试jupyter。

4 回到本地的windows(其他也行),利用cmd建立与远程服务器的链接

在您的本地机器上打开命令提示符或终端。使用SSH命令连接到远程服务器。例如,如果远程服务器的IP地址是192.168.0.100,用户名是root,端口号是50001,那么可以使用以下命令:

ssh -p 50001 root@192.168.0.100 -L127.0.0.1:8889:127.0.0.1:8889

当然,如果服务器给你的是一个网址,也可以直接把上述的服务器ip改成你的服务器网址。

5 在服务器上使用jupyter

当然,如果你是重新启动了服务器, 先激活自己的环境(activate),进入(cd)自己的文件夹后,启动jupyter:

jupyter notebook --no-browser

服务器会输出:
在这里插入图片描述

6 在本地浏览器上远程访问jupyter

http://localhost:8889/tree

然后就会出现
在这里插入图片描述
输入你设置的密码,忘了可以重新设置(看第2步)

这个教程比较粗糙,但是实测了几台本地机器没漏步骤。

这里的端口你自己设置哈, 我觉得8888还不错。

最后的使用

后续的调用, 重复 4 5 6 步骤,先CMD连接,再服务器启动jupyter,最后本地输入网址,操作服务器运行jupyter。 相对方便

第4步如果不知道服务器的ip,就在服务器端输入 hostname -I

http://www.lryc.cn/news/403082.html

相关文章:

  • 如何定位Milvus性能瓶颈并优化
  • 阿里云服务器 篇三:提交搜索引擎收录
  • powe bi界面认识及矩阵表基本操作 - 1
  • SpringBoot 项目 pom.xml 中 设置 Docker Maven 插件
  • k8s二次开发-kubebuiler一键式生成deployment,svc,ingress
  • Flutter 状态管理新境界:多Provider并行驱动UI
  • 标识符和关键字的区别是什么,常用的关键字有哪些?自增自减运算符,移位运算符continue、break、return的区别是什么?
  • 在VS Code上搭建Vue项目教程(Vue-cli 脚手架)
  • AGI 之 【Hugging Face】 的【零样本和少样本学习】之三 [无标注数据] 的简单整理
  • Docker 和 k8s 之间是什么关系?
  • 敲详细的springframework-amqp-rabbit源码解析
  • Telegram Bot、小程序开发(三)Mini Apps小程序
  • Django F()函数
  • GraphRAG的实践
  • 自动驾驶三维车道线检测系列—LATR: 3D Lane Detection from Monocular Images with Transformer
  • 守护动物乐园:视频AI智能监管方案助力动物园安全与秩序管理
  • FairGuard游戏加固入选《嘶吼2024网络安全产业图谱》
  • 数据仓库事实表
  • LeetCode题练习与总结:两数之和Ⅱ-输入有序数组--167
  • 在 Java 中,怎样设计一个可扩展且易于维护的微服务架构?
  • 零基础入门鸿蒙开发 HarmonyOS NEXT星河版开发学习
  • Chromium CI/CD 之Jenkins实用指南2024-在Windows节点上创建任务(九)
  • ceph进程网卡绑定逻辑
  • 学习opencv
  • 利用双端队列 实现二叉树的非递归的中序遍历
  • 昇思25天学习打卡营第18天 | 基于MindSpore的GPT2文本摘要
  • 科研绘图系列:R语言circos图(circos plot)
  • 追踪Conda包的踪迹:深入探索依赖关系与管理
  • 苹果电脑pdf合并软件 苹果电脑合并pdf 苹果电脑pdf怎么合并
  • axios(ajax请求库)