码迷,mamicode.com
首页 > 系统相关 > 详细

2018-1-17Linux系统管理(1)Linux磁盘及文件系统的概念

时间:2018-01-19 14:13:24      阅读:283      评论:0      收藏:0      [点我收藏+]

标签:建设   部分   sof   hidden   单位   标识   冯诺依曼   为什么   命令   

  在本章当中,我们开始对于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:两个,主,从;
     SCSI:
        宽带:16-1
        窄带:8-1
    
     串口:同一线缆只可以接一个设备

   iops:io per second

  那么现在硬盘也分为了两种,一种是机械式硬盘,另一种是固态式硬盘,这两个实现存储的方式是不一样的,机械硬盘是一种机械设备,是通过硬盘旋转来进行数据存取,而固态硬盘是电气设备,是通过电子的运转来实现的,所以后者对于数据的存取更快一些。

二、硬盘的工作原理

  我们主要了解机械式硬盘是如何工作的,简单来讲,就是由真空封装的,由马达带动的多个钢性的盘片,上面涂有磁性的材料,通过上面的固定轨道来实现存取数据,而数据的存储容量取决于涂有磁性材料的密度,这对其工艺的要求是很高的,盘片上从外向内划分了许多轨道,我们称之为磁道。
  在盘面上划分了许多轨道,所存储的数据对每个轨道来说也是不一样的,在同轴马达上,所划过的长度是不一样的,属于固定角速设备,对于数据的存取来说,在磁盘上面悬浮着一个磁头,通过它来读取磁盘上面磁性材料的数据,也可以发送高能信号用来存储在磁性材料当中;这个设备我们称之为磁头。
  对于磁盘来说,正反两面都有磁头,这些磁头都固定在一个机械臂上,所以读取数据由两部分组成,第一步就是挪动磁头,定位在磁道当中,第二步就是等待那个数据转过磁头中去,所以在磁道上读取数据就会有一个平均寻道时间。但由于由内而外的周长其实不一样,所以不能够以一个磁道来进行存储,否则很难实现数据的有效管理,于是乎就把磁道划分成固定大小的扇区,每一个扇区存储量为512bytes。
  刚才讲过,这些磁头都是固定在机械臂上,也就是说是能同步进退了,在某一时刻,不同盘面上同一个编号的磁道,叫做一个柱面。
  那么为什么进行分区,如果不分区的话,就会当成一个文件系统来进行存储,但大体上只能支持四个分区,但为了变成可独立管理的文件系统,彼此间不互相干扰,所以就划分了分区。而分区的划分是按照柱面来进行的。越靠近外面的分区,分区较好,因为单位时间内,磁头划过的时间长,存储的数据量也大,所以一般Windows默认会安装在C盘。

   硬盘:机械硬盘,固态硬盘;
     机械硬盘:
        track:磁道bytes
        sector:扇区, 512
        cylinder:柱面
            分区划分基于柱面;
            
        平均寻道时间:5400rpm, 7200rpm, 10000rpm, 15000rpm

三、设备类型

  对于Linux的哲学思想来说,是一切皆文件,这种哲学思想来说能够对待在硬盘设备上,使得设备有两种类别,一种是块文件,另一种为字符文件。

   设备类型:
     块(block):随机访问,数据交换单位为"块";
     字符(charactor):线性访问,数据交换单位为"字符";

  而对于Linux哲学思想之一:一切皆文件来说,它们也有文件来对设备进行控制,我们称之为设备文件,根据FHS(文件层级结构标准),系统将设备文件存放在/dev目录下,而设备文件的主要作用就是关联该设备的启动程序,它是该设备的访问入口,每一个设备都会有一个设备号,没有大小之分。

   设备文件: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命令:
    
     1、查看磁盘的分区信息;
        fdisk -l [-u] [device]:列出指定磁盘设备上的分区情况;
        
     2、管理分区:
        fdisk device
        
        fdisk提供了一个交互式接口来管理分区,它有许多子命令,分别用于不同的管理功能;所有的操作均在内存中完成,没有直接同步到磁盘;直接使用w命令保存至磁盘上;
    
        常用命令:
            n:创建新分区;
            d:删除已有分区;
            t:修改已有分区;
            l:查看所有已知ID;
            w:保存并退出;
            q:不保存并退出;
            m:查看帮助信息;
            p:显示现有分区信息;

  那么接下来想要使用它的话,你就可以添加一块硬盘或者在现有的磁盘上,找出现有的空间来进行操作。


2018-1-17Linux系统管理(1)Linux磁盘及文件系统的概念

标签:建设   部分   sof   hidden   单位   标识   冯诺依曼   为什么   命令   

原文地址:http://blog.51cto.com/tianxie/2062794

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!