Linux《Linux简介与环境的搭建》

在学习了C++或者是C语言的基础知识之后就可以开始Linux的学习了,现在Linux无论是在服务器领域还是在桌面领域都被广泛的使用,所以Linxu也是我们学习编程的重要环节,在此接下来我们将会花大量的时间在Linxu的学习上。在学习Linux初期你可以会像初学C语言那时一样犯一些看起来较为低级的错误,这其实是很正常的,只要接下去多多练习,相信你一定能克服这一困难的时期。那么接下来我们就开始Linux第一个篇章的学习,在此我们将会了解到Linux的发展史以及Linux的优势,最后还会讲解如何搭建Linux的环境,一起加油吧!!!


1.Linux学习流程

从现在开始我们将开始Linux的学习,我们会先来学习Linux系统和系统编程,之后再学习Linux网络和网络编程,最后了解了Linux以上的基础知识之后接下来就可以开始MySQL的学习了,在此会将来会学习MySQL初阶和进阶学习,进阶是选学的内容。其他部分都是我们必须要掌握的。

 

 1.Linux的发展史

在此我要学习LInux这个操作系统就需要先来了解LInux的发展,但在了解Linux之前需要先来了解操作系统是如何产出的,而在了解操作系统之前还要大概了解计算机的发展史。

世界上第一台通用计算机是在1946年2月14宣告诞生,名为埃尼亚克

在此我们要知道的是像计算机这种高新技术的产品大多数都是由军工领域转到民用的,这是由于军工在投入大量的财力和时间进行先进技术和产品的研发之后为了实现持续的研发就会将一些已经不是机密级别的产品或者技术投入到民用;这样就可以获得更多的原始开发资金来进一步去研发更为先进的技术和产品。这种发展模式就被称为硅谷模式

计算机就是在如上所述的体系下产生的产品,投入到了民用领域之后就产生了大量的企业,例如IBM、苹果、intel等。

在计算机的发展过程中可以将计算机划分为大型计算机(超级计算机)和小型计算机,并且随着制程技术的发展民用的计算机就走向越来越小型化,桌面话的道路上。在小型计算机不断发展的过程当中,由于计算机是需要进行通信的,因此越来越多的通信厂商就发展起来就例如高通等。计算机在发展过程当中组成随着越来越复杂就要求软件上也要进行发展。在此操作系统就可以自动化对各个硬件进行管理。

在操作系统的发展发展当中也是分为两条路,一条是用在小型计算机上的操作系统,在此典型的系统就是Windows和macOS,这些系统都是为了让普通老百姓也能轻松的使用计算机而产生,在这当中macOS是搭载在苹果电脑上的,由于苹果既设计硬件又设计软件,最终的产品也是自己设计的,所以苹果i就是一个典型的产品公司;而Windows是由微软设计的,微软只负责设计操作系统,CPU等硬件是由intel等硬件公司设计的,最终的产品又是由联想等电脑厂商设计的。操作系统的另一条用于在大型计算机或者后台服务器上的系统,在上个世纪60年代较为代表性的操作系统就是Unix;这个操作系统是由肯汤姆森使用汇编语言写的。在此之后丹尼斯里奇发明了C语言之后就和肯汤姆森一起使用C语言重构了Unix

在技术普及到民用的过程当中最为重要的就是要使其进入教育领域,Unix在进入校园之后在一些大学的实验室得到广泛的使用。在1991年在赫尔辛基大学内雷纳斯托瓦兹在使用Unix之后就觉得这款操作系统由很多不足之处,之后他就自己写了一款操作系统并将其命名Linux。在此还将Linux开源,工程师、黑客等都可以免费使用Linux。

3.Linux的特点

由于Linux大部分是使用在的系统都是在服务器等领域使用的,因此Linux大部分的系统都是使用命令行来进行各种操作的,但也有一部分是带图形化界面的。

在Linux当中最大的特点其实就是Linux是开源的,从以下的网站就可以看到源代码

