『Linux笔记』服务器搭建神器JupyterLab

2023-10-17 19:30

本文主要是介绍『Linux笔记』服务器搭建神器JupyterLab,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

服务器搭建神器JupyterLab!

文章目录

  • 1. 重点步骤
    • 1.1. 安装JupyterLab
    • 1.2. 修改JupyterLab配置文件
  • 2. 后台运行
    • 2.1. nohup
    • 2.2. linux对nohup日志进行定时拆分并且删除
  • 3. 终止进程
  • 4. jupyter lab快速格式化代码PEP8规范化

  • 推荐博客: 云服务器搭建神器JupyterLab(多图)。记得用nohup命令设置一下后台运行。
  • 推荐博客: Jupyter lab 安装及多kernel配置
  • 推荐博客:在Anaconda安装多个环境,如果想在每个环境下都可以使用jupyterlab,需要挨个安装一遍吗?
  • 查看解释器的所在路径:

1. 重点步骤

1.1. 安装JupyterLab

  • 安装
pip install jupyterlab
  • 生成密码
jupyter-notebook password
  • 创建哈希密码
ipython
from notebook.auth import passwd
passwd()
# 输入你自己设置登录JupyterLab界面的密码,
# 然后就会生产下面这样的密码,将它记下来,待会儿用
'sha1:b92f3fb7d848:a5d40ab2e26aa3b296ae1faa17aa34d3df351704'

1.2. 修改JupyterLab配置文件

  • 先生成一个配置文件,记下输出的配置文件地址
jupyter lab --generate-config
  • 修改配置文件,找到下面这几行文件,注释掉并修改成这样。
c.NotebookApp.allow_root = True
c.NotebookApp.ip = '0.0.0.0'
c.NotebookApp.notebook_dir = u'/data/aibox/kaifang'
c.NotebookApp.open_browser = False
c.NotebookApp.password = u'sha1:b92f3fb7d848:a5d40ab2e26aa3b296ae1faa17aa34d3df351704'
c.NotebookApp.port = 8888
  • 对应每行稍微解释一下
允许以root方式运行jupyterlab
允许任意ip段访问
设置jupyterlab页面的根目录
默认运行时不启动浏览器,因为服务器默认只有终端嘛
设置之前生产的哈希密码
设置访问端口

2. 后台运行

2.1. nohup

  • 在云服务器中搭建好jupyter lab并运行后,发现它会占用当前终端,于是研究了一下怎么让它在后台运行。
  • 1. 入门级
jupyter lab --allow-root > jupyter.log 2>&1 &
  • 2. 进阶版
nohup jupyter lab --allow-root > jupyter.log 2>&1 &
nohup jupyter lab --port='9999' --ip='*' --notebook-dir='/data/aibox/kaifang'  --allow-root > tf.log 2>&1 &
  • 命令解释:
  • &让命令 后台运行,并把标准输出写入jupyter.log中。但当用户推出(挂起)的时候,命令自动也跟着退出
  • nohup表示no hang up不挂断的运行, 注意并没有后台运行的功能,,就是指,用nohup运行命令可以使命令永久的执行下去,和用户终端没有关系,例如我们断开SSH连接都不会影响他的运行,注意了nohup没有后台运行的意思;&才是后台运行
  • 可以参考一下这个博客的讲解:后台任务与nohup命令
  • 使用&后台运行程序:
  • 1)结果会输出到终端
  • 2)使用Ctrl + C发送SIGINT信号,程序免疫
  • 3)关闭session发送SIGHUP信号,程序关闭
  • 使用nohup运行程序:
  • 1)结果默认会输出到nohup.out
  • 2)使用Ctrl + C发送SIGINT信号,程序关闭
  • 3)关闭session发送SIGHUP信号,程序免疫
  • 平时线上经常使用nohup和&配合来启动程序: 同时免疫SIGINT和SIGHUP信号
  • 详解Linux中nohup和&的用法和区别https://zhuanlan.zhihu.com/p/258326013
  • Shell 重定向 2>&1 含义说明
  • 因为 [ find /etc -names “*.txt” ] 这条命令是错误的( -names 应该是 -name)。
  • 从左往右执行,执行到 >list,此时的 stdout 为 list;而执行到 2>&1,表示 stderr 重定向到 stdout,这里也就是 list 文件。

在这里插入图片描述

  • 推荐博客:Linux shell中2>&1的含义解释(全网最全,看完就懂):https://blog.csdn.net/zhaominpro/article/details/82630528

2.2. linux对nohup日志进行定时拆分并且删除

  • 我们通过定时备份nohup文件按照日期来保存日志信息,然后在把nohup文件清空,来实现记录当天的数据.
  • 参考链接:https://blog.51cto.com/u_15585699/5192075
  • linux crontab 定时任务详解: https://www.cnblogs.com/yahuian/p/linux-crontab.html
  • 此时借助在线的 https://crontab.guru/ 工具:https://crontab.guru/
  • linux 定时任务 crontab服务启动停止重启:https://www.jb51.cc/linux/3859407.html

3. 终止进程

  • 推荐博客:nohup和&后台运行,进程查看及终止
  • 执行上面第2条命令,可以发现关闭终端重新打开后,用jobs找不到jupyter这个进程了, 于是要用ps -a,可以显示这个进程的pid
kill -9 pid 终止进程# 查看端口使用情况,使用netstat命令。查看已经连接的服务端口(ESTABLISHED
netstat -a
# 查看所有的服务端口(LISTEN,ESTABLISHED)
netstat -ap
# 查看8080端口,则可以结合grep命令:
netstat -ap | grep 8080#v如查看8888端口,则在终端中输入:
lsof -i:8888

