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

没有管理员权限,在服务器安装使用 Jupyter + R 内核

问题:想在借用的服务器上安装Rstudio server(服务器安装了R4.2.0版本),但无管理员权限,并且也无权限执行 Docker 命令,只能选用Jupyter + R 内核方案。

步骤:

# 安装 miniconda(用户空间)
wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
bash Miniconda3-latest-Linux-x86_64.sh -b -p $HOME/miniconda
source ~/miniconda/bin/activate# 创建环境
conda create -n r-env python=3.9
conda activate r-env# 安装 Jupyter
conda install -c conda-forge jupyter -y# 安装 R 内核
conda install -c conda-forge r-irkernel
R -e "IRkernel::installspec()"# 启动 Jupyter
jupyter notebook --no-browser --port=8889

启动jupyter后,如果出现以下问题:

fail to get yarn configuration. /usr/bin/node: relocation error: /lib64/libnode.so.93: symbol FIPS_selftest, version OPENSSL_1_1_0g not defined in file libcrypto.so.1.1 with link time reference

原因:看起来是系统自带的`/usr/bin/node`(Node.js)与系统openssl库版本不兼容。

解决方式:使用conda安装的nodejs

conda install -c conda-forge nodejs -y

重新启动Jupyter即可,Jupyter Notebook成功启动并正在运行后,以下为访问 Jupyter Notebook 的步骤:

1. 在您的本地电脑上创建 SSH 隧道
打开一个新的终端窗口(在您的本地电脑上,不是服务器上),运行:

ssh -N -L 8889:localhost:8889 您的用户名@服务器IP地址 -p 端口号

例如:

ssh -N -L 8889:localhost:8889 yanzijun@192.168.1.100 -p 13579

 2. 在浏览器中访问 Jupyter
打开您本地电脑上的浏览器,访问以下 URL(token在启动jupyter输出内容里):

http://localhost:8889/tree?token=9e44dc508cca5f7b57be9dfffe334093f0abbb6e36fa9ef0

注意:

不要关闭终端窗口:服务器上的终端窗口(运行 Jupyter 的那个)必须保持打开状态,Jupyter 服务才能继续运行。如果您需要关闭终端但保持 Jupyter 运行,可以使用 nohup,这样 Jupyter 会在后台运行,输出会保存到 jupyter.log 文件中。当完成工作后,在运行 Jupyter 的终端窗口中按Ctrl+C 一次则为停止服务,Ctrl+C 两次为强制停止。

nohup jupyter notebook --no-browser --port=8889 > jupyter.log 2>&1 &

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

相关文章:

  • springboot生成pdf方案之dot/html/图片转pdf三种方式
  • 深度学习入门教程(三)- 线性代数教程
  • SQL:数据库查询语言的核心技术
  • 语音对话秒译 + 视频悬浮字 + 相机即拍即译:ViiTor 如何破局跨语言场景?
  • FPGA实现SDI转LVDS视频发送,基于GTP+OSERDES2原语架构,提供工程源码和技术支持
  • 每日一SQL 【游戏玩法分析 IV】
  • 物联网应用开发技术趋势与实践指南
  • 华为数据通信网络基础
  • 《Java EE与中间件》实验三 基于Spring Boot框架的购物车
  • 搭建渗透测试环境
  • 每天一个前端小知识 Day 28 - Web Workers / 多线程模型在前端中的应用实践
  • Java Stream流介绍及使用指南
  • 冒泡排序和快速排序
  • 嵌入式C语言-define和const区别
  • 炎热工厂救援:算法打造安全壁垒
  • 【实时Linux实战系列】现有应用迁移到实时环境的步骤
  • 零信任落地难题:安全性与用户体验如何两全?
  • G1 垃圾回收算法详解
  • 类之间的纵向关系——继承
  • rom定制系列------红米note10 5G版camellia原生安卓14批量线刷 miui安卓11修改型号root版
  • bash中||与的区别
  • consul 的安装与服务发现
  • Python PDFplumber详解:从入门到精通的PDF处理指南
  • Java 深入解析:JVM对象创建与内存机制全景图
  • mysql中的自增ID
  • k8s-高级调度(一)
  • cefSharp.WinForms.NETCore 138.xx (cef138/Chromium 138.0.7204.97) 升级测试体验
  • 《从依赖纠缠到接口协作:ASP.NET Core注入式开发指南》
  • tcp/quic 的滑动窗口
  • 基于ASP.NET+SQL Server实现(Web)企业进销存管理系统