在本章当中,咱们开始对于Linux的系统篇的介绍,咱们首先了解一下磁盘的构造以及文件系统的概念,在上一篇的基础中,主要介绍了Linux的命令的用法等其它的一些概念,知识比较琐碎,但愿将这些基础知识多看得以巩固,唉。。。日子很差过啊,学习原本就很难。那么在这一章当中咱们来说述Linux磁盘及文件系统的概念。服务器
咱们操做系统组成部分大体分为硬件和软件,硬件设备是最底层的,这是计算机的一个运行的基础,冯诺依曼定义了硬件部件,分别为是CPU(由运算器和控制器组成)而后是Memory(主存,也就是内存设备),是一个可编址的存储单元,它的单元是一个的大小是一个字节,是一串八位二进制组成的,每个字节都有一个十六进制标识着,可是内存只是临时性的存储,只要一断电,全部的数据也都会没有,因此咱们须要一个辅存,用来永久存储这些数据,断电以后,数据依然存在,如今来讲,若是主机没法链接网络的话就是一个孤岛而已,那么网卡设备就是另外一种重要的IO设备,对于服务器来讲,网卡是极为重要的,由于它是服务出入的一个接口。
早期的硬盘设备对于PC来说接口有不少种,早期的IDE,和如今SATA等,线缆的类型是不同的,对于数据类型的存取是由CPU来实现的,它们之间的传输也是经过某种协议来实现的。
咱们来总结一下硬件的组成以及硬盘接口的类型等属性。网络
CPU, Memory(RAM), I/O I/O:Disk, EhterCard 接口类型: IDE(ata):并口,133MB/s SCSI并口:Ultrascsi320, 320MB/s, Ultrascsi640, 640MB/s SATA:串口,6gbps; SAS:串口,6gbps; USB:串口,480MB/s
那么关于接口的类型分为大体两部分,一个是并口,另外一个是串口,按理来讲并口比串口要快,就像多个跑道一块儿跑,可是它们相互之间防护机制很弱的话,就会产生干扰,ide
并口:同一线缆能够接多块设备 IDE:两个,主,从; SCSI: 宽带:16-1 窄带:8-1 串口:同一线缆只能够接一个设备 iops:io per second
那么如今硬盘也分为了两种,一种是机械式硬盘,另外一种是固态式硬盘,这两个实现存储的方式是不同的,机械硬盘是一种机械设备,是经过硬盘旋转来进行数据存取,而固态硬盘是电气设备,是经过电子的运转来实现的,因此后者对于数据的存取更快一些。学习
咱们主要了解机械式硬盘是如何工做的,简单来说,就是由真空封装的,由马达带动的多个钢性的盘片,上面涂有磁性的材料,经过上面的固定轨道来实现存取数据,而数据的存储容量取决于涂有磁性材料的密度,这对其工艺的要求是很高的,盘片上从外向内划分了许多轨道,咱们称之为磁道。
在盘面上划分了许多轨道,所存储的数据对每一个轨道来讲也是不同的,在同轴马达上,所划过的长度是不同的,属于固定角速设备,对于数据的存取来讲,在磁盘上面悬浮着一个磁头,经过它来读取磁盘上面磁性材料的数据,也能够发送高能信号用来存储在磁性材料当中;这个设备咱们称之为磁头。
对于磁盘来讲,正反两面都有磁头,这些磁头都固定在一个机械臂上,因此读取数据由两部分组成,第一步就是挪动磁头,定位在磁道当中,第二步就是等待那个数据转过磁头中去,因此在磁道上读取数据就会有一个平均寻道时间。但因为由内而外的周长其实不同,因此不可以以一个磁道来进行存储,不然很难实现数据的有效管理,因而乎就把磁道划分红固定大小的扇区,每个扇区存储量为512bytes。
刚才讲过,这些磁头都是固定在机械臂上,也就是说是能同步进退了,在某一时刻,不一样盘面上同一个编号的磁道,叫作一个柱面。
那么为何进行分区,若是不分区的话,就会当成一个文件系统来进行存储,但大致上只能支持四个分区,但为了变成可独立管理的文件系统,彼此间不互相干扰,因此就划分了分区。而分区的划分是按照柱面来进行的。越靠近外面的分区,分区较好,由于单位时间内,磁头划过的时间长,存储的数据量也大,因此通常Windows默认会安装在C盘。spa
硬盘:机械硬盘,固态硬盘; 机械硬盘: track:磁道bytes sector:扇区, 512 cylinder:柱面 分区划分基于柱面; 平均寻道时间:5400rpm, 7200rpm, 10000rpm, 15000rpm
对于Linux的哲学思想来讲,是一切皆文件,这种哲学思想来讲可以对待在硬盘设备上,使得设备有两种类别,一种是块文件,另外一种为字符文件。操作系统
设备类型: 块(block):随机访问,数据交换单位为"块"; 字符(charactor):线性访问,数据交换单位为"字符";
而对于Linux哲学思想之一:一切皆文件来讲,它们也有文件来对设备进行控制,咱们称之为设备文件,根据FHS(文件层级结构标准),系统将设备文件存放在/dev目录下,而设备文件的主要做用就是关联该设备的启动程序,它是该设备的访问入口,每个设备都会有一个设备号,没有大小之分。orm
设备文件:FHS /dev 设备文件:关联至设备的驱动程序;是设备的访问入口; 设备号: major:主设备号,区分设备类型;用于标明设备所须要的驱动程序; minor:次设备号,区分同种设备类型下的不一样设备;是特定的访问入口;
若是未来须要手动建立设备文件时,可使用mknod命令。它是能够建立块设备以及字符设备文件的一条命令,其命令格式为:接口
mknod [OPTION]... NAME TYPE [MAJOR MINOR]
该命令选项以下:内存
-m MODE:建立后的设备文件的访问权限
那么在系统上全部的设备文件名,都是由ICANN定义的,否则的话,不一样的发行版对于设备的文件名会大相径庭,对于系统来讲,不一样的磁盘设备都会有不一样的设备文件。示例以下:同步
磁盘: IDE:/dev/hd[a-z] 例如:/dev/hda, /dev/hdb SCSI, SATA, USB, SAS:/dev/sd[a-z] 分区: /dev/sda# 注意:CentOS 6和7通通将硬盘设备文件标识为/dev/sd[a-z]# 引用设备的方式: 设备文件名; 卷标; UUID;
咱们刚才讲过磁盘最多只能分四个区,这是属于MBR类型,如今不仅有MBR类型,还有GPT类型,在0磁道0扇区,用做于MBR扇区,MBR咱们称之为主引导记录,共512个字节,分为了三部分,可是好像不止能够分到四个分区,这是由于咱们把其中一个分区拿出来指向另一个存储空间,把那新的空间看成新的存储表用来存储,而用来引导其它分区标的分区就叫作扩展分区,所以整个的空间都可以给扩展分区,可是扩展不能直接使用,须要在该指向的空间中建立成逻辑分区,通常最后一个主分区咱们就划分红扩展分区,那么咱们来总结一下:
磁盘分区:MBR, GPT MBR:0 sector Master Boot Record 分为三部分: 446bytes:bootloader, 程序, 引导启动操做系统的程序; 64bytes:分区表,每16bytes标识一个分区,一共只有4个分区; 4个主分区 3主1扩展: n个逻辑分区; 扩展分区:将某一个主分区指向另外一个分区表,咱们称之为扩展分区,而在这里分区的空间咱们称之为逻辑分区; 2bytes:MBR区域的有效性标识;55AA为有效; 主分区和扩展分区的标识:1-4; 逻辑分区:5+;
即便你的扩展分区一个都没用,逻辑分区也得是从5+开始。
那么管理磁盘分区的命令为fdisk,做用为管理磁盘分区表的,该命令的格式及用法为:
fdisk命令: 一、查看磁盘的分区信息; fdisk -l [-u] [device]:列出指定磁盘设备上的分区状况; 二、管理分区: fdisk device fdisk提供了一个交互式接口来管理分区,它有许多子命令,分别用于不一样的管理功能;全部的操做均在内存中完成,没有直接同步到磁盘;直接使用w命令保存至磁盘上; 经常使用命令: n:建立新分区; d:删除已有分区; t:修改已有分区; l:查看全部已知ID; w:保存并退出; q:不保存并退出; m:查看帮助信息; p:显示现有分区信息;
那么接下来想要使用它的话,你就能够添加一块硬盘或者在现有的磁盘上,找出现有的空间来进行操做。