侧边栏壁纸
博主头像
张种恩的技术小栈博主等级

行动起来,活在当下

  • 累计撰写 742 篇文章
  • 累计创建 64 个标签
  • 累计收到 39 条评论

目 录CONTENT

文章目录

Linux基础(1)之Linux简介

zze
zze
2019-09-03 / 0 评论 / 0 点赞 / 549 阅读 / 7838 字

不定期更新相关视频,抖音点击左上角加号后扫一扫右方侧边栏二维码关注我~正在更新《Shell其实很简单》系列

什么是操作系统?

操作系统简介

三句话之内说明白什么是操作系统:是个人与计算机硬件的中介。
操作系统,英文名称 Operating System,,简称 OS,是计算机系统中必不可少的基础系统软件,它是应用程序运行以及用户操作必备的基础环境支撑,是计算机系统的核心
操作系统的作用是管理和控制计算机系统中的硬件和软件资源,例如,它负责直接管理计算机系统的各种硬件资源,如对CPU、内存、磁盘等的管理,同时对系统资源供需的优先次序进行管理。
操作系统还可以控制设备的输入、输出以及操作网络与管理文件系统等事务。同时,它也负责对计算机系统中各类软件资源的管理。例如各类应用软件的安装、运行环境设置等。下图给出了操作系统与计算机硬件、软件之间的关系示意图。

操作系统组成

  • Linux 系统组成:内核 + shell + 扩展软件;
  • Windows 系统组成:也有内核 + explorer.exe + 软件。

只有硬件就是空壳子。

image.png

操作系统就是处于用户与计算机系统硬件之间用于传递信息的系统程序软件。例如:操作系统会在接收到用户输入的信息后,将其传给计算机系统硬件核心进行处理,然后再把计算机系统硬件的处理结果返回给使用者。
下面是简单理解操作系统作用的示意图。人机交互的窗口(你如何操作电脑的):

image.png

目前 PC(Intel x86 系列)计算机上比较常见的操作系统有 Windows、Linux、 DOS、Unix 等。

什么是Linux

类似 Windows,Linux 也是一个操作系统软件,Linux 是一套开放源代码程序的、并可以自由传播的类 Unix 操作系统软件,多用户、多任务并且支持多线程和多 CPU 的操作系统。
Linux 系统主要被应用于服务器端、嵌入式开发和个人 PC 桌面 3 大领域,其中服务器端领域是重中之重

我们熟知的大型、超大型互联网企业(百度,Sina、淘宝等)都在使用 Linux 系统作为其服务器端的程序运行平台,全球及国内排名前十的网站使用的主流系统几乎都是 Linux 系统。
从上面的内容可以看出,Linux 操作系统之所以如此流行,是因为它具有如下一些特点:

  • 是开放源代码的程序软件,可自由修改;
  • Unix 系统兼容,具备几乎所有 Unix 的优秀特性;
  • 可自由传播,无任何商业化版权制约;
  • 适合 Intel 等 x86 CPU 系列架构的计算机;

Linux的起源

Unix的历史

Unix 系统于 1969 年在 AT&T 的贝尔实验室诞生,20 世纪 70 年代,它逐步盛行,这期间,又产生了一个比较重要的分支,就是大约 1977 年诞生的 BSD(Berkeley Software Distribution)系统。从 BSD 系统开始,各大厂商及商业公司开始了根据自身公司的硬件架构,并以 BSD 系统为基础进行 Unix 系统的研发,从而产生了各种版本的 Unix 系统,例如:SUN 公司的 Solaris,IBM 公司的 AIX,HP 公司的 HP,UNIX 等。下图给出了 Unix 系统诞生、发展的时间及版本分支介绍。

Unix的5大优秀特性

  • 技术成熟,可靠性高
  • 极强的可伸缩性
    Unix 支持的 CPU 处理器体系架构非常多,包括 Intel/AMD 及 HP-PA、MIPS、PowerPC、UItraSPARC、ALPHA等RISC芯片,以及 SMP、MPP 等技术。

提示:可能是由于早期各大厂商都基于 Unix 进行适合自己的硬件开发,因此,Unix 支持的 CPU 架构才更多。

  • 强大的网络功能
    Internet 互联最重要的协议 TCP/IP 就是在 Unix 上开发和发展起来的。此外,Unix 还支持非常多的常用的网络通信协议,如 NFS、DCE、IPX/SPX、SLIP、PPP 等。
  • 强大的数据库支持能力
    Oracle、DB2、Sybase、 Informix 等大型数据库,都把 Unix 作为其主要的数据库开发和运行平台,一直到目前为止,依然如此。
  • 强大的开发功能
    正是 Unix 促使了 C 语言的诞生。

