天天看点

【SpringBoot后端开发】第三部分 Linux操作系统简介及安装(1)

作者:悠闲一蓑烟雨

创作不易,请帮忙转发、点赞和评论!

一、Linux介绍

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux不仅系统性能稳定,而且是开源软件。其核心防火墙组件性能高效、配置简单,保证了系统的安全。在很多企业网络中,为了追求速度和安全,Linux操作系统不仅仅是被网络运维人员当作服务器使用,Linux既可以当作服务器,又可以当作网络防火墙是Linux的一大亮点。Linux与其他操作系统相比,具有开放源码、没有版权、技术社区用户多等特点,开放源码使得用户可以自由裁剪,灵活性高,功能强大,成本低。尤其系统中内嵌网络协议栈,经过适当的配置就可实现路由器的功能,这些特点使得Linux成为开发路由交换设备的理想开发平台。

伴随着互联网的发展,Linux得到了来自全世界软件爱好者、组织、公司的支持。它除了在服务器操作系统方面保持着强劲的发展势头以外,在个人电脑、嵌入式系统上都有着长足的进步。使用者不仅可以直观地获取该操作系统的实现机制,而且可以根据自身的需要来修改完善这个操作系统,使其最大化地适应用户的需要。

(一)、Linux的特性

●基本思想

Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。

●完全免费

Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。

●完全兼容POSIX1.0标准

这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。

●多用户、多任务

Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。

●良好的界面

Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。

●支持多种平台

Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux 2.4版内核已经能够完全支持Intel64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。

(二)、Linux的版本

●Linux内核版本

内核(kernel)是系统的心脏,是运行程序和管理像磁盘、打印机等硬件设备的核心程序,它提供硬件抽象层、硬盘及文件系统控制及多任务功能的系统核心程序。Linux内核分为稳定版和开发版,两种把本相互关联:

(1).稳定版:具有工业级强度,可广泛地应用和部署,新的版本相对于旧版本只是修改一些bug或加入一些新的驱动程序;

2.开发版:测试各种街机方案,变化较快。

内核源码地址:http://git.kernel.org/,所有来自全世界对Linux源码的修改都会汇聚到该网站,并有Linus领导的开源社区进行甄别和修改对决定是否能进入Linux主线内核源码中。

●Linux发行版本

基于linux内核源码,将Linux系统的内核与外围实用程序(Utilities)软件和文档包装起来,并提供一些系统安装界面和系统配置、设定与管理工具,就构成了一种发行版本(distribution),Linux的发行版本其实就是Linux核心再加上外围的实用程序组成的一个大软件包。

【SpringBoot后端开发】第三部分 Linux操作系统简介及安装(1)

(三)、Linux应用

Linux除了在个人桌面领域应用薄弱外,在嵌入式和服务器领域应用广泛,通常服务器使用LAMP(Linux + Apache + MySQL + PHP)或LNMP(Linux + Nginx+ MySQL+PHP)组合,Linux不仅在家庭与企业中使用,并且在政府中也很受欢迎。

●个人桌面领域:

传统Linux界面简单、操作复杂、应用软件少等特点,目前市面上较知名的Linux桌面领域发行版有:RHEL、CentOS、Fedora、Debian、Ubuntu等

①红帽企业系统(RedHatEnterpriseLinux,RHEL):红帽公司是全球最大的开源技术厂商,RHEL是全世界内使用最广泛的Linux系统。RHEL系统具有极强的性能与稳定性,并且在全球范围内拥有完善的技术支持。

②社区企业操作系统(Community Enterprise Operating System,CentOS):通过把RHEL系统重新编译并发布给用户免费使用的Linux系统,具有广泛的使用人群。CentOS当前已被红帽公司“收编”。

③Fedora(费多拉):由红帽公司发布的桌面版系统套件(目前已经不限于桌面版)。用户可免费体验到最新的技术或工具,这些技术或工具在成熟后会被加入到RHEL系统中,因此Fedora也称为RHEL系统的“试验田”。

④Debian:稳定性、安全性强,提供了免费的基础支持,可以良好地支持各种硬件架构,以及提供近十万种不同的开源软件,在国外拥有很高的认可度和使用率。

⑤Ubuntu:是一款派生自Debian的操作系统,对新款硬件具有极强的兼容能力。Ubuntu与Fedora都是极其出色的Linux桌面系统,而且Ubuntu也可用于服务器领域。

●服务器领域:

Linux免费、稳定、高效的特点使其在服务器领域应用广泛,典型代表有百度、京东、淘宝、12306等网站(通过https://sitereport.netcraft.com/网址可以查看相关服务的操作系统信息,如图)

【SpringBoot后端开发】第三部分 Linux操作系统简介及安装(1)

●嵌入式领域:

Linux运行稳定、对网络的良好支持、低成本且可以根据需要进行软件裁剪,内核最小可以达到几百KB等特点,使其近些年来在嵌入式领域的应用得到非常大的提高。典型的应用有:机顶盒、数字电视、网络电话、程控交换机、手机、PDA等。

(四)、Linux vs Windows

目前国内Linux更多的是应用于服务器上,而桌面操作系统更多使用的是Windows。主要区别如下:

【SpringBoot后端开发】第三部分 Linux操作系统简介及安装(1)

(五)、Linux系统启动过程

linux启动时我们会看到许多启动信息,其过程可以分为5个阶段:

●内核的引导:当计算机打开电源后首先BIOS开机自检,按照BIOS中设置的启动设备(通常是硬盘)来启动,操作系统接管硬件以后读入 /boot目录下的内核文件。

●运行init:init 进程是系统所有进程的起点,没有这个进程系统中其他进程都不会启动,init 程序首先是需要读取配置文件 /etc/inittab。

init进程的一大任务就是去运行那些开机启动的程序,它们在Windows叫做"服务",而在Linux就叫做"守护进程"。Linux允许为不同的场合分配不同的开机启动程序,即设置不同的“运行级别”, inux系统有7个运行级别(runlevel):

①运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动;

②运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆;

③运行级别2:多用户状态(没有NFS);

④运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式;

⑤运行级别4:系统未使用,保留;

⑥运行级别5:X11控制台,登陆后进入图形GUI模式;

⑦运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动;

●系统初始化:主要完成的工作有:激活交换分区,检查磁盘,加载硬件模块以及其它一些需要优先执行任务;

●建立终端:初始化后系统的基本环境已设置好,各种守护进程也已启动,此时init会打开6个终端以便用户登录系统;

●用户登录系统: 用户的登录方式有三种:命令行登录、ssh登录和图形界面登录。

二、安装CentOS操作系统

请参考下述两篇文章中安装Linux操作系统部分

【SpringBoot后端开发】 第二部分 虚拟机软件(Vmware Workstation)

【SpringBoot后端开发】 第二部分 虚拟机软件(Virtual Box)

【SpringBoot后端开发】第三部分 Linux目录结构和文件属性(2)

继续阅读