12.Linux 磁盘管理

Linux : 磁盘管理

一、磁盘设备命名规则
磁盘类型设备命名模式示例特点
SATA/SCSI/SAS/dev/sdXsda(第一块硬盘) sda1(第一块硬盘第一分区)机械硬盘/通用接口
NVMe/dev/nvmeXnYpZnvme0n1(第一通道第一块盘) nvme0n1p1(第一通道第一块盘第一分区)SSD高性能接口
Virtio-block/dev/vdXvda(第一块虚拟盘)虚拟化环境专用

查看磁盘信息

fdisk -l       # 查看分区详情
lsblk          # 树形显示块设备
parted -l      # 查看分区表详情
二、分区方案对比:MBR vs GPT
特性MBR (msdos)GPT (gpt)
最大磁盘容量2TB8ZB(理论极限)
分区数量4个主分区(或3主+1扩展+多个逻辑)128个主分区
引导记录单份(位于磁盘开头,易损坏)双份(首尾备份,更安全)
分区表大小64字节(固定)16,384字节(更灵活)
适用系统旧版BIOSUEFI固件

关键区别

  • MBR磁盘标签:msdos
  • GPT磁盘标签:gpt
  • 转换分区表会清除所有数据

fdisk与parted对比

在Linux系统中,fdiskparted都是常用的磁盘分区工具,但它们在功能和使用场景上有显著区别:

特性fdiskparted
分区表支持仅支持MBR(msdos)分区表支持MBR和GPT分区表
磁盘容量限制最大2TB磁盘支持>2TB的大容量磁盘(理论8ZB)
交互模式命令行交互界面(类似vi)支持交互模式和单行命令模式
分区数量最多4个主分区(或3主+1扩展+逻辑分区)GPT支持最多128个主分区
操作方式操作后需执行w命令才生效命令实时生效(无撤销功能)
文件系统支持只创建分区,需单独格式化可同时指定文件系统类型(仅标记)
单位系统默认柱面(cylinder)支持灵活单位(MB/GB/TB/%等)
调整分区大小不支持支持resizepart调整分区大小
主要发行版所有Linux发行版预装大多数发行版预装
典型应用场景传统MBR分区的小容量磁盘大容量磁盘/GPT分区/UEFI系统
fdisk -l 输出字段详解
术语含义示例值
Disk磁盘设备路径/dev/sda
GiB/bytes磁盘总容量(二进制GB/字节)20 GiB, 21474836480 bytes
sectors总扇区数量41943040
Units扇区计算单位(1扇区=512字节)sectors of 1 * 512
Sector size逻辑/物理扇区大小(高级格式磁盘可能不同)512B/512B
Disklabel type分区表类型(dos=MBR, gpt=GPT)dos
Disk identifierMBR磁盘随机标识码0xac318c9a
Device分区设备路径/dev/sda1
Boot引导标志(*表示可引导分区)*
Start/End分区起始/结束扇区号2048, 2099199
Sectors分区占用的扇区总数2097152
Size分区容量(自动换算)1G
Id分区类型十六进制代码83
Type分区类型描述(基于Id)Linux

常见分区类型ID

  • 82: Linux swap

  • 83: Linux filesystem

  • 8e: Linux LVM

  • ef: EFI系统分区

  • 基础语法
    fdisk [选项] <磁盘设备>
    
    选项说明
    -l列出分区表(不进入交互模式)
    -s <分区>显示分区大小(块数)
    -u显示扇区数而非柱面数
    -b <大小>指定扇区大小(512/1024/2048/4096)
    -c关闭 DOS 兼容模式
    -C <柱面>指定柱面数(旧磁盘兼容)

    交互模式核心命令

    进入交互模式:sudo fdisk /dev/sdb

    命令功能使用示例
    p打印分区表p
    n创建新分区n → p → 1 → [起始] → +10G
    d删除分区d → 2(删除分区2)
    t更改分区类型t → 3 → 82(设为swap)
    a切换引导标志a → 1(设sdb1为可引导)
    m显示帮助菜单m
    w保存并退出w(立即生效)
    q不保存退出q
    v验证分区表v
    L列出所有分区类型L(查看ID代码)

Parted 命令全面详解


基础语法
parted [选项] [设备] [命令 [参数]]
选项说明
-l列出所有磁盘分区表
-s脚本模式(无交互)
-a对齐类型(min/opt,用于SSD优化)
-f强制执行(跳过警告)

