发展史
本门课程学习Linux系统编程,你可能要问Linux从哪里来?它是怎么发展的?在这里简要介绍Linux的发展史。要说Linux,还得从UNIX说起。
1946年2月15日,是世界上第一台通用电子数字计算机“埃尼阿克”(ENIAC)在美国研制成功的日子。
冷战(英语:Cold War,俄语:Холодная Война)是指1947年—1991年之间,美国、北大西洋公约组织为主的资本主义阵营与苏联、华沙条约组织为主的社会主义阵营之间的政治、经济、军事斗争。
在此大背景下,美国科技迅猛发展,形成了硅谷模式。
UNIX发展的历史
1968年,一些来自通用电器公司、贝尔实验室和麻省理工学院的研究人员开发了一个名叫Multics的特殊操作系统。Multics在多任务文件管理和用户连接中综合了许多新概念。
1969-1993年 UNIX 迅猛发展。
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年公布的
2. 开源
Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发布,之后,在加上用户空间的应用程序之后,就成为了Linux操作系统。严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统,它包括GUI组件和许多其他实用工具。
开源项目参与人多,发现与解决问题的速度更快,更加安全且高效,但开源也是一种商业手段。
Linux是一种自由和开放源代码的类UNIX操作系统,该操作系统的内核由林纳斯托瓦兹在1991年首次发布,之后,在加上用户空间的应用程序之后,就成为了Linux操作系统。严格来讲,Linux只是操作系统内核本身,但通常采用“Linux内核”来表达该意思。而Linux则常用来指基于Linux内核的完整操作系统,它包括GUI组件和许多其他实用工具。
3. 官网
The Linux Kernel Archives
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. 发行版本
Ubuntu
Ubuntu是Debian的一款衍生版,也是当今最受欢迎的免费操作系统。Ubuntu侧重于它在这个市场的应用,在服务器、云计算、甚至一些运行Ubuntu Linux的移动设备上很常见。Ubuntu是新手用户肯定爱不释手的一款操作系统。
CentOS
CentOS是一款企业级Linux发行版,它使用红帽企业级Linux中的免费源代码重新构建而成。这款重构版完全去掉了注册商标以及Binary程序包方面一个非常细微的变化。有些人不想支付一大笔钱,又能领略红帽企业级Linux;对他们来说,CentOS值得一试。此外,CentOS的外观和行为似乎与母发行版红帽企业级Linux如出一辙。 CentOS使用YUM来管理软件包。
Linux 环境的搭建方式
1. 直接安装在物理机上. 但是由于 Linux 桌面使用起来非常不友好, 不推荐.
2. 使用虚拟机软件, 将 Linux 搭建在虚拟机上. 但是由于当前的虚拟机软件(如 VMWare 之类的)存在一些 bug , 会
导致环境上出现各种莫名其妙的问题, 比较折腾.
3. 使用云服务器, 可以直接在 腾讯云, 阿里云或华为云 等服务器厂商处直接购买一个云服务器.
购买云服务器
我们以腾讯云为例, 其他的服务器厂商也是类似.
1. 进入官方网站学生云服务器_学生云主机_学生云数据库_云+校园特惠套餐 - 腾讯云(直接在百度上搜 "腾讯云校园计划")
2. 登陆网站(可以使用 qq 或者 微信 登陆)
3. 右侧的操作系统选择 CentOS 7.6 64位. 购买时长根据需要选择(建议1年), 点击立即购买即可. 这个步骤需要实名认证, 否则会提示
4. 购买完成后, 可以在控制台中找到自己买的服务器. 点进去能够看到服务器的 IP 地址.
蓝色方框为公网 ip 地址, 稍后我们就会使用这个 ip 登陆服务器.
5. 设置 root 密码: 勾选服务器, 点击重置密码(这个环节可能需要手机短信验证). root 密码建议设置的稍微复杂一些, 否则容易被黑客入侵.(一定要重置密码否则后面xshell可能回登录不上!)
小结:
在这个环节我们最重要的是得到三个信息:
1. 服务器的外网 IP
2. 服务器的管理员账户 (固定为 root)
3. 管理员账户密码(在腾讯云网站上设置的)
通过这三个信息就可以使用 XShell 远程登陆了.
下载安装 XShell
XShell 是一个远程终端软件. 下载官网XSHELL - NetSarang Website
下载安装的时候选择 "home/school" 则为免费版本.
使用 XShell 登陆主机
在 XShell 终端下敲
ssh @root你的公网ip
ip 为刚才看到的 ifconfig 结果.
如果网络畅通, 将会提示输入用户名密码. 输入即可正确登陆
备注: 这里的用户名密码都是在最初购买服务器的时候设置的用户名密码
XShell 下的复制粘贴
复制: ctrl + insert (有些同学的 insert 需要配合 fn 来按)
粘贴: shift + insert
ctrl + c / ctrl + v 是不行的.