超详细!!服务器搭jupyter notebook及挂起和关闭进程

2023-10-27

再次警告⚠️……没有在小小demo上试验成功的代码不要放到服务器上造垃圾

一、服务器上配置jupyter

1.1 ssh连接到服务器,cd到你想建立jupyer的服务器目录下执行:

$ jupyter notebook --generate-config

然后会出现
在这里插入图片描述

1.2生成密码

$ python

>>> from IPython.lib import passwd
>>>passwd()

需要你两次输入你想设置的密码,然后返回一个’argon2:$argon……‘加密之后的字符串将其复制 ctrl+z退回终端

1.3打开jupyter_notebook_config.py文件,在开头写下面的

直接在ssh连接browse remote host后打开文件复制粘贴哇!!第一次自己在服务器手动敲的

c.NotebookApp.ip='xxx.xx.xx.xxx' #你的服务器ip
c.NotebookApp.password='argon2:$argon2idxxxxxx'	#密码
c.NotebookApp.open_browser=False 		#不在服务器打开浏览器
c.NotebookApp.allow_remote_access=True 
c.NotebookApp.port=8888 #端口 这里虽然设置了8888但是如果端口冲突会给你换一个开
c.NotebookApp.notebook_dir = '/home/xxx/xxxxxx' #jupyter的工作目录
1.4运行jupyter notebook

$ jupyter notebook
指定端口号或者ip
$ jupyter notebook --no-browser --port 6000 --ip=192.168.1.100
如果你直接运行这条语句,结果如下图,点击蓝色连接就会进入到jupyter,输入上面设置的密码就可以用了
但是始终占用一个终端命令窗口,你ctrl+z之后就无法访问,再jupyter notebook之后,会给你打开新的端口
在这里插入图片描述
你想用回8888端口访问怎么办?
$ ps -aux | grep jupyter
查看运行中的jupyter 进程,杀死他们的pid,也就是第一列
在这里插入图片描述

kill -9 26989
kill -9 26993
kill -9 26999

然后再查看,发现杀不死的话试试$ ps -ef | grep jupyter查pid
这样太麻烦了,一个是端口号不固定,还有就是不能让进程一直运行

二、后台挂载

nohup jupyter notebook --allow-root > jupyter.log 2>&1 &
会把原本在终端限时的运行状态写到jupyter.log 里
后台挂载后也不能print了,可以把结果写在log里

这样即使关掉ssh连接也会一直在后台运行

然后你不能一直挂载吧,任务结束就用上面的办法查看pid,杀死进程

三、附赠cuda()怎么写

简单来说就是穿进去模型的变量和模型自身要.cuda(),显示结果要.cpu()
因为要在mac和服务器之间反复横跳…,用另一种写法torch.device()
知道两句话你听不懂,我们下面举几个例子

###在最开始设置device
device = torch.device('cuda' if torch.cuda.is_available() else 'cpu')
#找模型定义的地方
model = x.Model(config).to(device)

#可以在生成x,y iter的时候to
'''
class DatasetIterater(object):
    def __init__(self, batches, batch_size, device):
        self.batch_size = batch_size
        self.batches = batches
        self.n_batches = len(batches) // batch_size
        self.residue = False  # 记录batch数量是否为整数
        if len(batches) % self.n_batches != 0:
            self.residue = True
        self.index = 0
        self.device = device
'''
    def _to_tensor(self, datas):
        x = torch.LongTensor([_[0] for _ in datas]).to(self.device)
        y = torch.LongTensor([_[1] for _ in datas]).to(self.device)
'''
        # pad前的长度(超过pad_size的设为pad_size)
        seq_len = torch.LongTensor([_[2] for _ in datas]).to(self.device)
        return (x, seq_len), y
'''

#也可以在传进去模型的时候to
inputs, targets = data[0].cuda(), data[1].cuda()
outputs = model(inputs)


#需要输出显示的值.cpu()
target = labels.data.cpu()
predic = torch.max(outputs.data, 1)[1].cpu()
train_acc = metrics.accuracy_score(target, predic)
#在验证或者预测函数(而不是train)需要直接用output 记得detach()
preds.append(outputs.detach().cpu().numpy())

会提示cuda memory不够了的话

我做的办法是先kill掉jupyter 进程……(这样变量会丢失,希望有更方便的方法)
然后检查自己验证函数,它是不需要梯度的

    with torch.no_grad():
        outputs = model(inputs)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

超详细!!服务器搭jupyter notebook及挂起和关闭进程 的相关文章