Unix操作系统的革命

70 年代中后期,由于各厂商及商业公司开发的 Unix 及内置软件都是针对自己公司特定硬件的,因此在其他公司的硬件上基本上无法直接运行。.
70 年代末,Unix 又面临了突如其来的被 AT&T 回收版权的重大问题,特别是要求禁止对学生群体提供 Unix 系统源代码。
也是在 80 年代初期,同样是由于之前的 Unix 系统版权和源代码限制等问题,使得当时大学里教学 Unix 系统的束缚很大。因此,当时的一个大学的教授, 名字为 Andrew Tanenbaum (谭宁邦),并且可以运行于 x86 PC 平台,这个系统的名字为 Minix

由于谭宁邦开发的这个Minix系统的目的只是用于教学,因此,Minix 系统的功能无法满足商用的需求,但是 Minix 的产生对于 Linux 的诞生又是至关重要的一一个部分。

1984 年,Richard Stallman(斯托曼)发起了开发自由软件的运动,并成立了自由软件基金会(Free Software Foundation, FSF)和 GNU 项目。
当时发起这个自由软件运动和创建 GNU 项目的目的其实很简单,就是想开发一-个类似 Unix 系统、并且是自由软件的完整操作系统,也就是要解决 70 年代末 Unix 版权问题以及软件源代码面临闭源的问题,这个系统叫做GNU操作系统。

这个 GNU 系统后来没有流行起来。现在的 GNU 系统通常是使用 Linux 系统的内核,以及使用了 GNU 项目贡献的些组件加上其它相关程序组成,这样的组合被称为 GNU Linux 操作系统。

Linux的诞生

Linux 系统的诞生开始于芬兰赫尔辛基大学的一位计算机系的学生, 名字为 Linus Torvalds。
Linux 的标志和吉祥物为一只名字叫作 Tux 的企鹅一 Torvalds' Unix,如下图:

image.png

Linux的发展历程

