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

Linux介绍与安装指南:从入门到精通

1. Linux简介
1.1 什么是Linux?

Linux是一种基于Unix的操作系统,由Linus Torvalds于1991年首次发布。Linux的核心(Kernel)是开源的,允许任何人自由使用、修改和分发。Linux操作系统通常包括Linux内核、GNU工具集、图形用户界面(GUI)和各种应用程序。

在这里插入图片描述

1.2 Linux的特点
  • 开源性:Linux内核和大多数软件都是开源的,用户可以自由查看、修改和分发代码。
  • 稳定性:Linux系统通常比Windows和macOS更稳定,适合长时间运行。
  • 安全性:Linux系统具有较高的安全性,得益于其开源性和强大的权限管理机制。
  • 灵活性:Linux支持多种硬件平台,适用于服务器、桌面、嵌入式系统等多种场景。
  • 社区支持:Linux拥有庞大的用户和开发者社区,提供了丰富的文档和资源。

2. Linux发行版

Linux发行版(Distribution)是基于Linux内核(Linux内核版本官网:https://www.kernel.org/)的操作系统,包含了Linux内核、GNU工具集、图形界面和各种应用程序。常见的Linux发行版包括:

  1. Ubuntu:基于Debian,用户友好,适合桌面和服务器。
  2. CentOS:基于Red Hat Enterprise Linux(RHEL),稳定可靠,适合企业服务器。
  3. Fedora:由Red Hat支持,包含最新的软件包,适合开发者和爱好者。
  4. Debian:稳定、可靠,适合服务器和桌面。
  5. Arch Linux:轻量级、高度可定制,适合高级用户。
  6. OpenSUSE:适合桌面和服务器,提供YaST工具进行系统管理。

在这里插入图片描述

3. Linux安装指南

3.1. 准备工作
  • VMware Workstation或VMware Fusion:用于创建和管理虚拟机的软件。你可以从VMware官方网站下载并安装。
  • 下载ISO镜像:从阿里云CentOS网站下载ISO镜像文件。建议选择CentOS 8或CentOS 7版本。
  • 硬件要求:确保你的计算机满足VMware和CentOS的硬件要求。通常,至少需要2GB内存和20GB硬盘空间。
3.2. 创建虚拟机
  1. 启动VMware:打开VMware Workstation或VMware Fusion。
  2. 新建虚拟机
    • 在VMware主界面,点击“创建新的虚拟机”。

    • 选择“典型(推荐)”配置,点击“下一步”。
      在这里插入图片描述

    • 选择“安装程序光盘映像文件(iso)”,点击“浏览”选择你下载的CentOS ISO镜像文件,点击“下一步”。

    • 输入虚拟机的名称(如“CentOS 7”)和位置,点击“下一步”。
      在这里插入图片描述

    • 设置虚拟机的磁盘大小(建议至少20GB),选择“将虚拟磁盘拆分成多个文件”,点击“下一步”。
      在这里插入图片描述

    • 点击“完成”,VMware将创建虚拟机并自动启动安装过程。

3.3. 安装CentOS
  1. 启动安装程序

    • 虚拟机启动后,选择“Install CentOS 7”或“Install CentOS 8”,按下回车键。
    • 选择安装语言,点击“继续”。
      在这里插入图片描述
  2. 配置安装选项

    • 日期和时间:选择时区,点击“完成”。
    • 键盘:选择键盘布局,点击“完成”。
    • 安装源:确认安装源为“本地介质”,点击“完成”。
    • 软件选择:选择安装类型,如“最小安装”或“服务器”,点击“完成”。
    • 安装位置:选择磁盘分区方式,建议选择“自动分区”,点击“完成”。
    • 网络和主机名:配置网络设置,设置主机名,点击“应用”,点击“完成”。
      在这里插入图片描述
      在这里插入图片描述
  3. 开始安装

    • 确认配置无误后,点击“开始安装”。
    • 在安装过程中,设置root用户密码和创建普通用户。
      在这里插入图片描述
  4. 完成安装

    • 安装完成后,点击“重启”按钮,虚拟机将重启并进入CentOS系统。
3.4. 配置CentOS
  1. 登录系统

    • 重启后,使用root用户或你创建的普通用户登录系统。
  2. 更新系统(可选)

    • 使用以下命令更新系统软件包:

      sudo yum update
      
  3. 安装常用工具(可选)

    • 安装常用工具和开发环境:

      sudo yum install vim git wget curl
      
  4. 配置网络(可选)

    • 配置网络接口,确保虚拟机能够访问互联网。
3.5 使用Finalshell连接Linux

直接在Vmware中操作Linux有很多限制,我们可以在图形化界面中操作Linux操作系统。

3.5.1 查看ip地址

在这里插入图片描述

3.5.2 通过Finalshell连接

在这里插入图片描述

3. 常用命令

以下是一些常用的Linux命令:

  • ls:列出目录内容。
  • cd:切换目录。
  • pwd:显示当前目录路径。
  • mkdir:创建目录。
  • rm:删除文件或目录。
  • cp:复制文件或目录。
  • mv:移动或重命名文件或目录。
  • cat:显示文件内容。
  • grep:在文件中搜索文本。
  • chmod:修改文件权限。
  • chown:修改文件所有者。
  • sudo:以超级用户权限执行命令。
  • apt-get(Debian/Ubuntu)或**yum**(CentOS):包管理工具,用于安装、更新和删除软件包。
四、总结

Linux作为一种开源操作系统,具有稳定性、安全性和灵活性等优点,广泛应用于各种场景。通过VMware虚拟机安装CentOS,你可以轻松搭建一个稳定、安全的Linux环境,用于开发、测试和服务器管理。并掌握常用命令,你可以快速上手并精通Linux。

相关文章:

Linux介绍与安装指南:从入门到精通

1. Linux简介 1.1 什么是Linux? Linux是一种基于Unix的操作系统,由Linus Torvalds于1991年首次发布。Linux的核心(Kernel)是开源的,允许任何人自由使用、修改和分发。Linux操作系统通常包括Linux内核、GNU工具集、图…...

BGE-M3模型结合Milvus向量数据库强强联合实现混合检索

在基于生成式人工智能的应用开发中,通过关键词或语义匹配的方式对用户提问意图进行识别是一个很重要的步骤,因为识别的精准与否会影响后续大语言模型能否检索出合适的内容作为推理的上下文信息(或选择合适的工具)以给出用户最符合…...

鸿蒙NEXT开发案例:文字转拼音

【引言】 在鸿蒙NEXT开发中,文字转拼音是一个常见的需求,本文将介绍如何利用鸿蒙系统和pinyin-pro库实现文字转拼音的功能。 【环境准备】 • 操作系统:Windows 10 • 开发工具:DevEco Studio NEXT Beta1 Build Version: 5.0.…...

CTF之密码学(栅栏加密)

栅栏密码是古典密码的一种,其原理是将一组要加密的明文划分为n个一组(n通常根据加密需求确定,且一般不会太大,以保证密码的复杂性和安全性),然后取每个组的第一个字符(有时也涉及取其他位置的字…...

修改插槽样式,el-input 插槽 append 的样式

需缩少插槽 append 的 宽度 方法1、使用内联样式直接修改&#xff0c;指定 width 为 30px <el-input v-model"props.applyBasicInfo.outerApplyId" :disabled"props.operateCommandType input-modify"><template #append><el-button click…...

UPLOAD LABS | PASS 01 - 绕过前端 JS 限制

关注这个靶场的其它相关笔记&#xff1a;UPLOAD LABS —— 靶场笔记合集-CSDN博客 0x01&#xff1a;过关流程 本关的目标是上传一个 WebShell 到目标服务器上&#xff0c;并成功访问&#xff1a; 我们直接尝试上传后缀为 .php 的一句话木马&#xff1a; 如上&#xff0c;靶场弹…...

【css实现收货地址下边的平行四边形彩色线条】

废话不多说&#xff0c;直接上代码&#xff1a; <div class"address-block" ><!-- 其他内容... --><div class"checked-ar"></div> </div> .address-block{height:120px;position: relative;overflow: hidden;width: 500p…...

缓存方案分享

不知道大家平常更新缓存是怎么做的&#xff0c;但是大部分时候都是更新数据的同时更新缓存&#xff0c;今天和同事一起聊到一个缓存方案的问题&#xff0c;感觉很有趣、非常精妙&#xff0c;记录一下。 基于此本文将介绍几种常见的缓存更新策略&#xff0c;包括简单的缓存覆盖…...

第四十篇 DDP模型并行

摘要 分布式数据并行(DDP)技术是深度学习领域中的一项重要技术,它通过将数据和计算任务分布在多个计算节点上,实现了大规模模型的并行训练。 DDP技术的基本原理是将数据和模型参数分割成多个部分,每个部分由一个计算节点负责处理。在训练过程中,每个节点独立计算梯度,…...

软件测试面试之常规问题

1.描述一下测试过程 类似题目:测试的生命周期 思路:这是一个“范围”很大的题目&#xff0c;而且回答时间一般在3分钟之内&#xff0c;不可能非常详细的描述整个过程&#xff0c;因此答题的思路要从整体结构入手&#xff0c;不要过细。为了保证答案的准确性&#xff0c;可以引…...

《图像形态学运算全解析:原理、语法及示例展示》

简介&#xff1a; 本文详细介绍了图像形态学中的多种运算&#xff0c;包括腐蚀、膨胀、开运算、闭运算、形态学梯度运算、礼帽运算以及黑帽运算。分别阐述了各运算的原理、语法格式&#xff0c;并通过 Python 代码结合具体示例图片&#xff08;如erode.JPG、dilate.JPG、close.…...

双十一线上服务调用链路追踪SkyWalking实战分析

序言 随着电商行业的飞速发展&#xff0c;双十一购物节已成为全球最大的购物狂欢节之一。在双十一期间&#xff0c;电商平台需要处理海量的用户请求和订单&#xff0c;这对系统的稳定性和性能提出了极高的要求。为了确保系统在高并发环境下的稳定运行&#xff0c;对线上服务的…...

网络安全究竟是什么? 如何做好网络安全

网络安全是如何工作的呢? 网络安全结合多层防御的优势和网络。每个网络安全层实现政策和控制。授权用户访问网络资源,但恶意参与者不得进行攻击和威胁。 我如何受益于网络安全? 数字化改变了我们的世界。我们的生活方式、工作、玩耍,和学习都发生了变化。每个组织希望提供…...

【C++】入门【一】

本节目标 一、C关键字&#xff08;C98&#xff09; 二、命名空间 三、C的输入输出 四、缺省函数 五、函数重载 六、引用 七、内联函数 八、auto关键字&#xff08;C11&#xff09; 九、范围for&#xff08;C11&#xff09; 十、指针空值nullptr&#xff08;C11&#xff09; 一.…...

【ArcGIS Pro实操第11期】经纬度数据转化成平面坐标数据

经纬度数据转化成平面坐标数据 数据准备ArcGIS操作步骤-投影转换为 Sinusoidal1 投影2 计算几何Python 示例 另&#xff1a;Sinusoidal (World) 和 Sinusoidal (Sphere) 的主要区别参考 数据准备 数据投影&#xff1a; 目标投影&#xff1a;与MODIS数据相同&#xff08;Sinu…...

python学opencv|读取图像

【1】引言 前序学习了使用matplotlib模块进行画图&#xff0c;今天开始我们逐步尝试探索使用opencv来处理图片。 【2】学习资源 官网的学习链接如下&#xff1a; OpenCV: Getting Started with Images 不过读起来是英文版&#xff0c;可能略有难度&#xff0c;所以另推荐一…...

ffmpeg RTP PS推流

要实现 CRtpSendPs 类&#xff0c;使其能够将 H264 数据通过 RTP PS 流推送到指定的 URL&#xff0c;并支持 TCP 和 UDP 传输方式&#xff0c;您需要使用 FFmpeg 库。以下是该类的实现示例&#xff0c;包括必要的初始化、推流和退出函数。 步骤 初始化 FFmpeg 库&#xff1a;…...

Rust语言俄罗斯方块(漂亮的界面案例+详细的代码解说+完美运行)

tetris-demo A Tetris example written in Rust using Piston in under 500 lines of code 项目地址: https://gitcode.com/gh_mirrors/te/tetris-demo 项目介绍 "Tetris Example in Rust, v2" 是一个用Rust语言编写的俄罗斯方块游戏示例。这个项目不仅是一个简单…...

NUMA架构及在极速网络IO场景下的优化实践

NUMA技术原理 NUMA架构概述 随着多核CPU的普及&#xff0c;传统的对称多处理器&#xff08;SMP&#xff09;架构逐渐暴露出性能瓶颈。为了应对这一问题&#xff0c;非一致性内存访问&#xff08;NUMA, Non-Uniform Memory Access&#xff09;架构应运而生。NUMA架构是一种内存…...

Brain.js 用于浏览器的 GPU 加速神经网络

Brain.js 是一个强大的 JavaScript 库&#xff0c;它允许开发者在浏览器和 Node.js 环境中构建和训练神经网络 。这个库的目的是简化机器学习模型的集成过程&#xff0c;使得即使是没有深厚机器学习背景的开发者也能快速上手 。 概述 Brain.js 提供了易于使用的 API&#xff…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

【入坑系列】TiDB 强制索引在不同库下不生效问题

文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

C++使用 new 来创建动态数组

问题&#xff1a; 不能使用变量定义数组大小 原因&#xff1a; 这是因为数组在内存中是连续存储的&#xff0c;编译器需要在编译阶段就确定数组的大小&#xff0c;以便正确地分配内存空间。如果允许使用变量来定义数组的大小&#xff0c;那么编译器就无法在编译时确定数组的大…...

iOS性能调优实战:借助克魔(KeyMob)与常用工具深度洞察App瓶颈

在日常iOS开发过程中&#xff0c;性能问题往往是最令人头疼的一类Bug。尤其是在App上线前的压测阶段或是处理用户反馈的高发期&#xff0c;开发者往往需要面对卡顿、崩溃、能耗异常、日志混乱等一系列问题。这些问题表面上看似偶发&#xff0c;但背后往往隐藏着系统资源调度不当…...

C#中的CLR属性、依赖属性与附加属性

CLR属性的主要特征 封装性&#xff1a; 隐藏字段的实现细节 提供对字段的受控访问 访问控制&#xff1a; 可单独设置get/set访问器的可见性 可创建只读或只写属性 计算属性&#xff1a; 可以在getter中执行计算逻辑 不需要直接对应一个字段 验证逻辑&#xff1a; 可以…...

纯 Java 项目(非 SpringBoot)集成 Mybatis-Plus 和 Mybatis-Plus-Join

纯 Java 项目&#xff08;非 SpringBoot&#xff09;集成 Mybatis-Plus 和 Mybatis-Plus-Join 1、依赖1.1、依赖版本1.2、pom.xml 2、代码2.1、SqlSession 构造器2.2、MybatisPlus代码生成器2.3、获取 config.yml 配置2.3.1、config.yml2.3.2、项目配置类 2.4、ftl 模板2.4.1、…...

LLMs 系列实操科普(1)

写在前面&#xff1a; 本期内容我们继续 Andrej Karpathy 的《How I use LLMs》讲座内容&#xff0c;原视频时长 ~130 分钟&#xff0c;以实操演示主流的一些 LLMs 的使用&#xff0c;由于涉及到实操&#xff0c;实际上并不适合以文字整理&#xff0c;但还是决定尽量整理一份笔…...

LabVIEW双光子成像系统技术

双光子成像技术的核心特性 双光子成像通过双低能量光子协同激发机制&#xff0c;展现出显著的技术优势&#xff1a; 深层组织穿透能力&#xff1a;适用于活体组织深度成像 高分辨率观测性能&#xff1a;满足微观结构的精细研究需求 低光毒性特点&#xff1a;减少对样本的损伤…...

为什么要创建 Vue 实例

核心原因:Vue 需要一个「控制中心」来驱动整个应用 你可以把 Vue 实例想象成你应用的**「大脑」或「引擎」。它负责协调模板、数据、逻辑和行为,将它们变成一个活的、可交互的应用**。没有这个实例,你的代码只是一堆静态的 HTML、JavaScript 变量和函数,无法「活」起来。 …...