【Linux】相关背景及环境搭建

news2025/1/15 21:04:41

在这里插入图片描述

前言:
认识 Linux, 了解 Linux 的相关背景,学会如何使用云服务器,掌握使用远程终端工具 xshell 登陆 Linux 服务器


文章目录

  • 一、Linux介绍
    • 1.1 关于UNIX
    • 1.2 Linux的诞生及发展历程
    • 1.3 Linux开源
    • 1.4 Linux在各个行业的现状
    • 1.5 发行版本
  • 二、Linux环境搭建
    • 使用 XShell 远程登陆到 Linux

一、Linux介绍

Linux 是一种开源的类 UNIX 操作系统内核,最早由芬兰的林纳斯·托瓦兹(Linus Torvalds)在1991年创建。而UNIX 是一种多用户、多任务操作系统,是操作系统领域的经典之一。

1.1 关于UNIX

UNIX 的开发始于20世纪60年代末和70年代初,由贝尔实验室1的一组计算机科学家和工程师共同开发。其中包括肯·汤普逊(Ken Thompson)、丹尼斯·里奇(Dennis Ritchie)( C 语言的创造者之一)、道格拉斯·麦克罗伊(Douglas McIlroy)等人。

UNIX 的主要发展阶段:

  1. 初期版本(1969-1972): UNIX 最早的版本是由肯·汤普逊和丹尼斯·里奇在贝尔实验室的 PDP-7 计算机上开发的。这个版本主要是为了解决多用户环境下的程序开发和执行问题。随后,UNIX 在 PDP-11 上进行了移植,并逐渐吸引了更多的开发者。

  2. UNIX 第一版和第二版(1972-1973): 在 PDP-11 上的经验基础上,UNIX 第一版于1971年发布,第二版则在1972年发布。这两个版本引入了许多 UNIX 的基本概念,如文件系统、shell 和基本的命令集。

  3. UNIX 第三版和第四版(1973-1974): UNIX 第三版引入了管道(pipeline)和重定向等概念,增加了对 Fortran 和 Snobol 编程语言的支持。第四版进一步扩展了文件系统和引入了对 C 语言的更多支持。

  4. UNIX 第五版和第六版(1974-1975): 第五版在1974年发布,引入了更多的实用程序和工具,包括 awk 编程语言。第六版继续改进了性能和功能,逐渐成为主流。

  5. UNIX 第七版和 System III(1978-1981): 第七版 UNIX 在1978年发布,带来了更多功能和改进。System III 是 AT&T 在1981年发布的一个商业版本,为 UNIX 的商业化奠定了基础。

  6. UNIX 的分支和 System V(1983-1989): 1983年,AT&T 发布了 System V,成为一个重要的 UNIX 分支。这个版本引入了更多的标准化和商业化元素。与此同时,BSD (Berkeley Software Distribution) 的分支也逐渐崭露头角,开发了自己的 UNIX 变种。

  7. UNIX 变种的多样化(1990年代以后): 在1990年代,UNIX 变得更加多样化。许多厂商基于 System V 或 BSD 开发了自己的 UNIX 变种。同时,开源的 FreeBSD 和 OpenBSD 项目也推动了 UNIX 的发展。

  8. Linux 的崛起(1991年以后): 在1991年,Linus Torvalds 创建了 Linux 操作系统内核,受到 UNIX 设计哲学的启发。Linux 成为了一个免费、开源的 UNIX 类操作系统,取得了巨大成功,影响了整个操作系统领域。


1.2 Linux的诞生及发展历程

