小记:rhcsa第一天 在内容正式开始之前呢,我们首先要提出一个故事,那就是计算机的发展。 那么,什么是计算机呢? 我们这里节选百度百科上的关于计算机的定义:
计算机(computer)俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。 第1代:电子管数字机(1946—1958年) 第2代:晶体管数字机(1958—1964年) 第3代:集成电路数字机(1964—1970年) 第4代:大规模集成电路计算机(1970年至今)
好的,那么用我们的理解来看是什么呢? 由用户通过输入设备输入指令和数据经过cpu的数据和逻辑运算处理后产生有效信息的电子设备,通过识别0和1的代码集合来进行问题解决的设备。 冯诺依曼计算机体系,也就是我们沿用至今的体系,将计算机分为了5个部分。 输入设备(例:鼠标,键盘) 控制器 运算器(集合于cpu) 存储器(例:内存,u盘) 输出设备(例:显示器) 这个并不在我们的主要范畴之内,我们在这里仅作提起,以后另说。 接下来我们要了解一下计算机的“语言”的发展过程,最初的便是我们的始祖——机器语言。 机器语言的特点是什么呢?在最初代的计算机中,每一个的二进制都有着自己独有的一套体系规格,所以机器语言最大的特点便是不可移植性。 显而易见,这种特性的极大的缺陷可以说成为了计算机传播的重大阻碍,所以随之而来的是它的简单升级版本——汇编语言。 百度百科上的解释是这样的:
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。在汇编语言中,用助记符代替机器指令的操作码,用地址符号或标号代替指令或操作数的地址。在不同的设备中,汇编语言对应着不同的机器语言指令集,通过汇编过程转换成机器指令。特定的汇编语言和特定的机器语言指令集是一一对应的,不同平台之间不可直接移植。
那么我们也可以看出来,虽然有所提升,但是依旧有着种种的不便,所以我们现在仍在使用的分类——高级语言登上了历史的舞台。 高级语言是怎样的呢?定义上便是通过编译器,把人类所认识的语言翻译成二级制代码的语言。、 那么如今,我们已经了解到如今是通过高级语言来进行对目前主流计算机的操作,那么,我们的数据是从那里来的呢? 答案便是我们在上面的冯诺依曼计算机体系中提到的存储器。更加准确的说是存储器中的内存这一部分。 既然所有的内容使用的同时,都需要从内存中进行读取,那么我们是不是就必须知道这些存储内容的具体位置,随之而来的便是计算机的一个主要的操作之一——寻址。 我们都知道,内存在断电后数据便会消失,所以内存的寻址并不是一个静态的过程,而是一种动态的过程,那么我们就无法准确的每一次仅仅依赖高级语言完成这一切。 这个时候,我们用到的辅助的工具,就是我们这节课的主角——操作系统。
操作系统是什么?
我们照样来看一看百度百科上的解释:
操作系统(operating system,简称OS)是管理计算机硬件与软件资源的计算机程序。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务。操作系统也提供一个让用户与系统交互的操作界面。
用我所得到的官方一点的话来说,操作系统就是: 管理和控制计算机硬件与软件资源的计算机程序,是配置在计算机硬件上的第一层软件,任何其他软件都必须在操作系统的支持下才能运行。 操作系统的主要功能是为管理硬件资源和为应用程序开发人员提供良好的环境来使应用程序具有更好的兼容性,为了达到这个目的,操作系统内核提供一系列具备预定功能的多内核函数,通过一组称为系统调用的接口(应用编程接口API,由操作系统实现提供的所有系统调用所构成的集合,是应用程序和系统之间的接口)呈现给用户。系统调用把应用程序的请求给内核,调用相应的内核函数完成所需的处理,将处理的结果返回给应用程序。 那么我自己的小结呢?就例如 你从一个什么都是乱放的仓库里拿东西和你在超市里挑东西的差异。操作系统就是通过所有已经设置好的内核函数(超市的货架分类)给用户,让用户拿内在的程序(货物)。 这也就是一般人的C盘(默认系统盘)里面很多内容无法删除的原因,举例子就是你通常去超市可以买超市里的东西(操作系统之上的软件),但是你不能把货架给直接拿走(系统盘内容)。ヾ(?ω?`)o 好的,我们言归正传,来总结一下操作系统的内核的功能: 1.系统调用接口 2.程序管理(例如同时运行多个程序的分配) 3.内存管理,虚拟内存----内存交换 4.文件系统管理(不同文件系统的不同规格) 5.设备驱动(硬件工作的基础) 了解了这些,我们来看看我们现在常见的、为大众所了解的操作系统: Windows类、UNIX、Linux类、MacOS、IOS、Android、ChromeOS… 我们的主角,便是这个Linux类操作系统了。 linux严格来说只是Linux的内核,我们通常所说的Linux其实都是基于Linux内核的一个发行版本的一个操作系统。这些发行版本都是免费使用和自由传播的,也之所以Linux的发行版已经成为了服务器上最主流的操作系统之一。 那么我们接下来来简单讲一下linux的发展历史了。 最初的linux脱胎于Unix系统,所以我们开始从这里说起。 1969年,ken.Thompson 使用BCPL(基本组合编程语言)开发出了Unics(根据不保真传言说是为了玩游戏开发的) 1972年,Dennis Ritchie 用C语言改写了Unix(说起这个名字可能不认识,但是我说C语言之父应该就熟了) (因为版权原因,Unix的收费导致接下来的计划) 1984年,Richard M.Stallman 创办GUN计划和自由软件基金会,旨在开发一个类似Unix、并且是自由软件的完整操作系统:GUN系统,bash工作环境,gcc编程程序等自由软件,GPL协议 1987年 Andrew S.Tanenbaum 开发了Minix 1991年 Linus Benedict Torvalds 正式开发了Linux系统 1994年 Bob Young,Marc Ewing 创立RedHat(Linux的发行版本之一),是世界上最大的开放源代码的公司之一。 Linux的发行版本:redhat enterprise linux, fedora(红帽的免费社区版本), centOS(使用较多)(主要是免费) ,Debian ,Ubantu(国内有个优麒麟比较好),suse 红帽的认证书: RHCSA:redhat certified system administrator(红帽认证系统管理员) RHCE:Redhat certified engineer(红帽认证系统工程师) RHCA:Redhat certified Architect(红帽认证系统架构师) (本系列为RHCSA的课程全集) 那么接下来课程正式开始了~
Linux系统的安装
首先是Linux的安装准备工作: 1.WIndows是64位操作系统(不是64位系统不可能安装,另外我个人感觉应该没有不到64位操作系统的吧)(另外会有部分的家庭版windows用户无法安装,如若有此问题还想继续,请安装专业版) 2.确认电脑开启虚拟化功能的bios 打开任务管理器–>性能–>左下角会显示虚拟化:如果是则跳过,如果不是则查询电脑的bios进入按键(通常为F11,F12)打开虚拟化功能。 3.内存要求至少为2g(不会真的有人不到2g吧) 4.退出/卸载一系列安全软件(因为神奇的安全防护功能会导致连接不正常) 5.需要的环境:虚拟化软件(虚拟工具),用于创建虚拟机(VMware) 6.安装远程连接工具(Xshell) 7.创建虚拟机。 好的,那么我们首先安装完成VMware后,我们会获得这样的一个界面。 下面是我创建虚拟机时的设置,供参考: 1.首先正常创建,然后点击下一步2.继续下一步 3.经典的下一步( 4.这里起名和位置选择,我这里选择装在了我的机械盘里面,如果有条件的话可以选择在固态里面装~ 5.接下来的两个都选择默认的推荐项目,如图。 6.磁盘的选择就是这两个选项,效果的区别就是直接占用空间和你用多少占多少的差别~(如果空间够可以随意) 截图有一点小问题,网络模式我的 选择是NAT模式~就不附截图了。 7.这里的创建完成后,进入硬件视图打开CD/DVD选项,在这里选择你的镜像源。 好啦~准备完成后,我们就可以开启虚拟机了。 进入虚拟机后的最简单的一个操作,在虚拟机模式中按Alt+Ctrl时脱离虚拟机回到本机,记住这一点,我们正常回车后,开始对镜像自检并且加载。 如图: 好的~接下来我们来到了这样的页面: 选择语言(这里建议English+US,并不建议中文,因为很容易有乱码以及不理解的各种指令的情况…) contiune后,如果不想的话,建议在Software Selection中选择Sever with GUI(图形用户界面),并且右边全勾选上(会导致安装速度较慢) 紧接着点开Installation destination,这里就点开然后Done一下就ok了。 完成后就继续begin installation。 接下来呢自己设置一下自己的root密码和用户的id和密码,等待安装完成就ok了~ 完成后我们reboot,然后接下来点掉这个感叹号,同意协议后,就可以准备开机了~ 然后我们登录root用户,点击not listed 输入用户名root,输入你的密码,就算是正式的完成了~
|