Linux系统磁盘分区及挂载 - fdisk

Linux系统磁盘分区及挂载 - fdisk

文本关键字:文件系统,磁盘分区,格式化,挂载bash

1、文件系统

1. 文件系统的做用

当咱们拿到一块新的硬盘时,他所可以支持的最大空间只是表明硬件上的一个参数,咱们要想让他可以正常的工做起来,必需要有相应的文件系统。文件系统决定了文件存储和管理时的方式和数据结构,也就是如何管理磁盘上的文件和文件夹。不一样的文件系统拥有不一样的特色,这也就是为何咱们在进行格式化操做必需要选定一种文件系统的缘由。
当在一个操做系统(Windows、Linux、MacOS)中使用文件系统时,一般都会作一个统一的接口,来进行文件的读写,因此会存在某些文件系统只适用与某一种操做系统的状况。
Linux系统磁盘分区及挂载 - fdisk服务器

  • 系统调用接口:系统为用户的使用提供的接口
  • 虚拟文件系统:整合不一样的文件系统的API接口,使用统一的方式来操做,如挂载、建立目录等
  • 文件系统:具体使用什么文件系统类型,由使用者经过格式化命令来决定
  • 通用块设备层:对于不一样的硬盘驱动进行管理,为上一次提供统一的接口
  • 设备驱动:对于不一样的硬件设备会有相应的驱动,保证磁盘可用,通用的硬盘驱动也会直接编译到内核中

    2. 常见Linux文件系统

  • MINIX:Linux最先使用的文件系统,目前主流版本的Linux系统已再也不使用
  • EXT:CentOS 5/6主要使用的文件系统(EXT二、EXT三、EXT4)
    • EXT3:最大可以管理16TB的单个分区,2TB的单个文件
    • EXT4:最大可以管理1EB的单个分区,16TB的单个文件
  • FAT:微软早期使用的文件系统(FAT十二、FAT1六、FAT32)
    • FAT16:最大可以管理2GB的单个分区,2GB的单个文件
    • FAT32:最大可以管理2TB的单个分区,4GB的单个文件
  • NTFS:目前Windows系统主流使用的文件系统
    • 最大可以管理的单个分区:2TB
    • 最大支持的单个文件:2TB
  • SWAP:严格来讲并非文件系统的一种,属于内存交换分区,相似于Windows的虚拟内存,当系统的运行内存不足时,将使用该部分的空间当作内存使用。既然并非用来存储文件的,那么格式化以及启用的方式也会有所不一样。

    2、添加硬盘

    本文使用VMware虚拟机来进行演示添加一块新硬盘的过程数据结构

  • 若是是在开机状态下添加,须要重启启动虚拟机来进行识别

    1. 打开虚拟机设置

    Linux系统磁盘分区及挂载 - fdisk

    2. 添加设备

    Linux系统磁盘分区及挂载 - fdisk

    3. 硬盘类型选择

    若是是在真实机器下操做,没必要纠结这个,直接插线就好。本例中使用的SCSI,因此添加以后必定要重启虚拟机。ide

  • IDE:接口最大速度为133MB/s,已逐渐被SATA所取代
  • SCSI:小型机系统接口,适用于工做站及我的PC和服务器
  • SATA:支持热插拔,速度也比IDE快不少

Linux系统磁盘分区及挂载 - fdisk

4. 硬件建立向导

Linux系统磁盘分区及挂载 - fdisk

  • 建议你们选择:将虚拟磁盘存储为单个文件,使用时速度会快一些。

Linux系统磁盘分区及挂载 - fdisk
Linux系统磁盘分区及挂载 - fdisk

3、磁盘分区

1. MBR分区表

分区表就是去整个磁盘分区状况的一个记录,对于MBR类型的分区表来讲,该部分会占用512bytes(1扇区)的空间。MBR分区表不支持2TB以上的硬盘。工具

  • 主引导记录:占用446bytes
  • 分区表:最多有四个分区,包括主分区和扩展分区,占用64bytes
    • 分区结束符:55AA,占用2bytes

Linux系统磁盘分区及挂载 - fdisk

2. 硬盘识别

  • 设备信息目录:/dev
    • 对于IDE类型的磁盘,命名格式:/dev/hd[a-d]
    • 对于SATA/SCSI/SAS类型的磁盘,命名格式:/dev/sd[a-p]
  • 添加前:只有默认的一块硬盘,被识别为sda
    • sda1和sda2为分区的编号