常用操作命令
命令语法功能示例
mklabelmklabel 标签类型创建分区表mklabel gpt
mkpartmkpart [类型] [文件系统] 起点 终点创建分区mkpart primary ext4 1MiB 10GiB
rmrm 分区号删除分区rm 2
resizepartresizepart 分区号 新终点调整分区大小resizepart 3 50GiB
printprint [free/all]显示分区信息print free
setset 分区号 标志 状态设置分区标志set 1 esp on
unitunit 单位设置显示单位unit GB
selectselect 设备切换磁盘select /dev/sdb

关键功能详解

1. 创建分区表

# 创建GPT分区表
parted /dev/sdb mklabel gpt# 创建MBR分区表(传统BIOS)
parted /dev/sdc mklabel msdos

2. 创建分区

# 创建主分区(文件系统仅作标记,需单独格式化)
parted /dev/sdb mkpart primary xfs 1MiB# 创建逻辑分区(需先建扩展分区)
parted /dev/sdc mkpart extended 1024MiB
parted /dev/sdc mkpart logical ext4 1025MiB 2048MiB

3. 设置分区标志

# 设置启动标志(MBR)
parted /dev/sdb set 1 boot on

4. 调整分区大小

# 先卸载分区
umount /dev/sdb1# 调整分区终点(需文件系统支持)
parted /dev/sdb resizepart 1 30GiB# 调整文件系统(XFS示例)
xfs_growfs /mount/point

5. 查看分区信息

parted /dev/sda print
# 输出示例:
Model: ATA ST2000DM008-2FR1 (scsi)
Disk /dev/sda: 2000GB
Partition Table: gpt
Disk Flags: Number  Start   End     Size    File system  Name  Flags1      1049kB  538MB   537MB   fat32        EFI   boot, esp2      538MB   50.0GB  49.5GB  xfs          root3      50.0GB  2000GB  1950GB               data  lvm

单位系统说明

parted 支持智能单位换算:

unit GB       # 以GB为单位(1GB=1000^3字节)
unit MiB      # 以MiB为单位(1MiB=1024^2字节)
unit %        # 按百分比分配空间
unit s        # 扇区模式(默认512字节/扇区)# 示例:使用百分比创建分区
parted /dev/sdb mkpart primary 0% 50%

交互模式 与 非交互模式

1. 交互模式(推荐初学者)

parted /dev/sdb
(parted) mklabel gpt
(parted) mkpart primary 1MiB 10GiB
(parted) set 1 esp on
(parted) print
(parted) quit

2. 非交互模式(适合脚本)

# 单行命令完成分区
parted -s /dev/nvme0n1 mklabel gpt \mkpart "EFI" fat32 1MiB 512MiB \set 1 esp on \mkpart "root" xfs 513MiB 100%

注意事项与故障处理
  1. 数据安全警告

    • parted 操作实时生效,无撤销功能
    • 操作前务必备份:dd if=/dev/sda of=sda_backup.img bs=1M
  2. 常见错误处理

    # 错误: 分区未刷新
    Error: Partition(s) on /dev/sdb are being used.
    # 解决: 卸载分区或重启系统# 错误: 无效起点
    Error: The location 0MiB is outside the device
    # 解决: 使用1MiB代替0MiB(保留引导间隙)
    
  3. 分区后必要操作

    # 刷新内核分区表
    partprobe /dev/sdb# 等待设备文件生成
    udevadm settle# 格式化新分区
    mkfs.xfs /dev/sdb1
    
  4. 与文件系统的关系

    • parted 只管理分区边界
    • 格式化必须单独进行:mkfs, mkswap
    • 调整分区大小后需调整文件系统
普通分区挂载流程
# 1. 等待设备初始化完成
udevadm settle# 2. 格式化分区为XFS文件系统
mkfs.xfs /dev/sdc1# 3. 查询分区UUID
blkid /dev/sdc1# 4. 创建挂载点
mkdir /test# 5. 配置永久挂载(编辑fstab文件)
vim /etc/fstab
# 添加以下内容:
UUID=uuid /test xfs defaults 0 0# 6. 挂载所有fstab配置的分区
mount -a# 7. 验证挂载
df -hT /test