The Linux Kernel Archives

而现在其他的主流系统Window和macOS都是闭源的,那么开源相比闭源有什么优势呢?接下来我们就来了解看看

首先开源就注定能被更多的人看到和使用,那么对应社区的活跃度就更高,有问题就会被及时的发现和解决。并且在使用开源项目时大家都是没有利益冲突的,目的都是为了能让项目更好用更高效这就会让更多的工程师去发现问题并进行维护,因此开源的项目相比闭源就会更高效、更安全、更稳定。

4.Linux的应用场景

由于Linux的特性,原代码是公开的,那么Linux对应企业是更安全的。对于企业来说用户的数据是最为重要的,那么就需要服务器的系统是十分稳定安全的,这就和Linux的特性十分的吻合。
并且在企业当中还会使用Linux进行云计算和存储。

此外Linux默认是不带图形化界面的,那么系统内核就比较小,这就适合应用在嵌入式领域。

在苹果设计出macOS之后就将其移植到了手机上就产生了iOS,那么在这之后谷歌就十分担心苹果在手机市场上会将其的生态位抢走,这是因为在手机上苹果开源进行软件的预装这就使得用户的浏览器默认使用的就是苹果的浏览器,那么在手机上使用谷歌浏览器的用户就会大大减少,因此为了就将Linux移植到了手机上设计出了android(安卓)这个开源的手机操作系统,这样就可以与iOS抢占生态位。目前国内厂商小米的澎湃OS、vivo的oriainOS、oppo的colorOS都是基于安卓这个开源的系统设计出来的。而华为的鸿蒙Next就是彻底摆脱安卓产生的另一大操作系统,现在还在不断的完善当中。

因此Linux简单来说就有以下的使用场景:
1.企业
2.嵌入式
3.计算或者存储平台
4.设备,例如手机、平板、智能电视
5.车载系统
……

5.Linux的版本

在此在了解Linux的版本时要划分为技术线和商业产品线

在技术线上例如版本2.6.32、5.10.4、3.10.5,在此第一个数字就称为主版本号,第二个就称为次版本号,最后的数字就是修正次数。在此这些版本表示的是Linux对应的系统版本。

其实由于安卓是基于Linux的,因此在安卓手机当中也是可以看到对应的Linux系统版本的,例如以下示例:

在产品线上Linux就有非常多的版本,如下所示

在此就例如在centos当中centos6、centos6.5、centos7;ubuntu的ubuntu10.04、ubuntu11.04、ubuntu等的系统内核版本都是一样的

那么这时你可能就会有疑惑了,这些系统的版本的系统内核都是一样的那么这些商业的版本不就实际上是一样的吗?

这个问题其实就和我们使用抖音还是快手一样,不同的人在使用这些短视频软件时都会有自己的喜好,每个人的选择也各不相同。那就这些Linux的商业话系统也是这样的,不同的版本有不同的适用人群,就例如centos更多是企业当中的工程师子啊适用,那么相应的社区和论坛也保证企业服务器稳定为主的,而unbuntu由于图形化界面做的较好,那么就会吸引学生群体去适用,这就让其对应的社区和论坛大部分都是学生在安装或者学习上的解决方法。因此一个系统的差异不是在系统本身而是在系统的用户群体以及社区或者论坛上。

以下是Linux各个系统的大致简介:
Debian
Debian运行起来极其稳定,这使得它非常适合用于服务器。 debian这款操作系统无疑并不适合新手用户,而是适合系统管理员和高级用户。

Ubuntu
Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行Ubuntu Linux的移动设备上很常见。Ubuntu是新手用户肯定爱不释手的一款操作系统。红帽企业级Linux 这是第一款面向商业市场的Linux发行版。它有服务器版本,支持众多处理器架构,包括x86和x86_64。红帽公司通过课程红帽认证系统管理员/红帽认证工程师(RHCSA/RHCE),对系统管理员进行培训和认证。