1991年10月5日,赫尔辛基大学的一名研究生Linus Benedict Torvalds在一个Usenet新闻组
(comp.os.minix)中宣布他编制出了一种类似UNIX的小操作系统,叫Linux。新的操作系统是受到另一个UNIX的小操作系统——Minix的启发,该系统是由一名叫Andrew S Tanenbaum的教师开发的。

  1. Linux 0.01 (1991): Linus Torvalds在1991年8月25日发布了第一个 Linux 内核的版本,命名为 0.01。这个版本还很简单,只包含了一些基本的文件系统和系统调用。Linus Torvalds仅发布了源代码,并邀请其他开发者参与。

  2. Linux 0.02 (1991年10月): Torvalds于10月5日发布的这个Linux版本被称为0.02版,它能够运行GNU Bourne Again Shell(bash)和GNU的C编译程序(gcc)以及为数不多的其它语言。Torvalds绝对没有想到他设想的一种能够针对高级业余爱好者和黑客们的操作系统已经产生。

  3. 形成开发社区: Linus Torvalds通过互联网在一些新闻组和邮件列表上发布消息,邀请其他开发者加入 Linux 的开发。这一开放的合作方式吸引了许多人,形成了一个积极的开发社区。

  4. Linux 0.95 (1992): 这个版本引入了网络支持,包括 TCP/IP 协议栈。Linux 开始在一些早期的支持者中流行起来,社区逐渐扩大。

  5. Linux 1.0 (1994): 在1994年3月,Linux 发布了 1.0 版本,标志着 Linux 已经足够稳定和功能完善,可以被认为是一个正式的操作系统。这一版本包含了许多重要的特性和改进。

  6. 商业支持和服务器应用: 随着 Linux 的成熟,一些公司开始提供商业支持,并将 Linux 用于服务器环境。Red Hat 成为其中一家提供商业 Linux 发行版的公司,它于1994年创立。

  7. Linux 2.0 (1996): 这个版本带来了对 SMP(对称多处理)的支持,使 Linux 更适用于多处理器系统。同时,Linux 在服务器和企业环境中得到更广泛的应用。

  8. GNU/Linux: 在 Linux 成功的同时,GNU 计划的开发者也为 Linux 提供了一些关键的用户空间工具和库。这导致了术语 “GNU/Linux” 的使用,强调了 Linux 内核和 GNU 工具链的结合。

  9. Linux 2.4 和 2.6 (2001-2003): Linux 2.4 版本引入了更多的硬件支持和性能改进。随后,Linux 2.6 版本带来了更多的功能、稳定性和性能提升,成为企业级部署的首选。

  10. Android 和嵌入式系统: Linux 在移动领域的应用得到了推动,特别是由 Google 推出的 Android 操作系统采用了 Linux 内核。Linux 还被广泛用于嵌入式系统,包括路由器、电视、汽车等。

  11. 云计算和容器化: Linux 在云计算时代变得更为重要,很多云服务基于 Linux。容器技术(如Docker)的兴起也促使 Linux 在开发和部署方面变得更加灵活和高效。

  12. Linux 5.x (2019以后): 当前,Linux 内核持续更新,最新版本为 Linux 5.x 系列。这些更新包括对新硬件的支持、性能优化以及安全性改进。


1.3 Linux开源

开源是指源代码是公开可见的,任何人都有权查看代码。开源软件通常采用自由许可证,赋予用户在一定条件下自由使用、修改和分享软件的权利。开源同时鼓励学习和知识的分享。通过查看源代码,开发者可以学到新的编码技术和最佳实践。开发者也被鼓励向社区贡献自己的经验和知识,促进共同学习。

Linux是一种自由和开放源代码的类UNIX操作系统,再在加上用户空间的应用程序之后,就成为了Linux操作系统。严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统

Linux是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和再发布。随着Linux操作系统飞速发展,各种集成在Linux上的开源软件和实用工具也得到了应用和普及,因此,Linux也成为了开源软件的代名词


1.4 Linux在各个行业的现状

  1. 服务器和数据中心: Linux 是服务器和数据中心领域的主导操作系统之一。众多云服务提供商、企业服务器以及大规模数据中心都采用 Linux 作为首选操作系统,其稳定性、性能和开源特性使其成为处理大规模工作负载的理想选择。

  2. 云计算: Linux 在云计算领域占据主导地位,许多云服务提供商如Amazon Web Services(AWS)、Microsoft Azure、Google Cloud Platform等都在其基础设施上使用 Linux。容器技术如Docker的兴起也进一步强化了 Linux 在云原生应用开发和部署中的地位。

  3. 嵌入式系统: Linux 在嵌入式系统中得到广泛应用,包括智能家居设备、路由器、嵌入式计算机、物联网设备等。其灵活性和可定制性使得 Linux 成为嵌入式领域的首选。

  4. 科学研究: 在科学和研究领域,Linux 提供了丰富的开源工具和库,用于数据分析、模拟、实验控制等。科学家和研究人员经常使用 Linux 来支持他们的研究工作。

  5. 金融服务: 在金融行业,Linux 用于构建高性能的交易系统、风险管理平台等关键系统。其稳定性和高性能使得 Linux 成为金融服务机构的首选。

  6. 移动设备和智能手机: Android 操作系统,基于 Linux 内核,是移动设备和智能手机领域最流行的操作系统之一。许多智能手机制造商使用 Android 作为其设备的操作系统。


