<初识Linux>—向开源精神致敬《Linux》_linux精神-程序员宅基地

技术标签: 《Linux》  linux  服务器  后端  unix  

目录

向开源精神致敬!

                ——By 作者:新晓·故知

一、Linux背景

        1. 发展史

        2. 开源

        3. 官网

        4. 企业应用现状

        5. 发行版本

        6. os概念,定位

         二、Linux在企业端为何如此重要

1.先见一下什么是Linux

2.后台vs前台

3.企业为何选择使用Linux作为后台服务器

4.国内企业后台和用户使用Linux现状

5.就个人找工作/能力提升来说,该如何看待Linux

6.为何要学好Linux

7.如何学好Linux

后记:●由于作者水平有限,文章难免存在谬误之处,敬请读者斧正,俚语成篇,恳望指教!

                                                                           ——By 作者:新晓·故知


向开源精神致敬!

                                                      ——By 作者:新晓·故知 

 虚拟机搭载Linux操作系统环境—火车运行测试:

“Hello,Linux!”

  

    

 

一、Linux背景

1. 发展史

本门课程学习 Linux 系统编程,你可能要问 Linux 从哪里来?它是怎么发展的?在这里简要介绍 Linux 的发展史。要说Linux ,还得从 UNIX 说起。
UNIX 发展的历史
●1968年,一些来自通用电器公司、贝尔实验室和麻省理工学院的研究人员开发了一个名叫 Multics 的特殊操作系统。Multics 在多任务文件管理和用户连接中综合了许多新概念。
1969- 1970 年, AT&T 的贝尔实验室研究人员 Ken Tompson Dennis Ritchie ,在采用很多 Multics 特点的基础上开发了UINX 系统。它运行在小型机上,满足了系统对科研环境的要求。从产生开始, UNIX 就是一个有价值的、高效的、多用户和多任务的操作系统。
UNIX从满足个人的设计需求开始,逐步成长为由许多不同开发商所支持的标准软件产品。
第一个UNIX 版本是免费给许多知名大学的计算机系使用的。
1972年,贝尔实验室开始发放商业版本,并且给不同的用户授权使用这个系统,使用者之一是加州大学伯克莱分校的计算机系。伯克莱给系统增加了许多新的特点,后来成为了标准。
1975年伯克莱由下属部门 BSD 发行了自己的 UNIX 版本。 UNIX BSD 版本成为 AT&T 贝尔实验室版本的主要竞争者,而其它的独立开发出的UNIX 版本也开始萌生。
1980 年微软公司开发了叫做 Xenix UNIX PC 版本。 AT&T 发行了第一个商业版本。名叫 System Ⅲ,后来被成为对商用软件产品良好支持的System Ⅴ所替代。
同时UNIX BSD 版本不断发展,在 70 年代末期, BSD UNIX 成为了国防部的高科技研究机构科研项目的基础。
其结果,伯克莱发行了一个叫做 BSD Release 4.2 的有效版本。
它包括了高级的文件管理器和基于TCP/IP 网络协议的网络特点。现在 TCP/IP Internet 所使用。 BSD Release4.2被许多厂商所采用,例如 SUN Microsystem
UNIX不同版本的出现导致了 UNIX 标准的需要,软件开发商不知道他们的程序运行在哪些版本上比较合适。
到80 年代中期,两个竞争的标准出现了,一个是基于 AT&T UNIX 版本,另一个是 BSD 版本。在今天的书店里你能发现分别适用于这两个版本的不同的UNIX 的书,一些是 System V ,另一些集中在 BSD UNIX
AT&T建立了一个叫 UNIX 系统实验室的新组织,它的作用就是综合 UNIX 的不同版本,集中开发一个标准系统。
1991年, UNIX 综合实验室综合了 System V Release3 SUN OS Xenix 的所有特点,发行了 System VRelease 4。为了与 System V Release 4 竞争,一些其它公司,如 IBM 和惠普 Open SoftwareFoundation( OSF )去产生自己的 UNIX 标准版本,继而出现了两个标准商业版本 OSF 版本和 System Release4。
1993年, AT&T 把它的 UNIX 转卖给 Novell 公司。 UNIX 系统实验室成为了 Novell UNIX 系统小组的一部分。 Novell发行了基于 System V Release 4 的自己的 UNIX 版本 UNIXWare ,它可以和 Novell 公司的 Netware 系统相联。SUN 公司已经把 System V Release 4 融进了它的 SUN OS ,发行了 Solaris 。两个相互竞争的 UNIX 使用的图形用户界面(一个叫Motif ,另一个叫 Openlook ),已经合并为一个新的工作平台标准,叫做通用平台环境(CDE )。
Linux 发展历史
●1991年 10 5 日,赫尔辛基大学的一名研究生 Linus Benedict Torvalds 在一个 Usenet 新闻组
comp.os.minix )中宣布他编制出了一种类似 UNIX 的小操作系统,叫 Linux 。新的操作系统是受到另一个UNIX 的小操作系统 ——Minix 的启发,该系统是由一名叫 Andrew S Tanenbaum 的教师开发的。读者也许猜想所发布的这个系统应该是Linux 0.01 版本,实际上不是这样。真正的 Linux 0.01 版本并没有被发布,原因是0.01 版本不实用。 Linus 仅仅在第一个 Linux FTP 站点( ftp://nic.funet.fifi )上提供过这个版本的的源代码。
Torvalds于 10 5 日发布的这个 Linux 版本被称为 0.02 版,它能够运行 GNU Bourne Again Shell(bash) GNU的C 编译程序( gcc )以及为数不多的其它语言。 Torvalds 绝对没有想到他设想的一种能够针对高级业余爱好者和黑客们的操作系统已经产生,这就是人们所称的Linux 。;
Linux发布时的版本是 0.02 ,后来又有 0.03 版,然后又跳到 0.10 版。因为世界各地越来越多的程序员都开始开发Linux ,它已经达到 0.95 版。这就意味着正是公布 1.0 版本的时间已经为期不远了。正式的 1.0 版本是在 1994年公布的

 

  

2. 开源

Linux是一种自由和开放源代码的类 UNIX 操作系统,该操作系统的内核由林纳斯托瓦兹在 1991 年首次发 布,之后,在加上用户空间的应用程序之后,就成为了Linux 操作系统。严格来讲, Linux 只是操作系统内核本身,但通常采用“Linux内核 来表达该意思。而 Linux 则常用来指基于 Linux 内核的完整操作系统,它包括GUI 组件和许多其他实用工具。
GNU通用公共许可协议( GNU General Public License ,简称 GNU GPL GPL ),是一个广泛被使用的自由软件许可协议条款,最初由理查德斯托曼为GNU 计划而撰写, GPL 给予了计算机程序自由软件的定义, 任何基于GPL 软件开发衍生的产品在发布时必须采用 GPL 许可证方式,且必须公开源代码,
Linux是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU 通用公共许可证,任何个人和机构都 可以自由地使用Linux 的所有底层源代码,也可以自由地修改和再发布。随着 Linux 操作系统飞速发展,各种集成在Linux 上的开源软件和实用工具也得到了应用和普及,因此, Linux 也成为了开源软件的代名词。 

3. 官网

kernel官网

4. 企业应用现状

Linux在服务器领域的发展
随着开源软件在世界范围内影响力日益增强, Linux 服务器操作系统在整个服务器操作系统市场格局中占据了越来越多的市场份额,已经形成了大规模市场应用的局面。并且保持着快速的增长率。尤其在政府、金融、农业、交通、电信等国家关键领域。此外,考虑到Linux 的快速成长性以及国家相关政策的扶持力度,Linux 服务器产品一定能够冲击更大的服务器市场。
据权威部门统计,目前 Linux 在服务器领域已经占据 75% 的市场份额,同时, Linux 在服务器市场的迅速崛起,已经引起全球IT 产业的高度关注,并以强劲的势头成为服务器操作系统领域中的中坚力量。
Linux在桌面领域的发展
近年来,特别在国内市场, Linux 桌面操作系统的发展趋势非常迅猛。国内如中标麒麟 Linux 、红旗 Linux、深度 Linux 等系统软件厂商都推出的 Linux 桌面操作系统,目前已经在政府、企业、 OEM 等领域得到了广泛应用。另外SUSE Ubuntu 也相继推出了基于 Linux 的桌面系统,特别是 Ubuntu Linux ,已经积累了大量社区用户。但是,从系统的整体功能、性能来看,Linux 桌面系统与 Windows 系列相比还有一定的差距,主要表现在系统易用性、系统管理、软硬件兼容性、软件的丰富程度等方面。
Linux在移动嵌入式领域的发展
Linux 的低成本、强大的定制功能以及良好的移植性能,使得 Linux 在嵌入式系统方面也得到广泛应用,目前Linux 以广泛应用于手机、平板电脑、路由器、电视和电子游戏机等领域。在移动设备上广泛使用的Android 操作系统就是创建在 Linux 内核之上的。目前, Android 已经成为全球最流行的智能手机操作系统,据2015 年权威部门最新统计, Android 操作系统的全球市场份额已达 84.6%
此外,思科在网络防火墙和路由器也使用了定制的 Linux ,阿里云也开发了一套基于 Linux 的操作系统“YunOS” ,可用于智能手机、平板电脑和网络电视;常见的数字视频录像机、舞台灯光控制系统等都在逐渐采用定制版本的Linux 来实现,而这一切均归功与 Linux 与开源的力量。
Linux在云计算 / 大数据领域的发展
互联网产业的迅猛发展,促使云计算、大数据产业的形成并快速发展,云计算、大数据作为一个基于开源软件的平台,Linux 占据了核心优势;据 Linux 基金会的研究, 86% 的企业已经使用 Linux 操作系统进行云计算、大数据平台的构建,目前,Linux 已开始取代 Unix 成为最受青睐的云计算、大数据平台操作系统。

5. 发行版本

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 随带许多的渗透测试工具,无论是 Wififi 、数据库还是其他任何工具,都设计成立马可以使用。Kali 使用 APT 来管理软件包。
毫无疑问, Kali Linux 是一款渗透测试工具,或者是文明黑客(我不想谈论恶意黑客)青睐的操作系统。
... ...

6. os概念,定位

使计算机更好用 ! 这是操作系统的根本要义 !!

 二、Linux在企业端为何如此重要

1.先见一下什么是Linux

什么样子?
如何交互?
是什么东西?
能干什么 ?

2.后台vs前台

3.企业为何选择使用Linux作为后台服务器

Linux :免费,开源,稳定高效
开源会让系统更安全,还是更糟糕?
阿里云,腾讯云,亚马逊 aws 业务,说白了就是给企业提供 Linux 后台云服务的

4.国内企业后台和用户使用Linux现状

1. IT服务器Linux系统应用领域

Linux 作为企业级服务器的应用十分广泛,利用 Linux 系统可以为企业构架 WWW 服务器、数据库服务器、负载均衡服务器、邮件服务器、DNS 服务器、代理服务器 ( 透明网关 ) 、路由器等,不但使企业降低了运营成本,同时还获得了Linux 系统带来的高稳定性和高可靠性。
随着 Linux 在服务器领域的广泛应用,从近几年的发展来看,该系统已经渗透到了电信、金融、政府、教育、银行、石油等各个行业,同时各大硬件厂商也相继支持Linux 操作系统。这一切都在表明, Linux 在服务器市场的前景是光明的。同时,大型、超大型互联网企业( 百度、新浪、淘宝等 ) 都在使用 Linux 系统作为其服务器端的程序运行平台,全球及国内排名前十的网站使用的几乎都是Linux 系统, Linux 已经逐步渗透到各个领域的企业里。
2. 嵌入式Linux系统应用领域
由于 Linux 系统开放源代码,功能强大、可靠、稳定性强、灵活,而且具有极大的伸缩性,再加上它广泛支持大量的微处理器体系结构、硬件设备、图形支持和通信协议,因此,在嵌入式应用的领域里,从因特网设备( 路由器、交换机、防火墙、负载均衡器等) 到专用的控制系统 ( 自动售货机、手机、 PDA 、各种家用电器等 ) Linux 操作系统都有很广阔的应用市场。特别是经过这几年的发展,它已经成功地跻身于主流嵌入式开发平台。例如,
在智能手机领域, Android Linux 已经在智能手机开发平台牢牢地占据了一席之地。
3. 个人桌面应用领域
所谓个人桌面系统,其实就是我们在办公室使用的个人计算机系统或者我们平时使用的各种入网设备,如笔记本,手机之类。
目前在传统个人电脑领域, windows 依旧是霸主。但是在其他智能设备领域,如:手机,平板电脑,智能电视,基于Linux 内核的 Android 已经被广泛应用 。后期随着物联网,自动驾驶时代的到来,Linux 因为其免费开源,高效稳定的特征, Linux 会慢慢渗透到各个领域

5.就个人找工作/能力提升来说,该如何看待Linux

Linux 是一堆能力的集合,主要包括,日常使用,操作系统,计算机网络,部分组成原理, C 语言,系统编程, 网络编程,自动化脚本,问题解决与定位,资料查找
基于上面的诸多基础能力,会生长出很多不同的初步方向,架设服务,数据库管理,运维,后台业务开发,后台游戏开发,数据分析等
所以, Linux 无论就业还是晋升都是 技术职业人 的底层核心能力之一

6.为何要学好Linux

职业的表现
企业大量使用,会倒逼招聘对Linux提出一定要求,为了满足招聘要求,我们也需要进行 Linux方面的准备
更重要的是,学习Linux,本质是对平台的学习,该平台横跨多学科,会将我们学到的大量知识进行整合,从而 形成对技术框架的全认知。一个问题:你所学习的C/C++,Java,Python 等开发出来的程序,最后怎么能够给别人使用起来?应该部署到什么环境呢?

7.如何学好Linux

Linux 是一个注重实操的学科,具有很强的平台性,所以除了需要底层的操作系统,计算机网络,组成原理等原理性 知识之外,还需要多多在Linux 中进行各种实操。
目前需要从两方面来掌握Linux的使用
基础理论:操作系统,计算机网络,组成原理
基础操作:基本指令/ 权限 ,Linux 环境编程(基本编程,系统编程,网络编程)
如何学好?
舍弃X Window
想清楚基本逻辑 vs 钻牛角尖
有强烈兴趣,就以能力为导向,没有强烈兴趣就以就业为导向
先要看优秀的视频/ 直播课程,在辅助不错的书,勤加练习
Linux大而全,选好学习侧重点很重要

后记:
●由于作者水平有限,文章难免存在谬误之处,敬请读者斧正,俚语成篇,恳望指教!

                                                                           ——By 作者:新晓·故知

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_57859086/article/details/124639325

智能推荐

vue3+vite+ts项目配置开发环境和生产环境 打包命令配置_vite打包配置-程序员宅基地

文章浏览阅读8.4k次,点赞6次,收藏29次。开发环境和生产环境的配置和打包方式有所不同,下面是基于vue3+vite+ts项目的开发环境和生产环境配置及打包方式的详细说明。打包完成后会在项目根目录下生成dist目录,里面包含了打包后的静态文件和index.html文件,可以直接部署到服务器上。这里配置了三个命令,分别是开发环境启动命令、开发环境打包命令和生产环境打包命令。1.3 配置.env.development。2.2 配置.env.production。1.2 配置vite.config.ts。2.1 配置vite.config.ts。_vite打包配置

(最新最详细)安装ubuntu18.04-程序员宅基地

文章浏览阅读2w次,点赞4次,收藏91次。目录1. window10中下载ubuntu镜像2. 制作U盘启动盘3. Ubuntu 分配硬盘空间1. window10中下载ubuntu镜像下载地址2. 制作U盘启动盘安装制作工具:UltraISO(点我下载),下载完成后安装插入用来做启动盘的U盘(最好是usb3.0接口,16GB或以上),并清空里面的文件打开安装好的UltraISO,点击继续试用按钮工作界面进入工作界面后,点击菜单栏文件(F),在弹出的选项卡里点击打开在弹出的文件选择对话框中找到下载好的 Ubuntu18.04._ubuntu18.04

Toad报“No valid Oracle Client found”错-程序员宅基地

文章浏览阅读203次。2019独角兽企业重金招聘Python工程师标准>>> ..._toad no valid oracle client

MySQL数据库入侵及防御方法-程序员宅基地

文章浏览阅读521次。来自:http://blog.51cto.com/simeon/1981572作者介绍陈小兵,高级工程师,具有丰富的信息系统项目经验及18年以上网络安全经验,现主要从事网络安全及数据库技术研究工作。《黑客攻防及实战案例解析》《Web渗透及实战案例解析》《安全之路-Web渗透及实战案例解析第二版》《黑客攻防实战加密与解密》《网络攻防实战研究:漏洞利用与提权》作者,在国内多本学术期..._mysql 5.0.16入侵

SQL Server SSMS历史版本下载地址-程序员宅基地

文章浏览阅读135次。https://learn.microsoft.com/zh-cn/sql/ssms/release-notes-ssms?view=sql-server-ver16#previous-ssms-releases_sql server历史版本哪儿下

【狂神JAVA】MyBatis笔记_jdk1.7的mybatis-程序员宅基地

文章浏览阅读2.5k次。简介自学的【狂神JAVA】MyBatis分享自写源码和笔记,希望对大家有帮助本人配置jdk13.0.2 (jdk1.7以上均可)Maven 3.6.3MySQL 5.7.23 (mysql5.6以上均可)1. 配置官网文档: https://mybatis.org/mybatis-3/zh/getting-started.htmlpom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://_jdk1.7的mybatis

随便推点

排序算法-堆积树排序法(HeapSort)-程序员宅基地

文章浏览阅读731次。堆积树排序法是选择排序法的改进版,可以减少在选择排序法中的比较次数,进而减少排序时间。堆积排序法用到了二叉树的技巧,是利用堆积树来完成排序的。堆积树是一种特殊的二叉树,可分为最大堆积树和最小堆积树两种。

Hadoop调优第一篇_hadoop_namenode_opts-程序员宅基地

文章浏览阅读917次。1.hdfs核心参数——回收站设置第一步,在调优前我们需要对namenode与datanode的内存配置进行参数化设置。通过hadoop-env.sh查看namenode与datdanode的具体参数。相关参数设置如下export HDFS_NAMENODE_OPTS=”-Dhadoop.security.logger=INFO,RFAS -Xmx1024m”export HDFS_DATANODE_OPTS=”-Dhadoop.security.logger=ERROR,RFAS -Xmx10_hadoop_namenode_opts

Studio 3T for MongoDB 激活破解脚本_studio 3tjihuoma-程序员宅基地

文章浏览阅读1.9w次,点赞2次,收藏27次。Studio 3T试用期过了不能使用,网上未搜索到相对应的激活码,可以选择重置使用时间继续使用。_studio 3tjihuoma

数据结构实验5《基于哈夫曼树的数据压缩》_基于哈夫曼树的数据压缩算法c语言-程序员宅基地

文章浏览阅读2k次,点赞4次,收藏25次。(visual studio 2019可运行)输入及输出要求见《数据结构C语言(第二版)》严蔚敏版【本文仅用于啥都看不懂还想交作业选手】#include<iostream>#include<map>#include<string>#include<stdio.h>#include<memory.h>using namespace std;typedef struct{ char c; int weight; in_基于哈夫曼树的数据压缩算法c语言

Teams Bot App 代码解析_adaptivecards.declare<datainterface>(rawlearncard)-程序员宅基地

文章浏览阅读1w次。Teams Bot App 代码解析_adaptivecards.declare(rawlearncard).render(this.likecountobj)

Unity UGUI(三)RawImage(原始图像)_unity原始图像-程序员宅基地

文章浏览阅读2.5k次。RawImage(Script)Texture 纹理 要显示的图片,注意:图片类型可以是任何类型 Color 颜色 图片的主颜色 Material 材质 渲染材质 Raycast Target 光线投射目标 是否可接收射线碰撞事件检测 UV Rect UV矩形 显示效果:X、Y属性用于控制纹理左右..._unity原始图像

推荐文章

热门文章

相关标签