CentOS
CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。有些人不想支付一大笔钱,又能领略红帽企业级Linux;对他们来说,CentOS值得一试。此外,CentOS的外观和行为似乎与母发行版红帽企业级Linux如出一辙。 CentOS使用YUM来管理软件包。
Fedora
小巧的Fedora适合那些人:想尝试最先进的技术,等不及程序的稳定版出来。其实,Fedora就是红帽公司的一个测试平台;产品在成为企业级发行版之前,在该平台上进行开发和测试。Fedora是一款非常好的发行版,有庞大的用户论坛,软件库中还有为数不少的软件包。
Kali Linux
Kali Linux是Debian的一款衍生版。Kali旨在用于渗透测试。Kali的前身是Backtrack。用于Debian的所有Binary软件包都可以安装到Kali Linux上,而Kali的魅力或威力就来自于此。此外,支持Debian的用户论坛为Kali加分不少。Kali随带许多的渗透测试工具,无论是Wifi、数据库还是其他任何工具,都设计成立马可以使用。Kali使用APT来管理软件包。
毫无疑问,Kali Linux是一款渗透测试工具,或者是文明黑客青睐的操作系统。
... ...

6.搭建 Linux 环境

在此Linux有三种方式

1. 直接安装在物理机上. 但是由于 Linux 桌面使用起来非常不友好, 不推荐.
2. 使用虚拟机软件, 将 Linux 搭建在虚拟机上. 但是由于当前的虚拟机软件(如 VMWare 之类的)存在一些 bug , 会
导致环境上出现各种莫名其妙的问题, 比较折腾.
3. 使用云服务器, 可以直接在 腾讯云, 阿里云或华为云 等服务器厂商处直接购买一个云服务器.

在此以上当中推荐的云服务器,双系统以及虚拟机由于安装之后可能会有很多问题,非常不推荐

购买云服务器

在适用云服务器之前要先购买云服务器,接下来就来讲解

在此我较为推荐的是华为云,原因是价格较为实惠,最便宜的一年只要38,这个对我们初学者完全够用了

新春钜惠专场-华为云

购买了之后接下来就点击控制台

再点击华为云服务

再点击显示的云服务器

以上所示的公网 ip 地址, 稍后我们就会使用这个 ip 登陆服务器.

之后在云服务器内进行密码的设置,root 密码建议设置的稍微复杂一些, 否则容易被黑客入侵. 

小结:
在这个环节我们最重要的是得到三个信息:
1. 服务器的外网 IP
2. 服务器的管理员账户 (固定为 root)
3. 管理员账户密码(在华为云网站上设置的)
通过这三个信息就可以使用 XShell 远程登陆了.

7.使用 XShell 远程登陆到 Linux

在windows远程登入Linux之后接下来我们就要来学习如何远程登入我们购买的云服务器,在此推荐的是XShell,推荐的原因是免费且较为稳定

家庭/学校免费 - NetSarang Website

 在此XShell直接进入官网下载即可

那么下载安装了XSell之后就会出现以下的界面,将会话叉掉

在 XShell 终端下敲

ssh[ip]


ip 为刚才看到的 ifconfig 结果.
如果网络畅通, 将会提示输入用户名密码. 输入即可正确登陆

备注: 这里的用户名密码都是在最初购买服务器的时候设置的用户名密码

在XShell 下的复制粘贴如下所示
复制: ctrl + insert (有些同学的 insert 需要配合 fn 来按)
粘贴: shift + insert

在此在XSell内ctrl + c / ctrl + v 是不行的.

在以上这样每次登入XSell都要进行登入就显得较为麻烦那么接下来就来讲解一种方式来进行免密登入

首先在登入时创建一个项目

之后输入你的云服务器的公网ip,协议选择SSH,点击连接

输入用户名,点击记住用户名

再输入密码

但以上操作之后每次还是要输入密码,那么要免密登入就还要进行以下的操作