1.5 发行版本

Linux 有许多不同的发行版本,也被称为发行版或发行版(Distribution,简称为 distro)。每个发行版都是基于 Linux 内核的,但它们可能包括不同的软件包、工具和配置,以满足特定用户群体的需求。以下是一些常见的 Linux 发行版:

  1. Ubuntu: Ubuntu 是一款基于 Debian 的发行版,注重易用性和用户友好。它有一个庞大的社区,支持桌面和服务器应用,并提供定期的长期支持(LTS)版本。

  2. Debian: Debian 是一款具有广泛社区支持的发行版,以其稳定性和开放性而闻名。许多其他发行版都是基于 Debian 构建的。

  3. Fedora: Fedora 是由 Red Hat 公司支持的社区发行版,注重提供最新的开源软件和技术。它也是作为 Red Hat Enterprise Linux(RHEL)的测试平台而存在。

  4. Red Hat Enterprise Linux(RHEL): RHEL 是由 Red Hat 公司提供的商业发行版,专注于企业级支持和稳定性。它通常用于服务器和企业环境。

  5. Arch Linux: Arch Linux 是一款面向有经验的用户的发行版,注重简洁和灵活性。它采用滚动更新的模式,用户可以根据自己的需求自定义系统。

  6. CentOS: CentOS 是一个由社区支持的发行版,它是 RHEL 的克隆版,提供与 RHEL 兼容的免费开源替代品。CentOS 8 后续版本由 Rocky Linux 继续发展。

在这里插入图片描述


二、Linux环境搭建

Linux环境搭建主要有以下几种方式:
Linux 环境的搭建方式取决于你的需求和使用场景。以下是一些常见的 Linux 环境搭建方式:

  1. 物理机安装: 如果你有一台空闲的计算机,并希望在物理硬件上运行 Linux,你可以选择在该计算机上进行物理安装。这通常涉及使用 Linux 发行版的安装介质(如安装光盘或 USB 驱动器)并按照安装向导的步骤进行安装。

  2. 虚拟机安装: 使用虚拟化软件(如VirtualBox、VMware、KVM等),你可以在现有的操作系统上创建一个虚拟机,并在虚拟机中安装 Linux。这种方式允许你在不影响主机系统的情况下体验 Linux,并进行测试和学习。

  3. 双系统安装: 如果你想在一台计算机上同时使用 Linux 和另一个操作系统(如Windows),你可以选择在计算机上设置双系统。这涉及在计算机上分区,并在其中一个分区上安装 Linux。在启动时,你可以选择进入 Linux 或其他操作系统。

  4. 云服务器: 你可以选择使用云服务提供商提供的云服务器实例。通过在云上创建虚拟机,你可以远程访问和管理 Linux 环境。

不同的搭建方式适用于不同的使用场景和需求。选择适合你的方式,并根据实际情况进行配置和定制。


这里仅介绍使用云服务器搭建环境,以阿里云为例:
前往阿里云官网搜索云服务器ECS
在这里插入图片描述
镜像选择CentsOS 7.6 64位
其它,例如地域,公网IP,实例等等按照自己需求选择。


使用 XShell 远程登陆到 Linux

下载安装 XShell
XShell 是一个远程终端软件,下载官网
下载安装的时候选择 “home/school” 则为免费版本。

打开Xshell
在这里插入图片描述


如果第一次登陆,我们点击文件下面的那个带有加号的图形(第二行最左边的),名称自定义,主机输入公网IP,其它默认,然后连接。
在这里插入图片描述


输入用户名,这里我输入root,默认最少都会有一个root用户( “root” 是 Linux 系统中超级用户,root 用户是系统中具有最高权限的用户,具有一定风险,如果有普通用户就输入普通用户名)。
在这里插入图片描述


接着输入密码,这个密码是购买云服务器时输入的密码,然后就登录了。
在这里插入图片描述


