Camp4-L0:Linux 前置基础

书生浦语大模型实战营Camp4-L0:Linux前置基础

  • 教程地址:https://github.com/InternLM/Tutorial/tree/camp4/docs/L0/linux
  • 任务地址:https://github.com/InternLM/Tutorial/blob/camp4/docs/L0/linux/task.md
任务描述完成所需时间
闯关任务完成SSH连接与端口映射并运行hello_world.py10min
可选任务 1将Linux基础命令在开发机上完成一遍10min
可选任务 2使用 VSCODE 远程连接开发机并创建一个conda环境10min
可选任务 3创建并运行test.sh文件10min

闯关任务

完成SSH连接与端口映射并运行hello_world.py

第一步:首先按照教程创建开发机,然后点击ssh连接

在这里插入图片描述
在这里插入图片描述

第二步:按照教程配置ssh公钥以及配置vscode

在这里插入图片描述
然后就可以愉快地通过vscode连接开发机了,非常丝滑:
在这里插入图片描述

第三步:创建环境并安装gradio,主要命令如下

conda create -n py10 python=3.10 -y
conda activate py10
pip install gradio

第四步:新建文件夹homework,用于保存作业,新建hello_world.py,输入相应代码:

import socket
import re
import gradio as gr
 
# 获取主机名
def get_hostname():
    hostname = socket.gethostname()
    match = re.search(r'-(\d+)$', hostname)
    name = match.group(1)
    
    return name
 
# 创建 Gradio 界面
with gr.Blocks(gr.themes.Soft()) as demo:
    html_code = f"""
            <p align="center">
            <a href="https://intern-ai.org.cn/home">
                <img src="https://intern-ai.org.cn/assets/headerLogo-4ea34f23.svg" alt="Logo" width="20%" style="border-radius: 5px;">
            </a>
            </p>
            <h1 style="text-align: center;">☁️ Welcome {get_hostname()} user, welcome to the ShuSheng LLM Practical Camp Course!</h1>
            <h2 style="text-align: center;">😀 Let’s go on a journey through ShuSheng Island together.</h2>
            <p align="center">
                <a href="https://github.com/InternLM/Tutorial/blob/camp3">
                    <img src="https://oss.lingkongstudy.com.cn/blog/202406301604074.jpg" alt="Logo" width="20%" style="border-radius: 5px;">
                </a>
            </p>

            """
    gr.Markdown(html_code)

demo.launch()

运行hello_world.py:

python hello_world.py

第五步:使用ssh做端口转发,或者直接用vscode地端口转发即可,命令行端口转发如下:

ssh -p 37367 root@ssh.intern-ai.org.cn -CNg -L {本地机器_PORT}:127.0.0.1:{开发机_PORT} -o StrictHostKeyChecking=no

例如:

ssh -p 37367 root@ssh.intern-ai.org.cn -CNg -L 7860:127.0.0.1:7860 -o StrictHostKeyChecking=no

说明:

个人PC会远程连接到开发机唯一暴露在外的37367端口,(这个在SSH的时候提到过每个人的开发机暴露的端口都不一样),并设置隧道选项。暴露端口是作为中转站进行流量的转发。

  • -C:启用压缩,减少传输数据量。
  • -N:不执行远程命令,只建立隧道。
  • -g:允许远程主机连接到本地转发的端口。

当在个人PC上执行这个SSH命令后,SSH客户端会在本地机器的7860端口上监听。

任何发送到本地7860端口的流量,都会被SSH隧道转发到远程服务器的127.0.0.1地址上的7860端口。

这意味着,即使开发机的这个端口没有直接暴露给外部网络,我们也可以通过这个隧道安全地访问远程服务器上的服务。

划重点:强烈建议配置ssh公钥,然后配置好vscode,用vscode做端口自动转发很方便
在这里插入图片描述
运行结果如下:
在这里插入图片描述

可选任务1

将Linux基础命令在开发机上完成一遍

这个按照教程跑一遍即可,这里做个记录:

文件管理

  • 创建文件:可以使用 touch 命令创建空文件。
  • 创建目录:使用 mkdir 命令。
  • 目录切换:使用cd命令。
  • 显示所在目录:使用pwd命令。
  • 查看文件内容:如使用 cat 直接显示文件全部内容,moreless 可以分页查看。
  • 编辑文件:如 vivim 等编辑器。
  • 复制文件:用 cp 命令。
  • 创建文件链接:用ln命令。
  • 移动文件:通过 mv 命令。
  • 删除文件:使用 rm 命令。
  • 删除目录rmdir(只能删除空目录)或 rm -r(可删除非空目录)。
  • 查找文件:可以用 find 命令。
  • 查看文件或目录的详细信息:使用ls命令,如使用 ls -l查看目录下文件的详细信息。
  • 处理文件:进行复杂的文件操作,可以使用sed命令。