二、交换分区配置流程
# 1. 创建交换分区(501MB)
统一单位unit MiB
(parted) mkpart 
Partition name?  []?                                                      
File system type?  [ext2]?                                                
Start? 10MiB
End? 510MiB
(parted) quit
udevadm settle
# 2. 格式化交换分区
mkswap /dev/sdb1
#Setting up swapspace version 1, size = 511996 KiB
#no label, UUID=ec6781fa-8dd3-4aa6-b6ad-8b52d5ea93bf
# 3. 查询交换分区UUID
blkid /dev/sdc1# 4. 配置永久交换(编辑fstab文件)
vim /etc/fstab
# 添加以下内容:
UUID=uuid swap swap defaults 0 0# 5. 刷新交换空间配置
swapoff -a  # 关闭所有交换分区
swapon -a   # 按fstab启用交换分区# 6. 验证交换空间
free -m
swapon --show
命令作用注意事项
udevadm settle等待系统创建设备文件必须执行,否则可能找不到设备
mkfs.xfs创建XFS文件系统替代方案:mkfs.ext4
blkid查看设备UUID推荐使用UUID 避免设备名变化
mount -a挂载/etc/fstab所有配置测试配置是否正确
parted mkpart创建分区linux-swap指定为交换分区
mkswap初始化交换空间必须步骤,否则无法使用
swapoff -a停用所有交换分区刷新前必要操作
swapon -a启用/etc/fstab中的交换分区使新配置生效

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/web/91935.shtml
繁体地址,请注明出处:http://hk.pswp.cn/web/91935.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《Linux服务与安全管理》| DHCP服务器安装和配置

《Linux服务与安全管理》| DHCP服务器安装和配置 目录 《Linux服务与安全管理》| DHCP服务器安装和配置 一、点击“编辑虚拟机设置”&#xff0c;配置三台虚拟机为“仅主机”模式。 二、server01开机&#xff0c;root用户登录&#xff0c;输入nmtui&#xff0c;进入图形界面…

赛博威携手Dify,助力AI在企业的场景化落地

人工智能正以前所未有的速度重塑商业世界。我们经历了从理论探索到大语言模型&#xff08;LLM&#xff09;的爆发式增长&#xff0c;如今&#xff0c;一个以“AI Agent&#xff08;智能体&#xff09;”为核心的新阶段已然来临。AI Agent代表了人工智能应用的未来形态。它不再被…

嵌入式硬件中三极管推挽电路控制与实现

我们昨天讲到了这个电路。 如果 A 电是 PWM 波,那么请问 B 点是不是 PWM 波呢?那么,当 PWM 为高时, B 点的电流是从哪里流过来的?

数据结构——查找(三、树形查找)

一、二叉排序树&#xff08;BST&#xff09;1、二叉排序树的定义构造一棵二叉排序树的目的并不是排序&#xff0c;而是提高查找、插入和删除关键字的速度二叉排序树&#xff08;也称二叉搜索树&#xff09;或者是一颗空树&#xff0c;或者是具有以下性质的二叉树1、若左子树非空…

八股——Kafka相关

文章目录1、 消息队列的作用什么&#xff1f;思&#xff1a;消息队列是什么?消息队列的定义消息队列的工作原理消息队列的作用消息队列的常见类型消息队列的简单例子2、Kafka 集群的架构是什么样子的&#xff1f;3、Kafka 消费者组和生产者组是什么&#xff1f;定义与核心作用…

墨者学院SQL手工注入漏洞测试(MySQL数据库)题目,纯手工注入教程

打开练习手工注入的靶场,发现此时为一个登录页面,我们先试着登录看看注入点在不在登录页面 使用用户:or 1=1# 密码:admin123;尝试登录,发现显示错误后直接弹回原页面,无sql报错相关语句,这里不存在sql注入点 一:判断注入点以及猜测是否有注入 此时点击这里的动态页面…

[硬件电路-140]:模拟电路 - 信号处理电路 - 锁定放大器概述、工作原理、常见芯片、管脚定义

一、锁定放大器概述锁定放大器&#xff08;Lock-in Amplifier&#xff09;是一种基于相干检测技术的高灵敏度测量仪器&#xff0c;通过将待测信号与参考信号进行同步处理&#xff0c;从强噪声中提取微弱信号并精确测量其振幅与相位。其核心优势包括&#xff1a;信噪比提升&…

下载 | Windows Server 2025官方原版ISO映像!(7月更新、标准版、数据中心版、26100.4652)

⏩ 资源A066_Windows_Server_2025系统映像&#x1f536; Windows Server 2025官方原版ISO映像&#xff0c;7月更新版已放出。提供来自微软官方每月更新的ISO原版映像&#xff0c;内部包含了标准版和数据中心版&#xff0c;可选择无GUI界面版或桌面体验版&#xff0c;满足不同部…

Go 语言模糊测试 (Fuzz Testing) 深度解析与实践

学习一个知识&#xff0c;要先了解它的来源 1. 模糊测试的诞生&#xff1a;Barton Miller 的故事 “Fuzz”一词起源于1988年&#xff0c;由威斯康星大学麦迪逊分校的Barton Miller教授及其研究生团队在一个高级操作系统课程项目中提出 。这个概念的诞生颇具戏剧性。Miller教授在…