在这里插入图片描述
如果你喜欢这篇文章,点赞👍+评论+关注⭐️哦!
欢迎大家提出疑问,以及不同的见解。


  1. 贝尔实验室于1925年成立,最初是由美国电话电报公司(AT&T)的创始人之一亚历山大·格拉汉姆·贝尔(Alexander Graham Bell)的儿子建立。实验室的初衷是进行关于电信和通信技术的研究,UNIX 操作系统和 C 编程语言的诞生于此。 ↩︎

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

黑色金属厂房3d数据可视化综合平台进一步保障生产效率

在当今的数字化时代,钢铁厂面临着降本增效、绿色环保、安全第一等发展问题,亟需寻找更有效的解决方案,数字孪生公司深圳华锐视点利用先进的数字孪生可视化、web3D开发和VR虚拟仿真技术制作数字孪生钢铁厂可视化管控平台,实现对钢铁…

SCI 2区论文:医疗保健中心训练有素的脑膜瘤分割模型的性能测试-基于四个回顾性多中心数据集的二次分析

基本信息 标题:Performance Test of a Well-Trained Model for Meningioma Segmentation in Health Care Centers: Secondary Analysis Based on Four Retrospective Multicenter Data Sets中文标题:医疗保健中心训练有素的脑膜瘤分割模型的性能测试&am…

Prompt高级技巧:Few-Shots、COT、SC、TOT、Step-Back

CRISPE框架 如图所示。所谓CRISPE框架,指的是: CR:Capacity and Role(能力与角色)。你希望 ChatGPT 扮演怎样的角色。I:Insight(洞察),背景信息和上下文。S:&#xff08…

记一次幸运的cnvd证书获取过程

漏洞描述: 如XX后台管理系统V2.0存在水平越权,由于应用系统中Id参数可控并未经校验导致信息被越权修改,攻击者可通过遍历Id参数批量更改其他用户数据及个人信息。 起因: 一天下午某师傅星球中发了一篇文章分享,描述该系统存在弱…

Labview局部变量、全局变量、引用、属性节点、调用节点用法理解及精讲

写本章前想起题主初学Labview时面对一个位移台程序,傻傻搞不清局部变量和属性节点值有什么区别,概念很模糊。所以更新这篇文章让大家更具象和深刻的去理解这几个概念,看完记得点赞加关注喔~ 本文程序源代码附在后面,大家可以自行下…

解决 java.lang.NoClassDefFoundError: org/apache/poi/POIXMLTypeLoader 报错

在使用POI导出Excel表格的时候&#xff0c;本地运行导出没问题&#xff0c;但是发布到服务器后提示 “java.lang.NoClassDefFoundError: org/apache/poi/POIXMLTypeLoader” 下面是pom.xml中的配置 <dependency><groupId>org.apache.poi</groupId><art…

JVM工作原理与实战(二十一):内存管理

专栏导航 JVM工作原理与实战 RabbitMQ入门指南 从零开始了解大数据 目录 专栏导航 前言 一、不同语言的内存管理 1.C/C的内存管理 2.Java的内存管理 二、垃圾回收的对比 1.自动垃圾回收与手动垃圾回收的对比 2.优点与缺点 总结 前言 JVM作为Java程序的运行环境&#…

Cacti 前台SQL注入漏洞复现(CVE-2023-39361)

0x01 产品简介 Cacti 是一套基于 PHP,MySQL,SNMP 及 RRDTool 开发的网络流量监测图形分析工具。 0x02 漏洞概述 该漏洞存在于graph_view.php文件中。默认情况下,访客用户无需身份验证即可访问graph_view.php,在启用情况下使用时会导致SQL注入漏洞。 攻击者可能利用此漏洞…

运算符(java)

隐式转换&#xff1a;byte<short<int<long<float<double 取值范围小的和取值范围大的进行运算&#xff0c;小的会提升为大的&#xff0c;再进行运算 byte,short,char三种类型的数据在进行运算的时候&#xff0c;会直接先提升为int&#xff0c;然后再进行计算 …

自然语言处理(Natural Language Processing,NLP)解密