随机推荐

  • 读取jar文件内容

    一 SpringBoot项目打包成jar后读取文件的大坑 使用ClassPathResource获取classpath下文件失败 java io FileNotFoundException class path resource World
  • less 函数_前端开发:less-gulp如何使用?

    大家好 我来了 本期为大家带来的前端入门知识是 前端开发 less gulp如何使用 有兴趣做前端的朋友 和我一起来看看吧 主要内容 less gulp less和gulp 学习目标 第一节 less上 1 less介绍 是css的预处理语
  • 从 Deblur GAN ( Keras ) 导出模型训练参数

    由于 deblur gan master 实现上用的是 deblur gan 0c0c0296f143b7a070a0969cb64a8774f8e79f1d 也有一个去模糊的生成模型 generator h5 先安装 Keras 运行 p
  • 家人们,有多久没看读者了

    我好像很久没有看 读者 了 可能是高中毕业之后 当时我很喜欢读这个期刊 虽然里面的很多文章都不太懂 但我还是把它当作小说来看 最近突然想起它 于是一口气看完了一年的 读者 期刊 希望提升一下自己的写作能力 没想到 读完以后却让我充满了感慨
  • 学计算机的前后对比,2020计算机考研(408)大纲前后对比分析!

    2020计算机考研 408 大纲已发布 计算机考研 408 大纲对于考研计算机复习具有指导意义 让复习方向化零为整 提高复习效率 在考研大纲发布后 学府考研招生老师第一时间整理2020计算机考研 408 大纲 速来查阅吧 更有2020考研大
  • 重置密码解决MySQL5.7 for Linux错误 ERROR 1045 (28000): Access denied for user 'root'@'localhost'

    一般这个错误是由密码错误引起 解决的办法自然就是重置密码 假设我们使用的是root账户 1 重置密码的第一步就是跳过MySQL的密码认证过程 方法如下 vim etc my cnf 注 windows下修改的是my ini 在文档内搜索my
  • centos4.7+rac+oracle10g + asm安装遇到问题

    author skate time 2010 12 23 centos4 7 rac oracle10g asm安装遇到问题 1 在ORACLE 10G在安装cluster时 第到61 的时候 就提示如下错误 WARNING Error w
  • 构建面向全世界的网站——gettext支持多种语言

    原文地址 http book 51cto com art 200905 123469 htm 构建面向全世界的网站 Web的出现使人们之间的交流简单得不可思议 通过一个Internet连接和一个Web浏览器 你就可以与任何人通信 而此时此刻
  • 【ArcGIS】ArcGIS10.2完整安装操作手册-配置SDE的ST_Geometry

    操作原因 在 Oracle 中 ST Geometry 和 ST Raster 的 SQL 函数使用通过 Oracle 的外部过程代理 即 extproc 访问的共享库 要将 SQL 和 ST Geometry 或 ST Raster 配合
  • Go语言基础篇 (二)安装VSCode开发环境

    文章目录 前言 开发环境概述 安装VSCode 安装Remote SSH插件 Linux系统安装openssh 配置Remote SSH 测试 下期预告 参考连接 前言 无论什么编程语言 一个得心应手的开发环境 不仅可以提高我们的开发效率
  • (z) 什么是好的硬件工程师

    1 具备高质量产品交付能力 具备完备的知识体系 有完整的较复杂硬件产品的交付能力和经验 全面把握硬件研发流程 对可靠性 可维护性 可测试性 可生产性 可供应性有深入理解和实战经验 首先要结果导向 做过好的产品 或者说做得出好产品的工程师 才
  • 天池布匹瑕疵检测代码实现问题

    天池布匹瑕疵检测GitHub代码实现 一 数据处理 转换成coco数据集 实现过程遇到的问题 数据集处理部分分为两组 每组都要删除一次模板图片 GitHub上少了第二次数据删除处理操作 后续数据处理操作都是合理的 没有问题 下一节会贴出预训
  • unity 利用PlayerPrefs实现关卡解锁功能

    关卡结构 在关卡中确认过关的地方 添加 public int jiesuo jiesuo SceneManager GetActiveScene buildIndex PlayerPrefs SetInt jiesuo jiesuo 然后在
  • Centos8 配置静态IP

    安装centos 8之后 重启启动网络时 会出现以下报错 报错信息如下 Failed to start network service Unit network service not found 意思为无法重启网络服务 原因是无法找到ne
  • Pig基本语法项目实战

    Apache Pig是一个高级过程语言 适合使用Hadoop和Mapreduce平台来查询大型半结构化数据 当Pig处理数据时 Pig本身 会在后台生成一系列得MapReduce操作来执行任务 这个过程对用户来说是透明的 用于执行Pig L
  • mysql连接符_【MySQL】字符串连接

    CONCAT 函数 可以连接一或者多个字符串 不过其中如果有 Null 就直接返回 Null mysql gt select concat 11 22 33 44 concat 11 22 33 44 11223344 1 row in s
  • 2022年泰迪杯数据分析_B题:银行客户忠诚度分析赛题数据_任务五

    银行客户长期忠诚度预测建模 此处忠诚度的指标选取为客户的流失情况 该指标分为两类 长期客户忠诚用1表示 不忠诚则用0表示 对此预测建模中 使用到机器学习分类中的随机森林分类 import pandas as pd long data26 p
  • 华为OD机试真题- 阿里巴巴找黄金宝箱(V)-2023年OD统一考试(B卷)

    题目描述 一贫如洗的樵夫阿里巴巴在去砍柴的路上 无意中发现了强盗集团的藏宝地 藏宝地有编号从0 N的箱子 每个箱子上面贴有一个数字 阿里巴巴念出一个咒语数字k k
  • excel文件隔行删除数据并保存

    现阶段用代码实现 隔四行删除数据 import pandas as pd 读取 Excel 文件 excel file xxxx xlsx df pd read excel excel file rows to keep 要删除的行数 sk
  • 超详细!!服务器搭jupyter notebook及挂起和关闭进程

    再次警告 没有在小小demo上试验成功的代码不要放到服务器上造垃圾 一 服务器上配置jupyter 1 1 ssh连接到服务器 cd到你想建立jupyer的服务器目录下执行 jupyter notebook generate config