当前位置: 首页 > web >正文

Linux基础篇、第四章_02磁盘及分区管理fdisk 和 gdisk

题目:Linux 磁盘及分区管理

版本号: 1.0,0
作者: @老王要学习
日期: 2025.04.25
适用环境: Centos7

文档说明

本教程适用于 Centos7 环境,详细介绍 Linux 磁盘及分区管理操作。包含虚拟机添加磁盘的关机与开机添加方法、MBR 和 GPT 两种分区方式特点、fdisk 和 gdisk 分区命令使用、分区格式化及临时和永久挂载分区操作

环境准备

硬件要求

  • 服务器: 2核CPU、2GB内存,20GB硬盘空间
  • 网络: 确保服务器具有固定的IP地址,并且防火墙允许FTP端口(默认22端口)的通信

软件要求

  • 操作系统:Centos7
  • FTP软件:SecureCRT
  • 软件包:无

一、虚拟机添加磁盘

1、关机添加

关闭虚拟机——打开VM——菜单——虚拟机——设置——硬盘——添加——一直下一步——完成——确定——开机

init 0

在这里插入图片描述

![[Pasted image 20250425094233.png]]
![[Pasted image 20250425094607.png]]

2、开机添加

添加同关机添加一样步骤,添加完系统无法识别到,使用命令来扫描新磁盘

echo "- - -" >> /sys/class/scsi_host/host0/scan
echo "- - -" >> /sys/class/scsi_host/host1/scan
echo "- - -" >> /sys/class/scsi_host/host2/scan #查看磁盘信息
fdisk -l

结果如下sdb为新添加的磁盘(可能因环境不同名字有差异)

磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

二、磁盘分区方式

1、MBR(主引导记录)

MBR传统的磁盘分区方式,最多支持4个主分区,或3个主分区1个扩展分区,扩展分区下可以分多个逻辑分区

特点:

分区数量限制:最多支持4个主分区,或3个主分区1个扩展分区,扩展分区下可以分多个逻辑分区
容量限制:每个分区最大支持2TB容量
兼容性好:在各种操作系统与硬件平台上有较好的兼容性

2、GPT(GUID分区表)

GPT是一种新型的磁盘分区表结构,全称为’全局唯一标识磁盘分区表

特点:

自纠错能力:能在一定程度上检测和修复分区表的错误,提高磁盘分区可靠性
无主分区数量限制:主分区数量不在只能创建4个,可以根据实际需求创建多个,灵活的分区管理
大容量支持:支持大于18EB的总容量,几乎无上限,最大支持128个分区,每个分区支持到256TB

三、分区命令

1、fdisk分区

fdisk /dev/sdb
#创建新分区输入n,创建主分区p,分区号1,起始值为0,赋予+3G的空间,查看分区情况p,保存并退出w命令(输入 m 获取帮助):n
Partition type:p   primary (0 primary, 0 extended, 4 free)e   extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+3G
分区 1 已设置为 Linux 类型,大小设为 3 GiB命令(输入 m 获取帮助):p磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x199d97e6设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6293503     3145728   83  Linux命令(输入 m 获取帮助):w
The partition table has been altered!Calling ioctl() to re-read partition table.
正在同步磁盘。

2、fdisk常用命令如下:

命令作用
p显示当前磁盘的分区情况
n创建新分区,选择p创建主分区,选择e创建逻辑分区
d删除一个指定的分区,输入分区编号
w保存分区表并退出
q不保存直接退出
t修改分区类型,输入分区编号与设置文件类型代码
l显示fdisk支出所以文件系统类型代码的名称

3、创建扩展分区与逻辑分区

创建3个主分区分别3G,剩下的全部分给创建扩展分区,再创建2个3G与1个5G逻辑分区

#创建完3个主分区直接可以创建扩展分区e令(输入 m 获取帮助):n
Partition type:p   primary (3 primary, 0 extended, 1 free)e   extended
Select (default e): 
Using default response e
已选择分区 4
起始 扇区 (18876416-41943039,默认为 18876416):
将使用默认值 18876416
Last 扇区, +扇区 or +size{K,M,G} (18876416-41943039,默认为 41943039):
将使用默认值 41943039
分区 4 已设置为 Extended 类型,大小设为 11 GiB命令(输入 m 获取帮助):p磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x199d97e6设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6293503     3145728   83  Linux
/dev/sdb2         6293504    12584959     3145728   83  Linux
/dev/sdb3        12584960    18876415     3145728   83  Linux
/dev/sdb4        18876416    41943039    11533312    5  Extended#创建3个逻辑分区结果如下:设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6293503     3145728   83  Linux
/dev/sdb2         6293504    12584959     3145728   83  Linux
/dev/sdb3        12584960    18876415     3145728   83  Linux
/dev/sdb4        18876416    41943039    11533312    5  Extended
/dev/sdb5        18878464    25169919     3145728   83  Linux
/dev/sdb6        25171968    31463423     3145728   83  Linux
/dev/sdb7        31465472    41943039     5238784   83  Linux命令(输入 m 获取帮助):w
The partition table has been altered!Calling ioctl() to re-read partition table.
正在同步磁盘。