4. jupyter lab快速格式化代码PEP8规范化

pip install jupyterlab_code_formatter
  • 1. 如果你的jupyter lab版本小于3.0.0 还需要执行以下代码
jupyter serverextension enable --py jupyterlab_code_formatter
jupyter labextension install @ryantam626/jupyterlab_code_formatter
  • 2. 安装支持的代码格式化程序
pip install autopep8 isort
  • 3. 重启 Jupyterlab
  • 4. 配置插件
  • 1. 按照“Settings” > “Advanced Settings Editor” > “Jupyterlab Code Formatter”,在右侧的 “User Preferences” 中输入一下内容
{"preferences": {"default_formatter": {"python": "autopep8","R": "styler"}}
}

在这里插入图片描述

  • 2. 设置快捷键:不设置快捷键需要右键单击代码块然后选择Format cell进行格式化 比较麻烦,Advanced Setting Edtior 下选择Keyboard Shortcuts,同样在右侧 “User Preferences” 中输入一下内容
{"shortcuts": [{"command": "jupyterlab_code_formatter:autopep8","keys": ["Ctrl Alt L"],"selector": ".jp-Notebook.jp-mod-editMode"}]
}

在这里插入图片描述

  • 参考文献:jupyter lab 快速格式化代码 PEP8规范化https://blog.csdn.net/weixin_42124536/article/details/118862309

这篇关于『Linux笔记』服务器搭建神器JupyterLab的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/227466

相关文章

Linux中压缩、网络传输与系统监控工具的使用完整指南

《Linux中压缩、网络传输与系统监控工具的使用完整指南》在Linux系统管理中,压缩与传输工具是数据备份和远程协作的桥梁,而系统监控工具则是保障服务器稳定运行的眼睛,下面小编就来和大家详细介绍一下它... 目录引言一、压缩与解压:数据存储与传输的优化核心1. zip/unzip:通用压缩格式的便捷操作2.

Linux中SSH服务配置的全面指南

《Linux中SSH服务配置的全面指南》作为网络安全工程师,SSH(SecureShell)服务的安全配置是我们日常工作中不可忽视的重要环节,本文将从基础配置到高级安全加固,全面解析SSH服务的各项参... 目录概述基础配置详解端口与监听设置主机密钥配置认证机制强化禁用密码认证禁止root直接登录实现双因素

mysql中的服务器架构详解

《mysql中的服务器架构详解》:本文主要介绍mysql中的服务器架构,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、mysql服务器架构解释3、总结1、背景简单理解一下mysqphpl的服务器架构。2、mysjsql服务器架构解释mysql的架

在Linux终端中统计非二进制文件行数的实现方法

《在Linux终端中统计非二进制文件行数的实现方法》在Linux系统中,有时需要统计非二进制文件(如CSV、TXT文件)的行数,而不希望手动打开文件进行查看,例如,在处理大型日志文件、数据文件时,了解... 目录在linux终端中统计非二进制文件的行数技术背景实现步骤1. 使用wc命令2. 使用grep命令

Linux如何快速检查服务器的硬件配置和性能指标

《Linux如何快速检查服务器的硬件配置和性能指标》在运维和开发工作中,我们经常需要快速检查Linux服务器的硬件配置和性能指标,本文将以CentOS为例,介绍如何通过命令行快速获取这些关键信息,... 目录引言一、查询CPU核心数编程(几C?)1. 使用 nproc(最简单)2. 使用 lscpu(详细信

linux重启命令有哪些? 7个实用的Linux系统重启命令汇总

《linux重启命令有哪些?7个实用的Linux系统重启命令汇总》Linux系统提供了多种重启命令,常用的包括shutdown-r、reboot、init6等,不同命令适用于不同场景,本文将详细... 在管理和维护 linux 服务器时,完成系统更新、故障排查或日常维护后,重启系统往往是必不可少的步骤。本文

如何使用Haporxy搭建Web群集

《如何使用Haporxy搭建Web群集》Haproxy是目前比较流行的一种群集调度工具,同类群集调度工具有很多如LVS和Nginx,本案例介绍使用Haproxy及Nginx搭建一套Web群集,感兴趣的... 目录一、案例分析1.案例概述2.案例前置知识点2.1 HTTP请求2.2 负载均衡常用调度算法 2.

基于Linux的ffmpeg python的关键帧抽取

《基于Linux的ffmpegpython的关键帧抽取》本文主要介绍了基于Linux的ffmpegpython的关键帧抽取,实现以按帧或时间间隔抽取关键帧,文中通过示例代码介绍的非常详细,对大家的学... 目录1.FFmpeg的环境配置1) 创建一个虚拟环境envjavascript2) ffmpeg-py

MySQL MCP 服务器安装配置最佳实践

《MySQLMCP服务器安装配置最佳实践》本文介绍MySQLMCP服务器的安装配置方法,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下... 目录mysql MCP 服务器安装配置指南简介功能特点安装方法数据库配置使用MCP Inspector进行调试开发指

在Windows上使用qemu安装ubuntu24.04服务器的详细指南

《在Windows上使用qemu安装ubuntu24.04服务器的详细指南》本文介绍了在Windows上使用QEMU安装Ubuntu24.04的全流程:安装QEMU、准备ISO镜像、创建虚拟磁盘、配置... 目录1. 安装QEMU环境2. 准备Ubuntu 24.04镜像3. 启动QEMU安装Ubuntu4