Linux系统磁盘分区及挂载 - fdisk

  • 添加后:出现新识别的硬盘,被识别为sdb

Linux系统磁盘分区及挂载 - fdisk

3. 分区工具:fdisk

使用fdisk工具能够对2TB如下的磁盘来进行分区,使用MBR分区表,大于2TB的磁盘须要使用parted工具。操作系统

  • 查看识别到的硬盘:fdisk -l

Linux系统磁盘分区及挂载 - fdisk

4. 设置分区

  • 使用fdisk工具对指定磁盘进行分区(必定要指定磁盘,不然容易把本身的系统搞崩溃哦):
fdisk /dev/sdb

Linux系统磁盘分区及挂载 - fdisk

  • 分区步骤
    • 使用命令n新建分区
    • 选择分区类型
    • 选择分区编号(逻辑分区无此步骤)
    • 选择开始位置
    • 选择结束位置(用于指定分配的空间大小)

一般咱们须要根据分配空间的大小来决定终止位置,直接使用+size{K,M,G}的格式操做。3d

  • 设置主分区:分配5GB的空间
    • 命令:n
    • 类型:p
    • 编号:1
    • 开始位置:1
    • 结束位置:+5G
    • 分区表打印:p

Linux系统磁盘分区及挂载 - fdisk

  • 设置扩展分区:分配剩余全部空间
    • 命令:n
    • 类型:e
    • 编号:2
    • 开始位置:回车
    • 结束位置:回车
    • 分区表打印:p

Linux系统磁盘分区及挂载 - fdisk

  • 设置逻辑分区:新建两个大小为5GB的空间
    • 命令:n
    • 类型:l
    • 开始位置:回车
    • 结束位置:+5G
    • 命令:n
    • 类型:l
    • 开始位置:回车
    • 结束位置:+5G
    • 分区表打印:p

Linux系统磁盘分区及挂载 - fdisk
Linux系统磁盘分区及挂载 - fdisk

  • 保存退出:命令w

Linux系统磁盘分区及挂载 - fdisk

4、格式化

1. 文件系统格式化

  • ext4格式化:将第一个主分区格式化为ext4文件系统
mkfs.ext4 /dev/sdb1

Linux系统磁盘分区及挂载 - fdisk

  • fat32格式化:将第一个逻辑分区格式化为ext4文件系统
mkfs.vfat -32 /dev/sdb5

Linux系统磁盘分区及挂载 - fdisk

2. swap空间格式化

将第二个逻辑分区格式化为swap类型code

mkswap /dev/sdb6

Linux系统磁盘分区及挂载 - fdisk

5、挂载和启用

1. 文件系统的挂载

文件系统的挂载主要分为两步,肯定挂载点 -> 进行挂载。本例中将在/mnt路径下建立两个文件夹做为挂载点,在挂载以前,该目录属于原磁盘sda,查看可用空间时将显示sda可用空间。若是挂载成功,向该目录存储文件将占用sdb的空间,而且文件也会存储在sdb磁盘上,查看可用空间时将会显示sdb对应分区的使用空间。blog

  • 将一个主分区挂载至/mnt/ext4目录
mkdir /mnt/ext4
df -h /mnt/ext4

Linux系统磁盘分区及挂载 - fdisk

mount /dev/sdb1 /mnt/ext4
df -h /mnt/ext4

Linux系统磁盘分区及挂载 - fdisk

  • 将第一个逻辑分区挂载至/mnt/fat32目录
mkdir /mnt/fat32
df -h /mnt/fat32

Linux系统磁盘分区及挂载 - fdisk

mount /dev/sdb5 /mnt/fat32
df -h /mnt/fat32

Linux系统磁盘分区及挂载 - fdisk

  • 解除挂载命令为:umount,只须要一个参数,能够是分区名称,也能够是挂载点

    2. swap空间的启用

    因为swap是一块用来充当内存的空间,因此咱们不会直接向其中存储文件,天然也不须要挂载点,只要启用就能够了。接口

  • swapon:开启
  • swapoff:关闭
  • 开启第二个逻辑分区对应的swap空间
swapon /dev/sdb6
相关文章
相关标签/搜索