点击用户身份认证之后输入密码,再确认这样就可以直接连接主机了

以上就是本篇的全部内容了,相信通过本篇的学习你对Linux系统有了初步的了解,那么接下来我们将在下一篇当中学习Linux系统的基础指令,未完待续……

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

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

相关文章

二进制/源码编译安装mysql 8.0

二进制方式: 1.下载或上传安装包至设备: 2.创建组与用户: [rootopenEuler-1 ~]# groupadd mysql [rootopenEuler-1 ~]# useradd -r -g mysql -s /bin/false mysql 3.解压安装包: tar xf mysql-8.0.36-linux-glibc2.12-x86_64.ta…

boss直聘 __zp_stoken__ 逆向分析

声明: 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容、敏感网址、数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均与作者无关! 有相关问题请第一时间头像私信联系我删…

pyspark连接clickhouse数据库的方式(其它数据库同样适用)

目录 一、背景简记二、pyspark连接clickhouse方式记录三、结语参考学习博文 一、背景简记 实际工作中,大部分所用的数据存储地址都是在数据库中,如我司现在常用的数据库是clickhouse,相关数据的统计分析都在此上操作。如果想用pyspark连接cl…

【JSqlParser】Java使用JSqlParser解析SQL语句总结

简述 Java解析SQL语句有很多工具都可以做到,比如Mybatis、Druid、目前用来用去最全面的仍然是Jsqlparser,它是一个Github上的开源项目,JSqlParser是一个用于解析SQL语句的Java库,它可以帮助开发者分析和操作SQL语句的结构。无论是…

Ubuntu本地部署网站

目录 1.介绍 2.安装apache 3.网页升级 1.介绍 网站其实就相当于一个文件夹,用域名访问一个网页,就相当于访问了一台电脑的某一个文件夹,在网页中看见的视频,视频和音乐其实就是文件夹里面的文件。为什么网页看起来不像电脑文件夹…

C++异常处理详解

概述 这篇博客将深入探讨 C异常处理的工作原理, 最佳实践以及如何编写异常安全的代码, 配有代码示例和详细说明. 1. 异常的挑战 性能开销: 异常在失败情况下会带来显著的运行时成本. 图片来自: Introduction to proposed std::expected - Niall Douglas - Meeting C 2017 推…

零基础构建最简单的 Tauri2.0 桌面项目 Star 88.4k!!!

目录 预安装环境 安装nodejs windows下安装 linux下安装 nodejs常遇问题 安装C环境 介绍 下载 安装 安装Rust语言 Tauri官网 安装 vscode 安装 rust 插件 安装 Tauri 插件 运行成果 预安装环境 安装nodejs windows下安装 NodeJs_安装及下载_哔哩哔哩_bilibi…

Python基于Django的图像去雾算法研究和系统实现(附源码,文档说明)

博主介绍:✌IT徐师兄、7年大厂程序员经历。全网粉丝15W、csdn博客专家、掘金/华为云//InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取源码联系🍅 👇🏻 精彩专栏推荐订阅👇&#x1f3…

【AI插件】在VS Code中免费使用GitHub Copilot

什么是GitHub Copilot GitHub Copilot 是由 GitHub 和 OpenAI 合作开发的一款 AI 编程助手,旨在帮助开发者提高编程效率。它通过分析大量的开源代码,生成上下文相关的代码建议和自动补全,支持多种编程语言和框架。GitHub Copilot 是基于 Ope…

map和set c++

关联式容器也是⽤来存储数据的,与序列式容器不同的是,关联式容器逻辑结构通常是⾮线性结构,两个位置有紧密的关联关系,交换⼀下,他的存储结构就被破坏了。顺序容器中的元素是按关键字来保存和访问的。关联式容器有map/…

2025年01月蓝桥杯Scratch1月stema选拔赛真题—美丽的图形