Linux的发展历程简介

  1. 1984 年,Andrew S. Tanenbaum 开发了于教学的 Unix 系统,命名为 MINIX。
  2. 1989 年,Andrew S. Tanenbaum 将 MINIX 系统运行于 x86 的 PC 计算机平台。
  3. 1990 年,芬兰赫尔辛基大学学生 Linus Torvalds 首次接触 MINIX 系统。
  4. 1991 年,Linus Torvalds 开始在 MINIX 上编写各种驱动程序等操作系统内核组件。
  5. 1991 年底,Linus Torvalds 公开了 Linux 内核源码 0.02 版(http://www.kernelorg),注意,这里公开的 Linux 内核源码并不是我们现在使用的 Linux 系统的全部,而仅仅是 Linux 内核 kemel 部分的代码。
  6. 1993 年,Linux 1.0 版发行,Linux 转向 GPL 版权协议。
  7. 1994 年,Linux 的第-一个商 业发行版 Slackware 问世。
  8. 1996 年,美国国家标准技术局的计算机系统实验室确认 Linux 版本 12.13(由 Open Linux 公司打包)符合 POSIX 标准。
  9. 1999 年,Linux 的简体中文发行版问世。
  10. 2000 年后,Linux 系统日趋成熟,涌现大量基于 Linux 服务器平台的应用,并广泛应用于基于 ARM 技术的嵌入式系统中。

Linux发展历程中相关人物

我们一定要向前辈们致以深深地敬意,没有他们,就没有今天的 Linux 优秀系统存在。
image.png

Linux的核心概念知识

自由软件

简单地理解,自由软件的核心就是没有商业化软件版权制约,源代码开放,可无约束自由传播。

注意:自由软件强调的是权利问题,而非是否免费的问题。大家一定要理解这个概念,自由软件中的自由是“言论自由”中的“自由”,而不是“免费啤酒”中的“免费”。

自由意味着 freedom,而免费意味着 free, 这是完全不同的概念。例如:RedHat Linux 自由但不免费,CentOS Linux 是自由且免费的。
自由软件关乎使用者运行、复制、发布、研究、修改和改进该软件的自由。

自由软件基金会 FSF

FSF(Free Software Foundation)的中文意思是自由软件基金会,是 Richard Stallman 于1984年发起和创办的。FSF 的主要项目是 GNU 项目。GNU 项目本身产生的主要软件包括:Emacs 编辑软件、gcc 编译软件、bash 命令解释程序和编程语言,以及 gawk (GNU' sawk)等。
现在的 GNU 系统通常是使用 Linux 系统的内核、加上 GNU 项目贡献的一些组件, 以及其他相关程序组成的,这样的组合被称为GNU Linux 操作系统。到 1991 年 Linux 内核发布的时候,GNU 项目已经完成了除系统内核之外的各种必备软件的开发。
在 Linus Torvalds 和其他开发人员的努力下,GNU 项目的部分组件又运行到了 Linux 内核之上,例如:GNU 项目里的 Emacs、gcc、bash、gawk 等,至今都是 Linux 系统中很重要的基础软件。

GPL

GPL 全称为 General Public Liense,中文名为通用公共许可,是一个最著名的开源许可协议,开源社区最著名的 Linux 内核就是在GPL 许可下发布的。IGPL 许可是由自由软件基金会(Free Sofware soundation) 创建的。
1984 年,Richard Stallman 发起开发自由软件的运动后不久,在其他人的协作下,他创立了通用公共许可证(GPL) ,这对推动自由软件的发展起了至关重要的作用,那么,这个 GPL 到底是什么意思呢?
简单的理解,GPL 许可的核心,是保证任何人有共享和修改自由软件的自由,任何人有权取得、修改和重新发布自由软件的源代码权利,但都必须同时给出具体更改的源代码虽然整个 Linux 内核是基于 GNU 通用公共许可的,但是 Linux 内核并不是 GNU 计划的一部分,这一点请读者不要混淆。

如何选择Linux的发行版

Linux的发行版本介绍

Linux 内核(kernel)版本主要有 4 个系列,分别为 Linux kernel 2.2、Linux kernel 2.4、Linux kernel 2.6,Linux kernel3.x,更多更新的内核版本请浏览 https://www.kernel.org/
Linux 的发行商包括 Slackware、Redhat、Debian、Fedora、TurboL inux、Mandrake、SUSE、CentOS、Ubuntu、红旗、麒麟....
下面来看看其中几个重要的发行版本。

  1. Red Hat: Red Hat Linux 9.0的内核为 2.4.20。在版本 9.0 后,Red Hat 不再遵循 GPL 协议,成为收费产品(但仍开源),发展的新版本依次为 RedHat 3.x RedHat 4.x、RedHat 5.x、 RedHat 6.x、RedHat 7.x。Red Hat Enterprise 6.x。
  2. Fedora:为 RedHat 的一个分支, 仍遵循 GPL 协议,可以认为是 RedHat 预发布版。
  3. CentOS(Community Enterprise Operating System):与 RedHat 做到二进制级别的一模一样。RedHat 的另一个重要分支,以 RedHat 所发布的源代码重建符合 GPL 许可协议的 Linux 系统,即将 RedHat Linux 源代码的商标 LOGO 以及非自由软件部分去除后再编译而成的版本,目前 CentOS,已被 RedHat 公司收购,但仍开源免费。CentOS Linux 是国内互联网公司使用最多的 Linux 系统版本,也是本书的“主人公”,本书后面所有的内容讲解都是基于 CentOS 这个操作系统的,绝大部分内容几乎无
    需任何修改同样适合其它操作系统版本。

提示:有关 Linux 操作系统,记住 Redhat、CentOS、Ubuntu、 Fedora、SUSE、Debian 等即可。Redhat 与 CentOS 的区别和联系,有时会被面试官问到,需要重点了解。

选择合适的Linux系统学习

Linux发行版本应用场景

image.png

选择CentOS Linux的版本

本书讲解的 Linux 运维技术主要是基 于CentOS x86_64 Linux的,绝大部分知识几乎无需任何修改同样也适用于 Red Hat Linux 等同源或类似 Linux 系统版本。
下面是 CentOS 的主流版本在国内互联网企业的使用现状说明:

  • CentOS5 系列:占 10% 左右,主流版本有 CentOS 5.5、CentOS 5.8、CentOS5.10、CentOS5.11,不推荐新手学习了。===>linux 2.4
  • CentOS6 系列:占 45% 左右,主流版本有 CentOS 6.2、CentOS 6.4、CentOS 6.6、CentOS6.9,推荐新手学习。===>linux 2. 6
  • CentOS7系列:占 45%, 主流版本有 Centos7.1、CentOS7.4 CentOS7. 5、CentOS7.6。

操作系统下载地址:http://vault.centos.org/

0

评论区