【Linux】B站黑马程序视频学习笔记(一)
一、Linux内核与发行版
注意:下图程序指向内核的箭头用的是“调用”,内核指向硬件用的是“调度”。
Linux内核代码下载网站:https://www.kernel.org/
二、虚拟机-VMware
学习Linux可以借助虚拟机(其使用到的CPU、内存、硬盘都是软件模拟出来的)。
1、在VMware软件中新建虚拟机。
2、在虚拟机中安装发行版Linux系统,比如ubuntu或者CentOs。
三、远程连接虚拟机
1、工具:
如果只使用命令行,可以直接使用ssh。
对于Windows用户,可以使用FinalSSH、MobaXterm、SecureCRT、Wetest等工具。
2、步骤:
(1)通过ifconfig查看远程Linux的ip地址。
(2)在FinalSSH等工具上根据SSH端口号22和IP地址进行链接。
(3)如果要链接FTP还可以使用ipop等工具,如果要VPN使用VPN工具等。
3、思考:为什么要远程连接Linux?
1. 硬件资源限制
- 物理访问不便:很多时候,Linux 服务器或开发环境运行在数据中心、云端或远程位置,开发者无法直接接触到物理机器。通过 SSH 等工具,开发者可以远程访问这些系统,而不需要物理接触。
- 多用户共享资源:在团队开发中,多个开发者可能需要共享同一台服务器或开发环境。通过远程连接工具,每个人都可以独立地访问系统,而不会互相干扰。
2. 开发环境的隔离性
- 测试和部署环境分离:开发者通常需要在不同的环境中测试代码,比如开发环境、测试环境和生产环境。这些环境可能分布在不同的服务器上,通过 SSH 可以方便地切换和管理这些环境。
- 避免本地环境污染:直接在本地机器上开发可能会导致环境依赖问题(如库版本冲突)。通过远程连接到一个干净的开发环境,可以避免这些问题。
3. 远程服务器的管理需求
- 服务器维护:许多 Linux 系统运行在远程服务器或云平台上(如 AWS、阿里云)。这些服务器通常没有图形界面,只能通过命令行工具(如 SSH)进行管理。
- 自动化部署:开发者需要通过远程连接工具来执行自动化部署脚本,或者在远程服务器上运行 CI/CD 流程。
4. 安全性
- 集中式管理:通过 SSH 等工具,可以集中管理多个服务器的访问权限,确保只有授权用户可以访问系统。
- 加密通信:SSH 提供了加密的通信通道,可以保护数据传输的安全性,避免敏感信息被窃取。
5. 灵活性和扩展性
- 随时随地访问:开发者可以在任何有网络的地方通过 SSH 连接到远程系统,方便进行开发和调试。
- 支持多种协议:除了 SSH,还可以通过 VNC、RDP 等工具访问图形界面,或者通过端口转发实现复杂的网络操作。
6. 成本和效率
- 节省硬件成本:通过远程连接,开发者不需要为每个人配备独立的物理机器,可以共享服务器资源。
- 提高开发效率:远程连接工具支持多任务处理(如 tmux 或 screen),开发者可以在一个会话中同时运行多个任务,提高工作效率。
总结
- 在 Linux 开发中,使用 SSH 等远程连接工具是行业标准。这种方式不仅解决了硬件资源限制和物理访问不便的问题,还提供了安全性、灵活性和效率。通过这些工具,开发者可以轻松管理远程服务器、测试代码、部署应用,并确保开发环境的隔离性和一致性。
相关文章:
【Linux】B站黑马程序视频学习笔记(一)
一、Linux内核与发行版 注意:下图程序指向内核的箭头用的是“调用”,内核指向硬件用的是“调度”。 Linux内核代码下载网站:https://www.kernel.org/ 二、虚拟机-VMware 学习Linux可以借助虚拟机(其使用到的CPU、内存、硬盘都是…...
HarmonyOS NEXT——【鸿蒙原生应用加载Web页面】
鸿蒙客户端加载Web页面: 在鸿蒙原生应用中,我们需要使用前端页面做混合开发,方法之一是使用Web组件直接加载前端页面,其中WebView提供了一系列相关的方法适配鸿蒙原生与web之间的使用。 效果 web页面展示: Column()…...
【软件工程】习题及答案
目录 第一章 习题第一章 习题答案第二章 习题第二章 习题答案第三章 习题第三章 习题答案第四章 习题第四章 习题答案第五章 习题第五章 习题答案第六章 习题第六章 习题答案第七章 习题第七章 习题答案 第一章 习题 一、选择题 1.关于引起软件危机的原因ÿ…...
css选择最后结尾的元素DOM
前言 选中最后一个元素,实际使用非常频繁。 解决方案 使用 CSS 提供的选择器,即可完成。 如下代码示例,两种选择器均可实现。 <p>...</p>p:last-child{ background:#ff0000; }p:nth-last-child(1){background:#ff0000; }p&…...
【AI论文】挑战推理的边界:大型语言模型的数学基准测试
摘要:近年来,大型推理模型的迅猛发展导致现有用于评估数学推理能力的基准测试趋于饱和,这凸显出迫切需要更具挑战性和严谨性的评估框架。为填补这一空白,我们推出了OlymMATH,这是一项全新的奥林匹克级数学基准测试&…...
使用 Python包管理工具 uv 完成 Open WebUI 的安装
uv 是一个极其快速的 Python 包安装器和解析器,用 Rust 编写,旨在作为 pip 和 pip-tools 工作流的替代品 使用 uv 安装(推荐) macOS/Linux: curl -LsSf https://astral.sh/uv/install.sh | shWindows: po…...
【区块链安全 | 第三篇】主流公链以太坊运行机制
文章目录 1. 以太坊账户类型2. 以太坊网络架构2.1 节点类型2.2 交易流程 3. 共识机制4. Gas 机制4.1 Gas 计算方式4.2 以太坊 EIP-1559 交易机制 5. EVM(以太坊虚拟机)5.1 EVM 结构5.2 EVM 指令5.3 EVM 运行机制 6. 智能合约7. ERC 代币标准7.1 ERC-207.…...
C# 字符串(String)
C# 字符串(String) 引言 在C#编程语言中,字符串(String)是处理文本数据的基础。字符串是字符的有序集合,用于存储和处理文本信息。C#的字符串类型是System.String,它是一个引用类型࿰…...
Unity Shader 学习18:Shader书写基本功整理
1. Drawer [HideInInspector]:面板上隐藏[NoScaleOffset]:隐藏该纹理贴图的TillingOffset[Normal]:检查该纹理是否设为法线贴图[HDR]:将颜色类型设为高动态范围颜色(摄像机也要开启HDR才有效果)[PowerSlid…...
构建第一个SpringBoot程序
第一种方式: 注,构建过程中一定要联网 new module -->选择spring Initializr 选择Web --> 勾选Spring Web --> create 构建好的项目如下 这里的 .mvn .git* HELP.md mvnw* 都可以删除 编辑好controller 之后 点击即可运行第一个springbo…...
Java高级JVM知识点记录,内存结构,垃圾回收,类文件结构,类加载器
JVM是Java高级部分,深入理解程序的运行及原理,面试中也问的比较多。 JVM是Java程序运行的虚拟机环境,实现了“一次编写,到处运行”。它负责将字节码解释或编译为机器码,管理内存和资源,并提供运行时环境&a…...
使用飞书API自动化更新共享表格数据
飞书API开发之自动更新共享表格 天马行空需求需求拆解1、网站数据爬取2、飞书API调用2.1 开发流程2.2 创建应用2.3 配置应用2.4 发布应用2.5 修改表格权限2.6 获取tenant_access_token2.7 调用API插入数据 总结 天马行空 之前一直都是更新的爬虫逆向内容,工作中基本…...
C++中ShellExecute函数使用方法说明,如果一开始参数为隐藏,后面还能再显示出来吗
文章目录 一、ShellExecute基础用法函数原型关键参数 nShowCmd示例代码:启动程序并隐藏窗口 二、隐藏后能否重新显示窗口直接答案 三、实现隐藏后显示窗口的步骤1. 获取目标窗口句柄2. 显示窗口 四、完整流程示例五、注意事项六、总结 在C中使用ShellExecute函数时&…...
MySQL的多表查询
我们之前在讲解SQL语句的时候,讲解了DQL语句,也就是数据查询语句,但是之前讲解的查询都是单表查询,而本章节我们要学习的则是多表查询操作,主要从以下几个方面进行讲解。 5.1 多表关系 项目开发中,在进行…...
(UI自动化测试web端)第二篇:元素定位的方法_css定位之层级选择器
看代码里的【find_element_by_css_selector( )】( )里的表达式怎么写? 文章介绍了第五种写法,层级选择器 ,你要根据网页中的实际情况来判断自己到底要用哪一种方法来进行元素定位。每种方法都要多练习,全都熟了之后你在工作当中使…...
《Python Web部署应知应会》No2:如何基于FastAPI 和 OLLAMA 架构实现高并发 AI 推理服务
《Python Web部署应知应会》No2:如何基于FastAPI 和 OLLAMA 架构实现高并发 AI 推理服务(上) 摘要: 在 FastAPI 和 OLLAMA 架构中实现高并发 AI 推理服务,并优化性能指标采集和缓存策略,可以充分利用 asy…...
【LeetCode 题解】算法:8.字符串转换整数(atoi)
一、问题描述 在 LeetCode 的算法题库里,有这样一道题目,要求我们实现一个名为 myAtoi(string s) 的函数,其功能是将给定的字符串转换为一个 32 位有符号整数。具体的转换规则如下: 处理步骤 剔除前导空格:读取字符串…...
Uni-app页面信息与元素影响解析
获取窗口信息uni.getWindowInfo {pixelRatio: 3safeArea:{bottom: 778height: 731left: 0right: 375top: 47width: 375}safeAreaInsets: {top: 47, left: 0, right: 0, bottom: 34},screenHeight: 812,screenTop: 0,screenWidth: 375,statusBarHeight: 47,windowBottom: 0,win…...
飞书电子表格自建应用
背景 coze官方的插件不支持更多的飞书电子表格操作,因为需要自建应用 飞书创建文件夹 创建应用 开发者后台 - 飞书开放平台 添加机器人 添加权限 创建群 添加刚刚创建的机器人到群里 文件夹邀请群 创建好后,就可以拿到id和key 参考教程: 创…...
《云原生安全攻防》-- K8s容器安全:权限最小化与SecurityContext
一旦容器被入侵,攻击者就可以获取到容器的权限,所以,容器运行过程中,我们首先需要考虑的是容器的权限问题。 在本节课程中,我们将重点介绍权限最小化以及如何使用SecurityContext来管理容器的权限。 在这个课程中&…...
uniapp中的流式输出
一、完整代码展示 目前大多数的ai对话都是流式输出,也就是对话是一个字或者多个字逐一进行显示的下面是一个完整的流式显示程序,包含的用户的消息发出和ai的消息回复 <template><view class"chat-container"><view class&quo…...
PipeWire 音频设计与实现分析一——介绍
PipeWire 是一个基于图的媒体处理引擎,一个可以运行多媒体节点图的媒体服务器,是 Linux 的音频/视频总线,它管理 Linux 系统中,不同应用程序对音频和视频设备的共享访问。它提供了一个本地客户端音频 API,但也提供兼容…...
MVC 文件夹:架构之美,开发之魂
MVC 文件夹:架构之美,开发之魂 引言 在软件开发领域,MVC(Model-View-Controller)架构模式已经成为了一种广泛应用的架构设计理念。它将应用程序分为三个核心部分:模型(Model)、视图…...
IO模型之于并发编程模型、并发模型之于架构模式
一、并发编程模型主要包括以下几种: 多进程模型:利用操作系统的进程模型来实现并发。每个用户请求接入时都会创建一个进程,适用于I/O密集型任务。缺点是创建进程的开销高,且上下文切换的开销也大。典型应用如Apache Web Ser…...
Postman 7.3.5 旧版下载指南(Win64)及注意事项
Postman-win64-7.3.5-Setup 是 Postman 的一个旧版本(2019年发布,适用于 Windows 64位系统)。以下是相关信息和建议: 1. Postman 7.3.5 版本说明 功能:用于 API 开发、测试和协作。 系统要求:Windows 64位…...
Flink/Kafka在python中的用处
一、基础概念 1. Apache Kafka 是什么? 核心功能:Kafka 是一个分布式流处理平台,主要用于构建实时数据管道和流式应用程序。核心概念: 生产者(Producer):向 Kafka 发送数据的程序。…...
【Spring Boot 与 Spring Cloud 深度 Mape 之十】体系整合、部署运维与进阶展望
【Spring Boot 与 Spring Cloud 深度 Mape 之十】体系整合、部署运维与进阶展望 #微服务实战 #Docker #Kubernetes #SpringSecurity #OAuth2 #分布式事务 #Seata #ServiceMesh #总结 #SpringCloud #SpringBoot 系列终章:经过前九篇 [【深度 Mape 系列】] 的系统学习…...
轻松理解Python装饰器:从基础到应用
一、为什么需要装饰器 想象一下,你写了很多函数来完成不同的任务,突然有个新需求:在每个函数执行前打印一条“函数开始执行”的消息,执行后打印“函数执行结束”。如果没有装饰器,你就得在每个函数里手动添加这两条打…...
RabbitMQ 技术详解:异步消息通信的核心原理与实践
这里写目录标题 RabbitMQ 技术详解:异步消息通信的核心原理与实践一、RabbitMQ 本质剖析核心架构组件 二、核心功能与应用场景主要作用典型应用场景 三、工作流程深度解析消息传递流程关键协议机制 四、Java 实现示例1. 依赖配置(Maven)2. 消…...
MySQL-- 多表查询的分类,SQL92与SQL99,7种JOIN的实现,SQL99语法的新特性
目录 一,多表查询的分类 角度1:等值连接 vs 非等值连接 角度2:自连接 vs 非自连接 角度3:内连接 vs 外连接 二,SQL92语法实现内连接:见上,略SQL92语法实现外连接:使用 -…...
Selenium文件上传
在 Web 自动化测试中,文件上传是一项常见的任务。不同的网站和前端技术可能导致上传方式有所不同,因此需要采用不同的方法进行处理。 方法 1:使用 send_keys() 直接上传(最常用) 适用场景: 页面中 有标准的 <input type="file"> 标签。 不需要弹出 Wind…...
getID3获取本地或远程视频时长
音频文件也可使用,使用ffmeg安装太复杂了 附ffmpeg方式:centos下安装ffmpeg_yum安装ffmpeg-CSDN博客 使用composer先安装 composer require james-heinrich/getid3 获取本地视频 //获取本地视频$video_path $_SERVER[DOCUMENT_ROOT].$params[video];…...
OpenAI流式解析
OpenAI 流式的代码: 首选一般请使用os.getenv 去读环境变量的内容 注意使用pip install python-dotenv 的安装方法 load_dotenv 是这个库提供的一个函数,用于读取 .env 文件并将其中定义的键值对设置为系统的环境变量。 默认情况下,load_…...
在Trae中设置Python解释器版本
Python 是一种广泛使用的高级编程语言,因其简洁易读的语法和强大的功能而备受欢迎。随着 Python 的不断发展,多个版本相继发布,每个版本都带来了新特性和改进。然而,这也带来了一些问题,比如不同的工程,需要…...
第 6 章:优化动态分配内存的变量_《C++性能优化指南》_notes
优化动态分配内存的变量 第六章核心知识点详解总结第六章 动态内存优化 重点难点梳理 一、多选题(每题至少2个正确答案)二、设计题答案与详解多选题答案设计题答案示例 第六章核心知识点详解 动态内存分配的开销 知识点:动态内存分配需要调用…...
图像数据增强教程:为目标检测任务准备数据
目录 一、简介 二、代码结构 三、环境要求 四、数据增强类 4.1 调整增强概率和参数 4.2 增强方法参数 五、数据增强主函数 六、主函数 效果展示 完整代码 一、简介 在目标检测任务中,数据增强是一种关键技术,通过对原始图像应用多种变换来增加…...
Unity编辑器功能及拓展(2) —Gizmos编辑器绘制功能
Unity中的Gizmos功能是用于在场景视图中绘制辅助图形或图标的工具,帮助开发者在编辑模式下直观调试和可视化游戏对象的位置、范围、方向等信息。 一.定义概述 Gizomsd 概述 Gizoms是Unity提供的一个API,或者叫做一个工具类,包含一系列静态…...
HarmonyOS WebSocket全场景应用开发深度解析
注:适用版本(Harmony OS NEXT / 5.0 / API 12 ) 一、最终效果预览 二、基础代码结构 Entry Component struct ChatApp {State messages: Message[] [] // 所有聊天记录State inputText: string "" // 输入框内容State isCon…...
JCRQ1河马算法+消融实验!HO-CNN-LSTM-Attention系列四模型多变量时序预测
JCRQ1河马算法消融实验!HO-CNN-LSTM-Attention系列四模型多变量时序预测 目录 JCRQ1河马算法消融实验!HO-CNN-LSTM-Attention系列四模型多变量时序预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 基于HO-CNN-LSTM-Attention、CNN-LSTM-Attent…...
ubuntu 安装 postgresql
在 Ubuntu 系统中安装 PostgreSQL 的步骤如下: 步骤 1:更新软件包列表 sudo apt update步骤 2:安装 PostgreSQL Ubuntu 默认仓库包含 PostgreSQL,直接安装: sudo apt install postgresql postgresql-contrib -ypost…...
深入实践:基于WebSocket的全球化金融数据实时对接方案。 马来西亚、印度、美国金融数据API
深入实践:基于WebSocket的全球化金融数据实时对接方案 在全球金融市场中,实时数据的高效获取与处理是量化交易、行情监控等场景的核心能力。本文将以技术实践为核心,详细解析如何通过WebSocket技术实现美国、印度、马来西亚等多国金融数据&a…...
深度学习处理时间序列(5)
Keras中的循环层 上面的NumPy简单实现对应一个实际的Keras层—SimpleRNN层。不过,二者有一点小区别:SimpleRNN层能够像其他Keras层一样处理序列批量,而不是像NumPy示例中的那样只能处理单个序列。也就是说,它接收形状为(batch_si…...
Linux: 进程间通信
目录 一 前言 二 进程间通信目的 三 进程间通信方法 四 管道通信 1. 进程如何通信 2.管道概念 2.1匿名管道 2.2 匿名管道对多个进程的控制 2.3 命名管道 2.4 命名管道原理 一 前言 在我们学习进程的时候,我们知道正是因为程序地址空间的存在ÿ…...
为什么idea显示数据库连接成功,但操作数据库时,两边数据不同步
今日份小bug又叕又来了! 一、原因分析 1. 未提交的事务 - IDEA 中执行了修改操作但未提交事务 - 其他客户端有未提交的修改 2. 连接隔离级别问题 - 不同连接使用了不同的事务隔离级别 - 读未提交(READ UNCOMMITTED)导致看到未提交数据 3. 多客户端同时操作…...
VMware中新建Ubuntu虚拟机系统,并安装Anaconda
详细介绍 Ubuntu18.04版本的安装Anaconda的安装 Ubuntu20.04版本的安装给出其他参考 安装Ubuntu18.04 新建虚拟机 如果不习惯图文形式的,也可参考该up主的环境安装分享,和我如下记录有些不同,但不影响,大部分均一致。 …...
LangChain 基础系列之 Prompt 工程详解:从设计原理到实战模板
LangChain 基础系列之 Prompt 工程详解:从设计原理到实战模板 一、揭开 LangChain 的 “灵魂引擎”:Prompt 的核心作用 在 LangChain 构建的智能应用中,Prompt(提示词)堪称驱动大模型的 “神经中枢”。这个承载着任务…...
项目如何安装本地tgz包并配置局部registry
一、判断包来源是否正确 1. 检查url curl <registry_url>2. 查看包是否存在 npm view <package_name> --registry<registry_url>二、局部registry配置步骤: 1. 全局配置 如果你希望对所有项目生效,可以将这行配置添加到全局.npmr…...
unity客户端面试高频2(自用)
标题是我 1.构造函数为什么不能为虚函数?析构函数为什么要虚函数?2.C智能指针3.左值和右值完美转发 4.深拷贝与浅拷贝5.malloc VS new 你们知道吗 1.构造函数为什么不能为虚函数?析构函数为什么要虚函数? 构造函数不能定义为虚函…...
【12】Ajax的原理和解析
一、前言 二、什么是Ajax 三、Ajax的基本原理 3.1 发送请求 3.2 解析内容 3.3 渲染网页 3.4 总结 四、Ajax 分析 五、过滤请求-筛选所有Ajax请求 一、前言 当我们在用 requests 抓取页面的时候,得到的结果可能会和在浏览器中看到的不一样&a…...
深度学习在测距模型中的应用
一、单目视觉测距和双目视觉测距简介 1、单目视觉测距 模型:深度估计(Depth Estimation) 原理:通过深度学习模型(如MonoDepth2、MiDaS)或传统的计算机视觉方法(如单目相机结合物体大小推断&am…...