文章目录
- 前言
- 1. Linux背景介绍
- 1.1 UNIX的发展历史
- 1.2 Linux的发展历史
- 2. 企业应用现状
- 3. 开源
- 3.1 探索Linux源代码
- 3.2 开源 VS 闭源
- 4. Linux的版本
- 4.1 技术线
- 4.2 商业产品线
- 5. os概念,定位
- 6. 搭建Linux环境
- 6.1 Linux环境的搭建方式
- 6.2 购买云服务器
- 7. 使用XShell远程登录到Linux
- 7.1 关于Linux桌面
- 7.2 下载安装XShell
- 7.3 使用XShell登录购买的服务器主机
- 结语
前言
Linux是一种开源的、类Unix的操作系统,具有高稳定性、安全性和灵活性。它支持多用户、多任务操作,广泛应用于服务器、嵌入式系统和桌面环境。Linux内核是其核心组件,管理硬件资源和系统任务。由于开源社区的贡献,Linux拥有多个发行版,如Ubuntu、CentOS等,用户可以根据需求进行定制。
1. Linux背景介绍
在正式学习Linux系统编程前,你可能要问Linux从哪里来?它是怎么发展的?在这里简要介绍Linux的发展史。要说Linux,还得从UNIX说起。
1.1 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 V Release 4。为了与System V Release 4 竞争,一些其它公司,如IBM和惠普Open Software Foundation(OSF)去产生自己的UNIX标准版本,继而出现了两个标准商业版本OSF版本和System Release 4。
- 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)。
1.2 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.fi)上提供过这个版本的的源代码
- 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年公布的
下面两个图片是Linux和Windows的发展历史图
2. 企业应用现状
-
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成为最受青睐的云计算、大数据平台操作系统。
3. 开源
- 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.1 探索Linux源代码
Linux系统是一款开源的操作系统,也就是说它的源代码是公开的,下面我带大家展示一下如何获取Linux的源代码。
(1)打开kernel官网:https://www.kernel.org/,点击下图指示的链接
(2)然后点击Linux
(3)然后再点击kernel
(4)然后就会看到Linux所有的源代码的版本以目录的形式展现给我们,你可以点进去下载里面的源代码压缩包,就可以看到其中的源代码了
3.2 开源 VS 闭源
对于操作系统来说,有以Linux为代表的开源操作系统,还有以Windows,MacOS为代表的闭源操作系统。那么到底是开源好还是闭源好呢?
一款操作系统所谓的好,也就是它要是稳定的,安全的,高效的。
由于Linux操作系统是开源的,所以它会被更多的人看到,然后就会有许多的人提出更好的建议,以及修改其中的bug,所以说Linux操作系统比其它的闭源操作系统更好一些。
而相应的闭源的这些操作系统只有这个公司的一些工程师负责这个操作系统,所以说维护这个操作系统的人比较少,再加上公司的一些制度问题,因此如果发生问题的话,解决问题的效率和方案一定是没有开源好的。
4. Linux的版本
要正确的认识Linux版本,我们要分两条线,一个是技术线,还有一个是商业产品线。
4.1 技术线
对于技术线来说,其实就是Linux的内核版本,也就是上面我带大家看Linux源代码时所看到的版本。
4.2 商业产品线
其实我们之前所听到过的Ubuntu,CentOS这些都是它的商业化发行版
对于每一款Linux商业化发行版本,都有它们自己的版本线。两款不同的商业化Linux操作系统的发行版本,可能它们的Linux内核版本是一样的。
比如说:CentOS 6可能和Ubuntu 10.04的Linux内核版本是一样的。
所以我们口中所说的各种Linux操作系统版本,其实都是不同的商业化版本中的这些横向的版本。
既然不同的商业版本其中内核可能是一样的,那么它们的差别体现在哪些方面呢?
- 第一个:所使用的命令方面会有一些差别
- 第二个:就是和这款操作系统的生态有关系(就好比抖音和快手这两个APP你更愿意用哪一个),一款操作系统一旦推出来就会有它的侧重点,和它的客户群体,还有对应的社区。比方说CentOS一开始出来的时候主要是企业在用,所以它积攒下来的问题,经验,帖子都是以企业为主的。而Ubuntu由于出来的时候图形化界面做的比较好,所以学生党比较多,积攒下来的大多是学生会遇到的一些问题,经验等等
-
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是一款渗透测试工具,或者是文明黑客(我不想谈论恶意黑客)青睐的操作系统。 -
… …
5. os概念,定位
使计算机更好用,这是操作系统的根本要义!!!
6. 搭建Linux环境
6.1 Linux环境的搭建方式
主要有三种方式:
- 双系统,直接安装在物理机上,但是由于 Linux 桌面使用起来非常不友好,不推荐。
- 使用虚拟机软件,将 Linux 搭建在虚拟机上,但是由于当前的虚拟机软件(如 VMWare 之类的)存在一些 bug,会导致环境上出现各种莫名其妙的问题,比较折腾。
- 使用云服务器,可以直接在腾讯云,阿里云或华为云等服务器厂商处直接购买一个云服务器。
- 如腾讯云,阿里云等为在校学生提供了优惠,只要通过学生认证,最低可以 10 块钱一个月,还是非常划算的。
- 甚至同学们可以 4,5 个人共用一台服务器,平均下来一个人一个月 2 块钱。
- 使用云服务器不仅环境搭建简单,避免折腾,同时还有一个最大的好处,部署在云服务器上的项目可以直接被外网访问到,这个时候就和一个公司发布一个正式的网站没有任何区别,也就能让我们自己写的程序真的去给别人去使用。
6.2 购买云服务器
我们以华为云为例,其他的服务器厂商也是类似
(1)进入官方网站:https://www.huaweicloud.com/
(2)登陆网站(直接使用手机号注册登录即可)
(3)购买云服务器(由于我们是以学习为主,所以我们选择这里面最便宜的即可)。
选择主页面中的产品,然后点击下拉框中的第一个Flexus云服务
然后到新的页面之后往下拉,选择自己想要的云服务器配置,在这里面我们选择其中最便宜的即可(比如说这里我选择第一个38元的)
下面我们来选择云服务器的配置,操作系统在我们学习Linux时选择CentOS 7.6,7.7,7.9的都行。对于地区来说选哪一个都一样,因为我国的网络基础建设还是很好的,但你如果不放心就选择离自己所在地区近的(我在江苏,所以我就选择上海的)。然后其它的就不用动了,可选配置选择时需要价钱的。(由于我已经买过这个了,用户等级比较高,无法点击购买,因此这里的图片我用其它的服务器为例)
(4)购买完成后,可以在控制台中找到自己买的服务器,点进去能够看到服务器的 IP 地址。
稍后我们就会使用这个公网IP登陆服务器,
点击重置密码来设置 root 密码,root密码建议设置的稍微复杂些,否则容易被黑客入侵。
7. 使用XShell远程登录到Linux
7.1 关于Linux桌面
很多同学的 Linux启动进入图形化的桌面,这个东西虽然看起来方面,那是因为我们受到了Windows操作系统的影响,但是大家以后就可以忘记了,以后的工作中没有机会使用图形界面。
大家可以思考一下:为什么不使用图形界面?
7.2 下载安装XShell
XShell 是一个远程终端软件
下载官网:https://www.xshell.com/zh/free-for-home-school/
下载安装的时候选择 “home/school” 则为免费版本。
7.3 使用XShell登录购买的服务器主机
(1)首先先要在购买的云服务器的官网上,将云服务器开机,(就是在购买云服务器的部分,我所指出来的开机按钮),看到显示运行中就可以了
(2)进入XShell,然后输入下面的指令:
ssh ip
(ip就是上面购买云服务器时,所看到的公网IP)
如果网络畅通, 将会提示输入用户名密码,输入即可正确登陆
备注:这里的用户名密码就是在最初购买服务器的时候,重置密码设置的root账户用户名密码
结语
今天的分享到这里就结束啦!如果觉得文章还不错的话,可以三连支持一下。
也可以点点关注,避免以后找不到我哦!
Crossoads主页还有很多有趣的文章,欢迎小伙伴们前去点评,您的支持就是作者前进的动力!