【软考和软著】

一、&#x1f4ab; 杭州E类人才政策 在这里插入图片描述 二、人才认定标准 三、关于软考 1、什么是软考&#xff1f; 软考指的是“计算机技术与软件专业技术资格&#xff08;水平&#xff09;考试”。计算机软件资格考试是由国家人力资源和社会保障部、工业和信息化部领导下…

「源力觉醒 创作者计划」开源大模型重构数智文明新范式

起来轻松玩转文心大模型吧一文心大模型免费下载地址&#xff1a;https://ai.gitcode.com/paddlepaddle/ERNIE-4.5-VL-424B-A47B-Paddle开源大模型的崛起与AI幻觉挑战&#xff1a;中国AI发展的双重使命 ——从技术追赶到生态引领的跨越之路一、开源大模型&#xff1a;重构数智文…

政务云数智化转型:灵雀云打造核心技术支撑能力

政务云数智化转型进行时&#xff0c;亟需体系升级政务信息化作为政府治理与服务的重要支撑&#xff0c;业务呈现出政策性强、数据敏感度高、系统复杂度高、服务连续性要求严等特点&#xff0c;对IT系统提出了极高要求&#xff1a;不仅需支撑高并发、高可用的政务应用&#xff0…

软件测试自学之路

别找了&#xff01;2025B站最全最细的软件测试教程&#xff0c;7天从零基础小白到精通软件测试&#xff0c;学完即上岗&#xff01;自学软件测试对于小白来说还是有一定的难度&#xff0c;各种专业术语的不熟悉&#xff0c;各种电脑操作的不熟悉&#xff0c;有时候要安装一个学…

备案期间老网站有什么要求

老网站的内容必须符合法律法规和互联网管理规定。这可不是开玩笑的事儿&#xff0c;相关部门对于网站内容的审核可是相当严格的。比如说&#xff0c;不能有违法犯罪、色情低俗、虚假信息等不良内容。根据互联网信息管理专家的建议&#xff0c;网站内容应该积极健康、真实准确。…

Java数组转换为逗号分隔字符串的方法

Java数组转换为逗号分隔字符串的方法 在Java中&#xff0c;将数组转换为逗号分隔的字符串有几种常用方法&#xff0c;以下是清晰可靠的实现方案&#xff1a; 方法1&#xff1a;使用Arrays.toString() 字符串处理&#xff08;通用型&#xff09; import java.util.Arrays;publi…

抗辐照DCDC与MCU在核环境监测设备中的集成应用

摘要核环境监测设备对保障核设施安全、保护环境与人员健康意义重大&#xff0c;需在复杂恶劣的核环境中稳定运行。电子设备易受核辐射影响产生单粒子效应等故障&#xff0c;选用具备抗辐照能力的DCDC与MCU芯片至关重要。本文结合实际测试数据&#xff0c;深入探讨抗辐照DCDC与M…

C语言-指针[指针数组和数组指针]

知识重复变量指针&#xff1a;变量最小的地址值&#xff08;首地址&#xff09;&#xff0c;本质是地址、指针指针变量&#xff1a;存储指针的变量&#xff0c;本质是变量&&#xff1a;取地址运算符&#xff08;取址符、取地址符&#xff09;&#xff0c;获取变量、数组等的…

NX982NX984美光固态闪存NX992NY102

NX982NX984美光固态闪存NX992NY102技术革新引领存储革命——深度拆解美光NX系列固态闪存在数字化浪潮席卷全球的当下&#xff0c;数据存储已成为支撑人工智能、云计算与物联网等前沿领域的核心基础设施。作为行业标杆企业&#xff0c;美光科技推出的NX系列固态闪存产品&#xf…

Elasticsearch 集群管理核心 API 指南:健康、状态、分片诊断与运维实战

一、集群健康状态 API (_cluster/health) 获取集群的总体健康状况&#xff0c;是监控的首要指标。 GET http://192.168.130.61:9200/_cluster/health响应字段解析 curl http://192.168.130.61:9200/_cluster/health 2>/dev/null |jq {"cluster_name": "E…

Three.js 与 WebXR:初识 VR/AR 开发

引言 WebXR 是现代 Web 技术的重要组成部分&#xff0c;允许开发者通过浏览器创建虚拟现实&#xff08;VR&#xff09;和增强现实&#xff08;AR&#xff09;体验。结合 Three.js 的强大渲染能力&#xff0c;WebXR 可以轻松构建沉浸式 3D 场景。本文将介绍如何使用 Three.js 和…