首页 > 技术文章 > Linux主机规划与磁盘分区

benon94 2019-07-23 11:38 原文

Linux的核心概念:各个组件或设备在Linux下面都是一个文件。(这也是和Windows系统最大的不同)

各硬件设备在Linux中的文件名:

设备 设备在Linux中的文件名
SCSI、SATA、USB硬盘 /dev/sd[a-p] (中括号中的字母代表不同的硬盘)
U盘 /dev/sd[a-p]
Virtio接口 /dev/vd[a-p] (用于虚拟机内)
软驱 /dev/fd[0-7]
打印机

/dev/lp[0-2]  (25针打印机)

/dev/usb/lp[0-15]  (USB接口)

鼠标

/dev/input/mouse[0-15] (通用)

/dev/psaux (PS/2接口)

/dev/mouse (当前鼠标)

CD-ROM、DVD-ROM

/dev/scd[0-1] (通用)

/dev/sr[0-1] (CentOS通用)

/dev/cdrom (当前CD-ROM)

磁带机

/dev/ht0 (IDE接口)

/dev/st0 (SATA/SCSI接口)

/dev/tape (当前磁带)

IDE硬盘 /dev/hd[a-d]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

举例:

  主机上有两个SATA硬盘以及一个USB硬盘,主板上有6个SATA插槽,它们在Linux上的文件名是什么?

答:主机是按照检测到的顺序来决定设备文件名,并非与实际插槽顺序有关,故文件名如下:

  SATA1上的硬盘文件名:/dev/sda

  SATA2上的硬盘文件名:/dev/sdb

  USB硬盘文件名:/dev/sdc  (因为USB硬盘要在系统启动完成后才能被识别,故排在最后)

 

使用虚拟机学习:

  如果你的系统是Windows系列,建议使用VirtualBox。

  如果原本就是Linux系统,可以使用原本系统内就有的虚拟系统管理器来处理。

磁盘分区:

  碟片上面可细分出扇区(Sector)与磁道(Track),扇区的物理大小设计有两种,分别是512字节与4K字节。

  早期的磁盘第一个扇区里面含有的重要信息称为MBR格式,后来又多个一个新的磁盘分区格式,称为GPT。

  1.MBR(MS-DOS)

  早期的Linux系统为了兼容Windows的磁盘,使用的是支持Windows的MBR的方式来处理启动引导程序与分区表。

  第一个扇区512字节包含两个东西:

    主引导记录(MBR):可以安装启动引导程序的地方,有446字节;

    分区表:记录整块硬盘分区的状态,有64字节。

  因为分区表只有64字节容量,因此最多只能有四组记录区,分别为/dev/sda1、/dev/sda2、/dev/sda3、/dev/sda4

  以上四个记录区就相当于Windows系统中的C、D、E、F盘。

  MBR的缺点:

    •  操作系统无法使用2.2TB以上的磁盘容量;
    •  MBR仅有一个区块,若被破坏,经常无法或很难恢复;
    •  MBR内的存放启动引导程序的区块仅446字节,无法存储较多的程序代码。

  注意: 主要分区(Primary)、扩展分区(Extended)、逻辑分区(logical)

    •  主要分区与扩展分区的和最多可以有4个(硬盘的限制)
    •  扩展分区最多只能有1个(操作系统的限制)
    •  逻辑分区是由扩展分区持续划分出来的分区。
    •  能够被格式化后作为数据存取的分区是主要分区与逻辑分区,扩展分区无法格式化。
    •    逻辑分区的数量依操作系统而不同,在Linux系统中SATA硬盘已经可以突破63个以上的分区限制。

  2.GPT(GUID partition table) 磁盘分区表

  为了兼容所有的磁盘,因此在扇区的定义上会使用所谓的逻辑区块地址(LBA)来处理,GPT将磁盘所有区块以此LBA(默认512字节)来规划。

    LBA0(GPT表头记录):记录了分区表本身的位置与大小,同时记录了备份用的GPT分区放置的位置。

    LBA2-33(实际记录分共信息处):每个LBA都可以记录4组分区记录,所以在默认情况下,总共可以有4*32=128组分区记录。

  GPT分区没有所谓有主、扩展、逻辑分区的概念,每个都可以视为主要分区,每一个分区都可以拿来格式化使用。

 

主机的启动流程与启动检测:

  操作系统也是软件,那如何让我们的主机认识这个软件并执行它呢?

    1.BIOS搭配MBR/GPT的启动流程

  CMOS是记录各项硬件参数且嵌入在主板上面的存储器,BIOS则是一个写入到主板上的一个固件(就是一个软件程序)。

  BIOS是主机启动后,计算机系统会主动执行的第一个程序,具体过程如下:

      •  BIOS:启动主动执行的固件,会认识第一个可启动的设备;
      •  MBR:第一个可启动设备的第一个扇区内的主引导记录块,内含启动引导代码;
      •  启动引导程序(boot loader):一个可读取内核文件来执行的软件;
      •  内核文件:开始启动操作系统。

    2.UEFI BIOS搭配GPT启动的流程

  GPT可以提供64位的寻址,但BIOS仅是16位的程序,而且BIOS其实不懂GPT。

  为了解决这个问题,因此就有了UEFI这个统一可扩展固件接口的产生。

  

 

 Linux安装模式下,磁盘分区的选择:

  目录树结构:

    Linux整个目录树架构最重要的就是那个根目录,表示方法为一条斜线 / 。(注意:Windows都是使用反斜线 \ )

  文件系统与目录树的关系(挂载):

     所谓的“挂载”就是利用一个目录当成进入点,将磁盘分区的数据放置在该目录下;也就是说进入该目录就可以读取该分区。

    那个进入点的目录我们称为“挂载点”,根目录是最重要的目录,因此一定需要挂载到某个分区。

  

推荐阅读