进程管理

进程管理命令是进行系统监控和进程管理时的重要工具,常用的进程管理命令有以下几种:

  • ps:查看正在运行的进程
  • top:动态显示正在运行的进程
  • pstree:树状查看正在运行的进程
  • pgrep:用于查找进程
  • nice:更改进程的优先级
  • jobs:显示进程的相关信息
  • bg 和 fg:将进程调入后台
  • kill:杀死进程

工具使用

  • 这里介绍了tmux,本人还是更喜欢screen这个工具,选择其一就好
  • conda,环境管理
  • shell,基本操作

可选任务2

使用 VSCODE 远程连接开发机并创建一个conda环境
这个在做闯关任务的时候,已经完成了,用vscode很是方便

可选任务3

**创建并运行test.sh文件 **
创建一个test.sh文件,用于安装xtuner环境,内容如下

# 创建虚拟环境
conda create -n llamaindex python=3.10 -y
conda activate llamaindex
pip install llama-index==0.10.38 

运行bash test.sh即可。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/903450.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

「虚拟现实中的心理咨询:探索心灵世界的新方法」

内容概要 当我们想到虚拟现实时&#xff0c;很多人会联想到游戏或娱乐&#xff0c;但如今其在心理咨询领域的应用正在逐渐崭露头角。传统的心理咨询方式常常局限在咨询室内&#xff0c;面临着空间和情感隔阂的问题。然而&#xff0c;沉浸式环境的出现&#xff0c;使得治疗者能…

python:ADB通过包名打开应用

一、依赖库 os 二、命令 1.这是查看设备中所有应用包名的最简单方法。只需在命令行中输入以下命令&#xff1a; adb shell pm list packages 2.打印启动的程序包名 adb shell am monitor回车&#xff0c;然后启动你想要获取包名的那个应用&#xff0c;即可获得 3.查看正在运…

【面试每日一题之CSS】2、line-height和heigh区别

line-height和heigh区别 前言1、试题分析讲解2、代码模块眼见为实3、效果对比 前言 随着就业形式的压力&#xff0c;很多人都可能面临着待业&#xff0c;再就业的情况&#xff0c;那么在乾坤未定之际好好的丰实自己的羽翼吧&#xff0c;没有啥比壮大自己重要&#xff0c;所以我…

ICLR25初审稿按照自己喜好整理自己需要的(逐渐更新)

ICLR25初审稿按照自己喜好整理自己需要的&#xff08;逐渐更新) 光谱GNN合集&#xff08;10.29初筛&#xff09; 数据集 大类数据集名称pygcora &#xff0c;citeseer &#xff0c;pubmed&#xff0c;cornell&#xff0c;texas&#xff0c;wisconsin,flickr,reddit,actor,ph…

QT实时显示日志内容

性能有待提高&#xff1b; 能够读取指定目录下的日志文件&#xff0c;显示在下拉框中。 选择某一个日志之后&#xff0c;点击获取数据按钮&#xff0c;能够实时刷新日志内容。 但是每次刷新都会对整个文件进行读取&#xff0c;文本框重新加载文本。效率很低&#xff0c;影响性能…

服务器数据恢复—异常断电导致服务器挂载分区无法访问的数据恢复案例

服务器数据恢复环境&#xff1a; 某品牌服务器同品牌存储&#xff0c;Linux centos7EXT4文件系统。 服务器故障&#xff1a; 意外断电导致服务器操作系统不能正常启动。经过修复后系统可以正常启动&#xff0c;但是挂载的分区无法正常访问。使用fsck修复这个问题分区&#xff…

驾校管理系统|基于java和小程序的驾校管理系统设计与实现(源码+数据库+文档)

驾校管理系统平台 目录 基于java和小程序的驾校管理系统设计与实现 一、前言 二、系统设计 三、系统功能设计 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐 八、源码获取&#xff1a; 博主介绍&#xff1a;✌️大厂码农|毕设布道师&#…

GaussDB高智能--自治运维技术(下)

书接上文GaussDB高智能--自治运维技术&#xff08;中&#xff09;&#xff0c;从日志分析、慢SQL发现、慢SQL诊断、集群故障根因诊断等方面介绍了GaussDB的自治运维技术&#xff0c;本篇将从索引推荐、分布键推荐、参数调优等三方面继续解读GaussDB的自治运维技术。 8 索引推荐…

【Linux】基础IO-下

目录 1、重定向 2、缓冲区 3、简单模拟实现C文件标准库 1、重定向 #include <stdio.h> #include <unistd.h> #include <sys/types.h> #include <sys/stat.h> #include <fcntl.h> #include <string.h>#define filename "log.txt&qu…