美丽的图形 编程实现美丽的图形具体要求: 1)点击绿旗,角色在舞台中心,如图所示; 2)1秒后,绘制一个边长为 140的红色大正方形,线条粗细为 3,正方形的中心为舞台中心,如图所示; 完整题目可点击下…

hive连接mysql报错:Unknown version specified for initialization: 3.1.0

分享下一些报错的可能原因吧 1.要开启hadoop 命令&#xff1a;start-all.sh 2.检查 hive-site.xml 和 hive-env.sh。 hive-site.xml中应设置自己mysql的用户名和密码 我的hive-site.xml如下&#xff1a; <configuration><property><name>javax.jdo.opt…

AI编程工具使用技巧——通义灵码

活动介绍通义灵码1. 理解通义灵码的基本概念示例代码生成 2. 使用明确的描述示例代码生成 3. 巧妙使用注释示例代码生成 4. 注意迭代与反馈原始代码反馈后生成优化代码 5. 结合生成的代码进行调试示例测试代码 其他功能定期优化生成的代码合作与分享结合其他工具 总结 活动介绍…

Python编程与在线医疗平台数据挖掘与数据应用交互性研究

一、引言 1.1 研究背景与意义 在互联网技术飞速发展的当下,在线医疗平台如雨后春笋般涌现,为人们的就医方式带来了重大变革。这些平台打破了传统医疗服务在时间和空间上的限制,使患者能够更加便捷地获取医疗资源。据相关报告显示,中国基于互联网的医疗保健行业已进入新的…

大文件上传服务-后端V1V2

文章目录 大文件上传概述:minio分布式文件存储使用的一些技术校验MD5的逻辑 uploadV1 版本 1uploadv2 版本 2 大文件上传概述: 之前项目做了一个文件上传的功能,最近看到有面试会具体的问这个上传功能的细节&#xff0c;把之前做的项目拿过来总结一下&#xff0c;自己写的一个…

[BrainShadow-V1] VR头戴设备统计报告

Brain-Shadow-V1 EventVR headsetsReported byXiao enDate2025/01/15Version1.0 HTC Vive Pro 2 Pro HTC Vive Pro 2 是一款高端虚拟现实头显&#xff0c;配备双 2.5K 显示屏&#xff0c;组合分辨率达到 48962448&#xff0c;提供 120 的视场角和 120Hz 的刷新率。该设备支持…

路由环路的产生原因与解决方法(1)

路由环路 路由环路就是数据包不断在这个网络传输&#xff0c;始终到达不了目的地&#xff0c;导致掉线或者网络瘫痪。 TTL &#xff08;生存时间&#xff09;&#xff1a;数据包每经过一个路由器的转发&#xff0c;其数值减1&#xff0c;当一个数据包的TTL值为0是&#xff0c;路…

工业网口相机:如何通过调整网口参数设置,优化图像传输和网络性能,达到最大帧率

项目场景 工业相机是常用与工业视觉领域的常用专业视觉核心部件&#xff0c;拥有多种属性&#xff0c;是机器视觉系统中的核心部件&#xff0c;具有不可替代的重要功能。 工业相机已经被广泛应用于工业生产线在线检测、智能交通,机器视觉,科研,军事科学,航天航空等众多领域 …

企业邮箱iRedMail搭建

用自己的域名作为邮箱的后缀&#xff0c;好看、有面子&#xff01;只要域名不过期&#xff0c;那么&#xff0c;你的邮箱就永远存在&#xff01; 邮件系统很多&#xff0c;宝塔自带的邮局更是简单&#xff0c;但是若想邮箱可靠&#xff08;丢邮件、发送邮件进入对方垃圾箱等&a…

Redis的安装和配置、基本命令

一、实验目的 本实验旨在帮助学生熟悉Redis的安装、配置和基本使用&#xff0c;包括启动Redis服务、使用命令行客户端进行操作、配置Redis、进行多数据库操作以及掌握键值相关和服务器相关的命令。 二、实验环境准备 1. JAVA环境准备&#xff1a;确保Java Development Kit …