4、gdisk分区介绍

gdisk 是专门用于 GPT 分区表的分区工具,其使用方法与 fdisk 类似
再添加一块硬盘进行测试/dev/sdc

#没有gdisk进行安装
yum -y install gdisk#进行磁盘分区
gdisk /dev/sdc#创建效果如下:(自定义设置大小感受创建过程)
Command (? for help): n
Partition number (2-128, default 2): 
First sector (34-41943006, default = 6293504) or {+-}size{KMGTP}: 
Last sector (6293504-41943006, default = 41943006) or {+-}size{KMGTP}: +4G
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): 
Changed type of partition to 'Linux filesystem'Command (? for help): p
Disk /dev/sdc: 41943040 sectors, 20.0 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): 61C69977-56B5-45AA-A931-C3C6DD9C56C2
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 41943006
Partitions will be aligned on 2048-sector boundaries
Total free space is 27262909 sectors (13.0 GiB)Number  Start (sector)    End (sector)  Size       Code  Name1            2048         6293503   3.0 GiB     8300  Linux filesystem2         6293504        14682111   4.0 GiB     8300  Linux filesystemCommand (? for help): wFinal checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING
PARTITIONS!!Do you want to proceed? (Y/N): y
OK; writing new GUID partition table (GPT) to /dev/sdc.
The operation has completed successfully.

四、分区格式化

1、格式化EXT4文件系统

mkfs.ext4 /dev/sdb1#完成效果如下:
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
196608 inodes, 786432 blocks
39321 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=805306368
24 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (16384 blocks): 完成
Writing superblocks and filesystem accounting information: 完成 

适用于一般的 Linux 桌面系统和小型服务器,对于日常办公、开发环境以及一些对小文件读写频繁的应用较为合适

2、格式化 XFS 文件系统:

mkfs.xfs -f /dev/sdb2#成功结果如下:
meta-data=/dev/sdb2              isize=512    agcount=4, agsize=196608 blks=                       sectsz=512   attr=2, projid32bit=1=                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=786432, imaxpct=25=                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2=                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

常用于大型服务器、数据库系统、高性能计算环境以及需要处理大量数据的场景,如数据中心、媒体存储等

五、挂载分区

将格式化后的分区挂载系统目录树中,使其能够被系统访问与使用

1、临时挂载

重启虚拟机后挂载失效

mount /dev/sdb1 /mnt

:意挂载修改不会有任何提示

2、永久挂载

写入/etc/fstab文件中,每次开机自动挂载

echo "/dev/sdb1 /mnt/data ext4 defaults 0 0" >> /etc/fstab
http://www.xdnf.cn/news/2069.html

相关文章:

  • 厚铜PCB打样全流程解析:从文件审核到可靠性测试的关键步骤
  • Python的库
  • Hbase集群管理与实践
  • C语言——字串处理
  • 什么是快应用
  • STM32 I2C总线通信协议
  • 遥感金融风险监管:技术革新与实践探索
  • Java—— 常见API介绍 第五期
  • cursor 提示词和规则
  • 基于SpringBoot+Vue实现停车场管理系统
  • sync.Cond条件变量:使用场景与范例
  • Centos 7 ssh连接速度慢(耗时秒+)
  • LWIP中两种重要的数据结构pbuf和pcb详细介绍
  • 【大模型学习】Qwen-2.5-VL制作gradio前端demo页面
  • (九)深入了解AVFoundation-采集:拍照 摄像头切换、拍照参数和照片数据EXIF 信息
  • Pandas 数据处理:长格式到宽格式的全面指南
  • 文章记单词 | 第41篇(六级)
  • Vue3文件上传组件实战:打造高效的Element Plus上传解决方案,可以对文件进行删除,查看,下载功能。
  • 代码随想录算法训练营第五十八天 | 1.拓扑排序精讲 2.dijkstra(朴素版)精讲 卡码网117.网站构建 卡码网47.参加科学大会
  • 【基于Qt的QQ音乐播放器开发实战:从0到1打造全功能音乐播放应用】
  • 银行卡归属地查询的快速入门:API接口性能与安全兼备的高效实现
  • 文章记单词 | 第42篇(六级)
  • Integer[]::new方法引用
  • NLP系列【自然语言处理的深度学习模型综述】
  • 深入理解指针 (1)
  • 虚拟机网络NAT配置
  • 【Git】连接github时的疑难杂症(DNS解析失败)
  • 通过API接口在自己的独立站系统上架商品信息。(实战案例)
  • 1.9软考系统架构设计师:优秀架构设计师 - 超简记忆要点、知识体系全解、考点深度解析、真题训练附答案及解析
  • uniapp-商城-38-shop 购物车 选好了 进行订单确认4 配送方式1