Java(三十) --- 基于比较的七大比较的排序算法(巨详细)

文章目录 前言1. 排序的概念和引用2.直接插入排序3.希尔排序(缩小增量排序)4. 直接选择排序5. 堆排序6. 冒泡排序7.快速排序7.1.Hoare法7.2.挖坑法7.3.快速排序的优化7.4.非递归方法 8.归并排序8.1.递归方法8.2.非递归方法8.3 海量数据的排序问题 9. 七大比较排序的复杂度以及稳…

构建安全基石:网络安全等级保护定级指南

在数字化时代&#xff0c;网络安全已成为企业与个人不可忽视的重要课题。网络安全等级保护定级指南&#xff0c;作为国家指导网络安全保护的重要文件&#xff0c;为各类机构提供了精准的安全防护蓝图。本文旨在深度解析网络安全等级保护定级指南的精髓&#xff0c;助力建构全面…

Docker-在Centos中部署Shell脚本获取镜像并构建容器

环境准备 1.Centos 7系统 参考&#xff1a;Centos安装 2.demo镜像推送到阿里云 参考demo镜像推送到阿里云 Centos操作 1.修改demo中相关配置springboot-docker-demo\bin\docker-deploy.sh ## 仓库地址 REGISTRY_SERVER公有网络域名 ## 用户名 USERNAME阿里云账号 ## 密码 P…

背包问题全解

文章目录 01背包一、01背包模板二、采药三、装箱问题四、宠物小精灵之收服五、数字组合 完全背包六、完全背包模板七、买书八、货币系统&#xff08;简单版&#xff09;九、货币系统&#xff08;进阶版&#xff09; 01背包 一、01背包模板 还有个疑惑&#xff0c;为什么最大价…

【高阶数据结构】红黑树的插入(超多精美图解+完整代码)

&#x1f921;博客主页&#xff1a;醉竺 &#x1f970;本文专栏&#xff1a;《高阶数据结构》 &#x1f63b;欢迎关注&#xff1a;感谢大家的点赞评论关注&#xff0c;祝您学有所成&#xff01; ✨✨&#x1f49c;&#x1f49b;想要学习更多《高阶数据结构》点击专栏链接查看&a…

51单片机应用开发(进阶)---外部中断(按键+数码管显示0-F)

实现目标 1、巩固数码管、外部中断知识 2、具体实现&#xff1a;按键K4&#xff08;INT1&#xff09;每按一次&#xff0c;数码管从0依次递增显示至F&#xff0c;再按则循环显示。 一、共阳数码管 1.1 共阳数码管结构 1.2 共阳数码管码表 共阳不带小数点0-F段码为&#xff…

MacOS上Homebrew 安装、配置、更改国内镜像源及使用教程

Homebrew笔记 1. 介绍 官网&#xff1a;https://brew.sh/ 对于习惯了使用命令来完成一切的程序员来说&#xff0c;安装软件这种小事&#xff0c;自然是能够用命令解决&#xff0c;就不用图形界面选择。但是在 Linux 中&#xff0c;我们有 yum、apt、dnf、pkg等命令来完成软件的…

LeetCode 热题 100之链表1

1.相交链表 思路分析&#xff08;直接上双指针&#xff09;&#xff1a; 初始化两个指针&#xff0c;分别指向两个链表的头节点 headA 和 headB遍历两个链表&#xff0c;当指针到达链表的末尾时&#xff0c;将指针移动到另一个链表的头部 如果链表相交&#xff0c;两个指针会在…

【含开题报告+文档+PPT+源码】基于SSM的旅游与自然保护平台开发与实现

开题报告 围场县拥有丰富的自然景观和野生动植物资源&#xff0c;同时面临着旅游业发展和自然保护之间的平衡问题&#xff0c;通过强调自然保护&#xff0c;这个平台可以教育游客如何尊重和保护当地的生态环境。同时&#xff0c;平台还可以提供关于生态保护的信息&#xff0c;…

立仪光谱共焦在玻璃上奥秘与应用

在现代工业和科学研究中&#xff0c;玻璃因其透明、坚硬和易加工的特性被广泛应用于各个领域。然而&#xff0c;玻璃的厚度测量一直是困扰业界的一大难题。传统的千分尺或电容式传感器虽然在一定程度上能满足生产需求&#xff0c;但在精度、效率以及适用范围上存在明显的局限。…

中航资本:市盈率静和动分别是什么意思?市盈率静和动看哪个准?

市盈率静和动别离是什么意思&#xff1f; 市盈率静就是指静态市盈率&#xff0c;是以最新一期的年报为核算根据&#xff0c;其数据核算公式为&#xff1a;总市值最新一期的年报的净利润&#xff0c;年报的净利润可所以作用快报或作用预告发布的数据。 市盈率动就是动态市盈率…