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

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

一、文件系统

1. 文件系统的作用

当我们拿到一块新的硬盘时,他所能够支持的最大空间只是代表硬件上的一个参数,我们要想让他能够正常的工作起来,必须要有相应的文件系统。文件系统决定了文件存储和管理时的方式和数据结构,也就是如何管理磁盘上的文件和文件夹。不同的文件系统拥有不同的特点,这也就是为什么我们在进行格式化操作必须要选定一种文件系统的原因。

当在一个操作系统(Windows、Linux、MacOS)中使用文件系统时,通常都会做一个统一的接口,来进行文件的读写,所以会存在某些文件系统只适用与某一种操作系统的情况。

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

2. 常见Linux文件系统

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

二、添加硬盘

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

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

1. 打开虚拟机设置

2. 添加设备

3. 硬盘类型选择

如果是在真实机器下操作,不必纠结这个,直接插线就好。本例中使用的SCSI,所以添加之后一定要重启虚拟机。

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

4. 硬件创建向导

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

三、磁盘分区

1. MBR分区表

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

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

2. 硬盘识别

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

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

3. 分区工具:fdisk

使用fdisk工具可以对2TB以下的磁盘来进行分区,使用MBR分区表,大于2TB的磁盘需要使用parted工具。

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

4. 设置分区

  • 使用fdisk工具对指定磁盘进行分区(一定要指定磁盘,否则容易把自己的系统搞崩溃哦):
fdisk /dev/sdb

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

通常我们需要根据分配空间的大小来决定终止位置,直接使用+size{K,M,G}的格式操作。

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

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

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

  • 保存退出:命令w

四、格式化

1. 文件系统格式化

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

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

2. swap空间格式化

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

mkswap /dev/sdb6

五、挂载和启用

1. 文件系统的挂载

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

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

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

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

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

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

2. swap空间的启用

由于swap是一块用来充当内存的空间,所以我们不会直接向其中存储文件,自然也不需要挂载点,只要启用就可以了。

  • swapon:开启
  • swapoff:关闭
  • 开启第二个逻辑分区对应的swap空间
swapon /dev/sdb6


目录
相关文章
|
29天前
|
存储 缓存 监控
Linux缓存管理:如何安全地清理系统缓存
在Linux系统中,内存管理至关重要。本文详细介绍了如何安全地清理系统缓存,特别是通过使用`/proc/sys/vm/drop_caches`接口。内容包括清理缓存的原因、步骤、注意事项和最佳实践,帮助你在必要时优化系统性能。
178 78
|
1月前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
67 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
29天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
98 13
|
29天前
|
Ubuntu Linux C++
Win10系统上直接使用linux子系统教程(仅需五步!超简单,快速上手)
本文介绍了如何在Windows 10上安装并使用Linux子系统。首先,通过应用商店安装Windows Terminal和Linux系统(如Ubuntu)。接着,在控制面板中启用“适用于Linux的Windows子系统”并重启电脑。最后,在Windows Terminal中选择安装的Linux系统即可开始使用。文中还提供了注意事项和进一步配置的链接。
44 0
|
1月前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。
|
2月前
|
Linux 网络安全 数据安全/隐私保护
Linux 超级强大的十六进制 dump 工具:XXD 命令,我教你应该如何使用!
在 Linux 系统中,xxd 命令是一个强大的十六进制 dump 工具,可以将文件或数据以十六进制和 ASCII 字符形式显示,帮助用户深入了解和分析数据。本文详细介绍了 xxd 命令的基本用法、高级功能及实际应用案例,包括查看文件内容、指定输出格式、写入文件、数据比较、数据提取、数据转换和数据加密解密等。通过掌握这些技巧,用户可以更高效地处理各种数据问题。
195 8
|
2月前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
798 6
|
2月前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
129 3
|
2月前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
106 2
|
1月前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
76 14
Linux 10 个“who”命令示例