专栏集锦&#xff0c;大佬们可以收藏以备不时之需&#xff1a; Spring Cloud 专栏&#xff1a;http://t.csdnimg.cn/WDmJ9 Python 专栏&#xff1a;http://t.csdnimg.cn/hMwPR Redis 专栏&#xff1a;http://t.csdnimg.cn/Qq0Xc TensorFlow 专栏&#xff1a;http://t.csdni…

【前后端分离与不分离的区别】

Web 应用的开发主要有两种模式&#xff1a; 前后端不分离 前后端分离 理解它们的区别有助于我们进行对应产品的测试工作。 前后端不分离 在早期&#xff0c;Web 应用开发主要采用前后端不分离的方式&#xff0c;它是以后端直接渲染模板完成响应为主的一种开发模式。以前后端不…

《WebKit 技术内幕》之五(2): HTML解释器和DOM 模型

2.HTML 解释器 2.1 解释过程 HTML 解释器的工作就是将网络或者本地磁盘获取的 HTML 网页和资源从字节流解释成 DOM 树结构。 这一过程中&#xff0c;WebKit 内部对网页内容在各个阶段的结构表示。 WebKit 中这一过程如下&#xff1a;首先是字节流&#xff0c;经过解码之…

MATLAB聚类工具箱

本文借鉴了数学建模清风老师的课件与思路&#xff0c;可以点击查看链接查看清风老师视频讲解&#xff1a;【1】MATLAB聚类工具箱&#xff1a;提前预览工具箱的核心功能_哔哩哔哩_bilibili 关于工具箱的获取&#xff0c;在数学建模学习交流公众号里发送&#xff1a; 567891 %% …

日志记录logging

文章目录 1. logging基础使用1.1 日志的6个级别1.2 logging.basicConfig1.3 案例 2. logging的高级应用2.1 记录器Logger2.2 处理器- Handler2.3 格式器- Formatter2.4 创建关联2.4 案例 3.在项目中的应用3.1 定义全局使用的logger对象3.2 使用案例 参考 1. logging基础使用 1…

Wpf 使用 Prism 实战开发Day13

配置 AutoMapper 关系映射 在上一节 ToDoController 控制器&#xff0c;或 IToDoService 服务接口中&#xff0c;方法的传参都是直接传的实体类。但在实际开发过程中&#xff0c;这样是不允许的。标准且规范的做法是&#xff0c;定义一个数据传输层&#xff0c;即Dto层。 一.在…

荣誉艾尔迪亚人的题解

目录 原题描述&#xff1a; 题目背景 题目描述 输入格式 输出格式 样例 Input 1 Output 1 Input 2 Output 2 数据范围&#xff1a; 样例解释 主要思路&#xff1a; 代码code&#xff1a; 原题描述&#xff1a; 时间限制: 1000ms 空间限制: 65536kb 题目背景 ​…

GPT应用_PrivateGPT

项目地址&#xff1a;https://github.com/imartinez/privateGPT 1 功能 1.1 整体功能&#xff0c;想解决什么问题 搭建完整的 RAG 系统&#xff0c;与 FastGPT 相比&#xff0c;界面比较简单。但是底层支持比较丰富&#xff0c;可用于知识库的完全本地部署&#xff0c;包含大…

如何选择工程师职称申报的专业?

选择适合自己的职称评定专业&#xff0c;需从官方申报范围、公示名单中寻找答案&#xff0c;并选择适合自己的评审方式。需具备一定的工作年限、学历要求和充分证明自己能力水平的材料&#xff0c;方可获得职称资格。 在职称评定之路上&#xff0c;选择一个适合自己的专业&…

论文阅读笔记AI篇 —— Transformer模型理论+实战 (四)

论文阅读笔记AI篇 —— Transformer模型理论实战 &#xff08;四&#xff09; 一、理论1.1 理论研读1.2 什么是AI Agent? 二、实战2.1 先导知识2.1.1 tensor的创建与使用2.1.2 PyTorch的模块2.1.2.1 torch.nn.Module类的继承与使用2.1.2.2 torch.nn.Linear类 2.2 Transformer代…

设计模式--组合模式

缘起 某日&#xff0c;小明公司最近接到一个办公管理系统的项目&#xff0c;并且在每个城市都有分部。这属于是很常见的OA系统&#xff0c;只要前期将需求分析完善好&#xff0c;中后期开发维护是不难的。 然而&#xff0c;总部公司使用后觉得很OK&#xff0c;想要其他城市的…