当前位置:首页>Linux>Linux系统下的磁盘管理

Linux系统下的磁盘管理

  • 2026-08-19 16:58:35
Linux系统下的磁盘管理

Linux 磁盘与存储管理完全指南

一份系统化的 Linux 磁盘管理笔记,涵盖从物理结构到高级存储方案的完整知识体系


一、磁盘物理结构

1.1 物理组成

  • 盘片:铝合金或玻璃基片,双面涂覆磁性材料
  • 磁头:每面一个,负责读写数据,悬浮在盘面上方
  • 主轴马达:带动盘片高速旋转(5400/7200/10000+ RPM)
  • 磁头臂:带动磁头在盘片径向移动
  • 控制电路:控制马达、磁头,并缓存数据

1.2 逻辑结构

【结构】磁道 (Track)【说明】盘片上的同心圆,最外圈是 0 磁道

【结构】扇区 (Sector)【说明】磁道的最小存储单位,传统 512 字节,新盘 4096 字节(4K 扇区)

【结构】柱面 (Cylinder)【说明】所有盘片上相同半径磁道的集合

【结构】盘面 (Head)【说明】每个盘面对应一个磁头,从 0 开始编号

CHS 寻址:老式模式 (Cylinder/Head/Sector),现代磁盘使用 LBA(逻辑块地址,Linear Block Addressing)


二、磁盘接口与类型

2.1 接口类型

【接口】IDE/PATA【特点】并行传输,已淘汰

【接口】SATA【特点】串行,主流家用盘,支持热插拔

【接口】SCSI【特点】服务器用,多设备高并发

【接口】SAS【特点】SCSI 的串行版,企业级

【接口】NVMe【特点】直连 PCIe,极致低延迟,M.2/U.2 接口

【接口】USB【特点】外置存储

2.2 磁盘类型

  • HDD:机械硬盘,大容量但速度较慢
  • SSD:固态硬盘,无机械结构,速度快且抗震
  • HHD:混合硬盘(小容量 SSD 作缓存 + HDD)

三、Linux 下的磁盘命名规则

3.1 设备文件位置

所有磁盘设备文件位于 /dev/ 目录下。

3.2 命名格式

【前缀】sd【含义】SCSI/SATA/USB/SAS 磁盘【示例】/dev/sda、/dev/sdb1

【前缀】hd【含义】IDE 磁盘(旧)【示例】/dev/hda

【前缀】vd【含义】VirtIO 虚拟磁盘(KVM)【示例】/dev/vda

【前缀】nvme0n1【含义】NVMe 固态硬盘【示例】/dev/nvme0n1p1

命名规则:字母代表磁盘序号(a, b, c…),数字代表分区号(1, 2, 3…)

3.3 查看磁盘信息

# 列出所有块设备lsblk# 查看磁盘详细信息fdisk -l /dev/sda# 查看磁盘属性(型号、序列号、大小)smartctl -i /dev/sda# 需安装 smartmontools# 查看设备 UUID 和文件系统类型blkid

四、磁盘分区基础

4.1 为什么要分区

  • 数据隔离(系统盘与数据盘分离)
  • 多操作系统共存
  • 提升性能(内外圈磁道速度不同)
  • 限制磁盘配额
  • 便于备份与恢复

4.2 分区表类型

MBR(Master Boot Record,主引导记录)

  • 位置:磁盘第一个扇区(LBA 0,512 字节)

  • 结构:

  • 限制:

  • 446 字节:引导代码

  • 64 字节:分区表(4 项,每项 16 字节)

  • 2 字节:结束标志 0x55AA

  • 最多 4 个主分区,或 3 个主分区 + 1 个扩展分区(扩展分区内可建多个逻辑分区)

  • 最大支持 2 TiB 磁盘

  • 逻辑分区编号从 5 开始(如 sda5)

GPT(GUID Partition Table,GUID 分区表)

  • 位置:LBA 0 存放 Protective MBR(防旧工具识别失败),实际分区表在 LBA 1–33

  • 结构:

  • 优势:

  • GPT 头(定义分区表位置、大小、CRC 校验)

  • 分区表数组(通常 128 项,每项 128 字节)

  • 磁盘尾部备份 GPT 头与分区表

  • 支持 ≥ 2 TiB 磁盘(最大 8 ZiB)

  • 支持 128 个分区(无主/逻辑概念)

  • 自带 CRC 校验,更健壮

  • 每个分区有唯一 GUID 和分区名

选择建议:2TB 以下磁盘可用 MBR,2TB 以上或需要 UEFI 启动时建议使用 GPT。


五、分区工具详解

5.1 命令对比

【工具】fdisk【分区表】MBR, GPT【交互方式】交互式菜单【特点】最经典,每个 Linux 都有

【工具】gdisk【分区表】GPT, MBR【交互方式】交互式菜单【特点】fdisk 的 GPT 专版,支持 MBR 修复

【工具】parted【分区表】MBR, GPT【交互方式】命令行/交互式【特点】功能强,支持非交互脚本,可调整分区大小

【工具】sfdisk【分区表】MBR, GPT【交互方式】脚本式【特点】适合批量操作,可备份/恢复分区表

【工具】gparted【分区表】任意【交互方式】GUI【特点】图形化,基于 parted

5.2 fdisk 详细用法

# 进入磁盘管理sudo fdisk /dev/sdb# 常用内部命令(交互模式下)m# 显示帮助p# 打印当前分区表n# 新建分区d# 删除分区t# 修改分区类型w# 保存并退出(真正写入磁盘)q# 不保存退出

操作示例:

sudo fdisk /dev/sdb# 1. 按 g 创建 GPT 分区表,按 o 创建 MBR DOS 表(注意:g/o 会清空所有分区)# 2. 按 n → 默认主分区 → 起始扇区默认 → 结束扇区如 +10G# 3. 按 t → 选择分区 → 输入类型代码(83 for Linux)# 4. 按 w 保存

5.3 gdisk 用法

sudo gdisk /dev/sdc?# 帮助(与 fdisk 不同)n# 新建分区,自动使用 GPT GUIDx# 专家功能(备份/恢复/修改 GUID 等)

5.4 parted 用法(脚本友好)

# 交互式sudo parted /dev/sdb(parted) mklabel gpt# 创建 GPT 分区表(parted) mkpart primary ext4 0% 10G# 创建分区,文件系统类型提示(parted) print# 显示(parted) quit# 一行命令创建分区并格式化(需后续 mkfs)sudo parted /dev/sdb mklabel gpt mkpart primary ext4 1MiB 100%

注意:parted 的 mkpart 只是记录分区类型(名称),真正的文件系统创建需要 mkfs。

5.5 lsblk 与分区内核识别

# 查看分区变化(内核是否已识别)lsblk# 如果修改分区后内核未更新,使用 partprobesudo partprobe /dev/sdb# 或使用 kpartxsudo kpartx -u /dev/sdb

六、创建文件系统(格式化)

6.1 常用命令

【文件系统】ext4【创建命令】mkfs.ext4【示例】sudo mkfs.ext4 /dev/sdb1

【文件系统】xfs【创建命令】mkfs.xfs【示例】sudo mkfs.xfs -f /dev/sdb1

【文件系统】btrfs【创建命令】mkfs.btrfs【示例】sudo mkfs.btrfs /dev/sdb1

【文件系统】swap【创建命令】mkswap【示例】sudo mkswap /dev/sdb2

【文件系统】FAT32【创建命令】mkfs.vfat【示例】sudo mkfs.vfat -F 32 /dev/sdb1

【文件系统】NTFS【创建命令】mkfs.ntfs【示例】sudo mkfs.ntfs /dev/sdb1(需 ntfs-3g)

6.2 高级参数示例

# ext4:指定标签、保留块百分比、inode 比例sudo mkfs.ext4 -L mydata -m 1 -N 1000000 /dev/sdb1# xfs:指定对齐、inode size、标签sudo mkfs.xfs -f -b size=4096 -i size=512 -L data /dev/sdb1# 查看文件系统信息sudo dumpe2fs -h /dev/sdb1# ext2/3/4sudo xfs_info /dev/sdb1# xfs

七、磁盘挂载与使用

7.1 挂载的本质

挂载(Mount)是将一个存储设备(分区、逻辑卷、网络存储等)连接到 Linux 目录树中某个目录的过程。访问该目录即相当于访问存储设备。

7.2 完整挂载流程

物理磁盘 → 分区 (fdisk/gdisk/parted) → 格式化 (mkfs.*) → 挂载 (mount) → 使用

【详细流程】

  • 物理磁盘
  • ↓ 分区 (fdisk/gdisk/parted)
  • ↓ 创建分区表
  • ↓ 格式化 (mkfs.*)
  • ↓ 创建文件系统
  • ↓ 挂载 (mount)
  • ↓ 连接到目录
  • ↓ 使用

7.3 临时挂载(手动挂载)

临时挂载使用 mount 命令,重启后失效,常用于测试或一次性使用。

7.3.1 准备工作:查看可用磁盘

# 查看所有磁盘及分区lsblk# 查看磁盘详细信息fdisk -l

7.3.2 创建挂载点

# 挂载点就是一个普通目录sudo mkdir -p /mnt/datasudo mkdir -p /mnt/backup

7.3.3 执行临时挂载

# 基本语法:mount [设备] [挂载点]sudo mount /dev/sdb1 /mnt/data# 指定文件系统类型(自动检测时通常可省略)sudo mount -t ext4 /dev/sdb1 /mnt/data# 带选项挂载(只读)sudo mount -o ro /dev/sdb1 /mnt/data# 挂载 NTFS 分区sudo mount -t ntfs-3g /dev/sdb1 /mnt/data

7.3.4 验证挂载

# 查看所有挂载mount | grep sdb1# 查看磁盘使用情况(带文件系统类型)df -hT# 查看具体挂载点信息df -h /mnt/data

7.3.5 卸载临时挂载

# 通过挂载点卸载sudo umount /mnt/data# 通过设备卸载sudo umount /dev/sdb1# 强制卸载(当设备忙时)sudo umount -l /mnt/data# 懒卸载,稍后自动清理sudo umount -f /mnt/data# 强制卸载

7.3.6 临时挂载完整示例

# 1. 查看设备lsblk# /dev/sdc1 存在但未挂载# 2. 创建挂载点sudo mkdir -p /mnt/usb# 3. 挂载sudo mount /dev/sdc1 /mnt/usb# 4. 验证df -h /mnt/usb# 5. 使用echo ”test” | sudo tee /mnt/usb/test.txt# 6. 卸载sudo umount /mnt/usb

7.4 永久挂载(自动挂载)

永久挂载通过编辑 /etc/fstab 文件实现,重启后仍然有效。

7.4.1 获取设备 UUID(推荐方式)

# 查看所有设备的 UUIDsudo blkid# 查看特定设备sudo blkid /dev/sdb1# 输出: /dev/sdb1: UUID=”a1b2c3d4-5678-90ab-cdef-1234567890ab” TYPE=”ext4”

为什么使用 UUID?设备名(如 /dev/sdb1)可能因硬件变动而改变,UUID 是唯一的,不会变化。

7.4.2 编辑 /etc/fstab

# 备份原文件(推荐)sudo cp /etc/fstab /etc/fstab.bak# 编辑sudo nano /etc/fstab# 或sudo vim /etc/fstab

7.4.3 添加挂载条目

fstab 格式:<设备> <挂载点> <文件系统类型> <挂载选项>

添加示例:

# 数据盘永久挂载UUID=a1b2c3d4-5678-90ab-cdef-1234567890ab /data ext4 defaults,noatime 0 2# 备份盘UUID=b2c3d4e5-6789-01bc-def2-345678901abc /backup ext4 defaults 0 2

7.4.4 验证 fstab 配置

# 挂载所有 fstab 中未挂载的设备(测试配置是否正确)sudo mount -a# 如果没有报错,说明配置正确# 确认挂载成功df -h# 如果报错,检查 fstab 语法sudo mount -a 2>&1# 查看详细错误

7.4.5 永久挂载完整示例

# 1. 查看 UUIDsudo blkid /dev/sdb1# /dev/sdb1: UUID=”abc123-def456-...” TYPE=”ext4”# 2. 创建挂载点sudo mkdir -p /data# 3. 编辑 fstabecho ”UUID=abc123-def456-... /data ext4 defaults 0 2” | sudo tee -a /etc/fstab# 4. 测试挂载sudo mount -a# 5. 验证df -h /datalsblk | grep sdb1

7.5 临时挂载 vs 永久挂载对比

【对比项】临时挂载 (mount)【命令】sudo mount /dev/sdb1 /mnt/data【生效时间】立即生效【重启后】失效,需重新挂载【适用场景】测试、一次性使用、U盘【配置持久性】不持久【卸载】sudo umount /mnt/data

【对比项】永久挂载 (/etc/fstab)【命令】编辑 /etc/fstab 文件【生效时间】重启后生效,或执行 mount -a【重启后】仍然有效,自动挂载【适用场景】服务器数据盘、系统盘、长期使用【配置持久性】持久保存在文件中【卸载】sudo umount + 注释 fstab 条目

7.6 常见挂载选项

【选项】defaults【含义】包含 rw, suid, dev, exec, auto, nouser, async

【选项】noatime【含义】不更新访问时间(提升性能)

【选项】relatime【含义】仅在修改时更新访问时间(默认较新内核)

【选项】ro【含义】只读挂载

【选项】noexec【含义】禁止执行二进制文件(安全)

【选项】user【含义】允许普通用户挂载

【选项】nofail【含义】设备不存在时跳过(避免启动失败,常用于外置盘)

7.7 完整的 /etc/fstab 示例

# <设备> <挂载点> <类型> <选项> # 根分区(普通磁盘)UUID=abc123 / ext4 defaults,noatime 0 1# /home(逻辑卷)UUID=def456 /home xfs defaults 0 2# 数据盘(普通磁盘)UUID=ghi789 /data ext4 defaults 0 2# Swap 分区UUID=jkl012 none swap sw 0 0# Windows 共享(网络存储)//192.168.1.10/share /mnt/nas cifs credentials=/root/.smb,noexec 0 0

7.8 fstab 第 5、6 列详解

第 5 列:dump 备份

【值】0【含义】不备份(推荐,现代系统都用其他备份工具)

【值】1【含义】需要备份

第 6 列:fsck 检查顺序

【值】0【含义】不检查(swap、光盘、网络存储等)

【值】1【含义】第一个检查(只有根目录 / 可以填 1)

【值】2【含义】第二个检查(其他分区都填 2)

根目录 / 必须是 1,其他本地分区填 2,不检查的填 0

7.9 快速记忆

【列】4(选项)【名称】选项【常见值】defaults, ro, noexec【含义】怎么挂载

【列】5(dump)【名称】dump【常见值】0【含义】备份(不用管)

【列】6(pass)【名称】pass【常见值】根是 1,其他是 2,不检查是 0【含义】检查顺序

操作三步走:


    八、Swap 分区管理

    8.1 创建 Swap

    # 方法1:分区作为 swapsudo fdisk /dev/sdc# 创建类型 82 的分区sudo mkswap /dev/sdc1sudo swapon /dev/sdc1# 方法2:文件作为 swap (4G)sudo fallocate -l 4G /swapfilesudo chmod 600 /swapfilesudo mkswap /swapfilesudo swapon /swapfile

    8.2 fstab 永久启用

    # /etc/fstab/dev/sdc1 none swap sw 0 0# 或/swapfile none swap sw 0 0

    8.3 查看 Swap

    swapon --showfree -h

    九、逻辑卷管理(LVM)挂载

    9.1 LVM 基本概念

    • PV (Physical Volume):物理卷,硬盘或分区
    • VG (Volume Group):卷组,多个 PV 组成池
    • LV (Logical Volume):逻辑卷,从 VG 切分,相当于分区

    9.2 LVM 创建流程

    # 创建物理卷sudo pvcreate /dev/sdb1# 创建卷组sudo vgcreate myvg /dev/sdb1# 创建逻辑卷sudo lvcreate -n mylv -L 10G myvg# 格式化逻辑卷sudo mkfs.ext4 /dev/myvg/mylv

    9.3 LVM 临时挂载

    9.3.1 基本临时挂载

    # 创建挂载点sudo mkdir -p /mnt/lvm_data# 临时挂载逻辑卷sudo mount /dev/myvg/mylv /mnt/lvm_data# 或指定文件系统类型sudo mount -t ext4 /dev/myvg/mylv /mnt/lvm_data# 验证挂载df -hT /mnt/lvm_datamount | grep mylv

    9.3.2 带选项的临时挂载

    # 只读挂载sudo mount -o ro /dev/myvg/mylv /mnt/lvm_data# 禁用执行权限sudo mount -o noexec /dev/myvg/mylv /mnt/lvm_data# 组合选项sudo mount -o noatime,nodiratime /dev/myvg/mylv /mnt/lvm_data

    9.3.3 卸载 LVM 临时挂载

    # 卸载sudo umount /mnt/lvm_data# 或sudo umount /dev/myvg/mylv

    9.3.4 LVM 临时挂载完整示例

    # 1. 查看逻辑卷sudo lvs# LV VG Attr LSize# mylv myvg -wi-a----- 10.00g# 2. 创建挂载点sudo mkdir -p /mnt/test# 3. 临时挂载sudo mount /dev/myvg/mylv /mnt/test# 4. 写入测试数据echo ”LVM test data” | sudo tee /mnt/test/test.txt# 5. 查看挂载df -h /mnt/test# 6. 卸载sudo umount /mnt/test

    9.4 LVM 永久挂载

    9.4.1 使用 UUID(推荐)

    # 获取逻辑卷 UUIDsudo blkid /dev/myvg/mylv# /dev/myvg/mylv: UUID=”x1y2z3a4-b5c6-d7e8-f9g0-h1i2j3k4l5m6” TYPE=”ext4”# 编辑 fstabsudo vim /etc/fstab# 添加一行UUID=x1y2z3a4-b5c6-d7e8-f9g0-h1i2j3k4l5m6 /mnt/lvm_data ext4 defaults 0 2

    9.4.2 使用设备路径

    # 编辑 fstabsudo vim /etc/fstab# 添加(两种写法均可)/dev/myvg/mylv /mnt/lvm_data ext4 defaults 0 2# 或/dev/mapper/myvg-mylv /mnt/lvm_data ext4 defaults 0 2

    9.4.3 验证并挂载

    # 测试挂载sudo mount -a# 验证df -h /mnt/lvm_datalsblk | grep mylv

    9.4.4 LVM 永久挂载完整示例

    # 1. 获取 UUIDsudo blkid /dev/myvg/mylv# 输出: /dev/myvg/mylv: UUID=”abc-123-def” TYPE=”xfs”# 2. 创建挂载点sudo mkdir -p /data/lvm# 3. 编辑 fstabecho ”UUID=abc-123-def /data/lvm xfs defaults,noatime 0 2” | sudo tee -a /etc/fstab# 4. 测试sudo mount -a# 5. 验证df -h /data/lvm

    9.5 LVM 挂载选项详解

    【选项】defaults【说明】默认选项 (rw, suid, dev, exec, auto, nouser, async)【适用场景】一般使用

    【选项】noatime【说明】不更新访问时间【适用场景】数据库、高IO场景

    【选项】nodiratime【说明】不更新目录访问时间【适用场景】配合 noatime 使用

    【选项】noexec【说明】禁止执行程序【适用场景】安全要求高的数据分区

    【选项】ro【说明】只读【适用场景】备份盘、归档盘

    【选项】nofail【说明】挂载失败不中断启动【适用场景】非关键数据盘

    【选项】_netdev【说明】网络设备挂载【适用场景】NFS、iSCSI 等

    9.6 LVM 扩容后重新挂载

    # 1. 扩展逻辑卷(假设 VG 有空间)sudo lvextend -L +5G /dev/myvg/mylv# 2. 扩展文件系统(在线扩容,无需卸载)# ext4 文件系统sudo resize2fs /dev/myvg/mylv# xfs 文件系统(需要挂载点)sudo xfs_growfs /mnt/lvm_data# 3. 验证扩容df -h /mnt/lvm_data

    9.7 LVM 挂载故障处理

    # 如果开机时 LVM 未激活sudo vgchange -ay# 检查 LVM 状态sudo lvssudo vgssudo pvs# 手动激活卷组sudo vgchange -ay myvg# 重新挂载sudo mount -a

    9.8 完整流程图解

    硬盘分区 → 物理卷(PV) → 卷组(VG) → 逻辑卷(LV) → 文件系统 → 挂载点

    【各步骤命令】/dev/sdb1 → pvcreate → vgcreate myvg → lvcreate -n mylv → mkfs.ext4 → mount /mnt(池子) (切10G) (格式化) (使用)

    扩容时:lvextend -L +5G → 先扩大 LV(房间变大了)resize2fs → 再扩大文件系统(重新装修,真正可用)

    9.9 LVM 常见错误


      十、添加磁盘后设备不出现的处理

      10.1 问题现象

      # 物理磁盘已连接,但 lsblk 看不到lsblk# 只能看到原有的 sda,看不到新磁盘 sdb

      10.2 常见原因及解决方案

      10.2.1 原因一:SCSI 总线未扫描(最常见)

      解决方案 - 触发 SCSI 总线扫描:

      # 方法1:扫描所有 SCSI 主机(推荐)for host in /sys/class/scsi_host/host*/scan; do echo ”- - -” | sudo tee $hostdone# 方法2:使用 rescan-scsi-bus 工具(如果已安装)sudo rescan-scsi-bus.sh# 方法3:重新扫描特定 HBAecho 1 | sudo tee /sys/class/scsi_device/*/device/rescan# 方法4:重启 multipath 服务(如果使用多路径)sudo systemctl restart multipathd

      验证:

      lsblkdmesg | tail -20# 查看内核日志

      10.2.2 原因二:磁盘未格式化或未分区

      新磁盘可能没有分区表或文件系统,但 lsblk 仍然应该显示原始设备。

      # 检查是否显示为未分区磁盘lsblk -f# 查看文件系统,如果为空说明未格式化# 创建分区sudo fdisk /dev/sdb# 或创建 GPT 分区表sudo parted /dev/sdb mklabel gpt

      注意:即使未分区,lsblk 也应该显示 /dev/sdb,只是没有分区子项。

      10.2.3 原因三:磁盘未正确连接或硬件故障

      # 1. 检查内核日志dmesg | grep -i ”sdb\|scsi\|ata\|error”# 2. 检查系统是否检测到硬件变动sudo dmesg -w# 实时查看,然后插拔磁盘# 3. 查看 PCI 设备lspci | grep -i ”scsi\|sata”# 4. 检查是否被其他系统识别sudo lshw -class disksudo lsscsi -v

      10.2.4 原因四:设备已被占用或冲突

      # 检查是否有冲突的设备名ls /dev/sd*# 检查设备是否被 multipath 接管ls /dev/mapper/# 检查设备是否被其他服务占用sudo lsof | grep sdb

      10.2.5 原因五:udev 规则未触发

      # 触发 udev 重新扫描sudo udevadm trigger# 查看 udev 事件sudo udevadm monitor --property# 强制重新加载 udev 规则sudo udevadm control --reload-rulessudo udevadm trigger --subsystem-match=block

      10.3 完整排查流程

      # 步骤1:检查内核是否识别dmesg | grep -i ”new.*disk\|attached.*scsi\|sd.”dmesg | tail -30# 步骤2:检查 sysfs 是否存在设备文件ls -la /sys/block/ | grep sd# 步骤3:手动触发 SCSI 扫描for host in /sys/class/scsi_host/host*/scan; do  echo ”- - -” | sudo tee $hostdone# 步骤4:检查结果lsblkfdisk -l# 步骤5:如果仍不可见,检查硬件sudo lshw -class disksudo lsscsi# 步骤6:重启系统(最后手段,仅排除软件问题)sudo reboot

      10.4 虚拟机环境特殊情况

      VMware / VirtualBox / KVM

      # VMware:重新扫描 SCSI 总线echo 1 | sudo tee /sys/class/scsi_device/*/device/rescan# 或使用工具sudo vmware-toolbox-cmd disk listsudo vmware-toolbox-cmd disk shrink /# KVM VirtIO 磁盘# 检查是否分配了 vd* 设备ls /dev/vd*lsblk# 热插拔 VirtIO 磁盘后,触发扫描echo 1 | sudo tee /sys/bus/pci/rescan

      10.5 磁盘出现但无法访问的处理

      # 如果磁盘出现在 /dev/ 但 lsblk 不显示# 刷新内核分区表sudo partprobe /dev/sdb# 或使用 blockdevsudo blockdev --rereadpt /dev/sdb# 检查磁盘状态sudo smartctl -i /dev/sdb# 如果磁盘被写保护或只读sudo hdparm -r0 /dev/sdb# 关闭只读

      10.6 故障排查命令速查

      【命令】lsblk【作用】查看块设备树

      【命令】lsblk -f【作用】查看文件系统信息

      【命令】fdisk -l【作用】查看磁盘分区表

      【命令】lsscsi【作用】查看 SCSI 设备

      【命令】dmesg | tail【作用】查看最近内核日志

      【命令】dmesg | grep -i sd【作用】查看磁盘相关内核信息

      【命令】ls /sys/block/【作用】查看内核识别的块设备

      【命令】ls /dev/sd*【作用】查看设备文件

      【命令】lshw -class disk【作用】查看磁盘硬件信息

      【命令】udevadm trigger【作用】触发 udev 重新扫描

      【命令】partprobe【作用】刷新内核分区表

      10.7 常见错误信息及解决

      【错误信息】No such device【含义】设备不存在【解决方案】检查硬件连接,重新扫描 SCSI

      【错误信息】Device not found【含义】设备未找到【解决方案】检查 /dev/ 下是否有设备文件

      【错误信息】Device or resource busy【含义】设备忙【解决方案】关闭占用进程或使用 lsof 查找

      【错误信息】Invalid argument【含义】参数无效【解决方案】检查设备路径是否正确

      【错误信息】I/O error【含义】输入输出错误【解决方案】硬件故障,检查连接线缆

      10.8 完整脚本:自动扫描并挂载新磁盘

      #!/bin/bash# 自动扫描新磁盘并挂载echo ”=== 扫描新磁盘 ===”# 1. 扫描 SCSI 总线for host in /sys/class/scsi_host/host*/scan; do echo ”- - -” | sudo tee $host > /dev/nulldone# 2. 等待设备识别sleep 2# 3. 显示现有磁盘echo ”=== 当前磁盘列表 ===”lsblk# 4. 识别新磁盘(需要手动指定)read -p ”请输入要挂载的设备名 (如 /dev/sdb1): ” DEVICEread -p ”请输入挂载点 (如 /data): ” MOUNTPOINT# 5. 创建挂载点sudo mkdir -p $MOUNTPOINT# 6. 获取 UUIDUUID=$(sudo blkid -s UUID -o value $DEVICE)# 7. 添加到 fstabecho ”UUID=$UUID $MOUNTPOINT ext4 defaults 0 2” | sudo tee -a /etc/fstab# 8. 挂载sudo mount -aecho ”=== 挂载完成 ===”df -h $MOUNTPOINT

      十一、分区表备份与恢复

      11.1 MBR 备份

      # 备份前512字节(MBR)sudo dd if=/dev/sda of=mbr_backup.img bs=512 count=1# 恢复(危险!)sudo dd if=mbr_backup.img of=/dev/sda bs=512 count=1

      11.2 GPT 备份(使用 sgdisk)

      # 备份分区表到文件sudo sgdisk -b=gpt_backup.bin /dev/sdb# 恢复sudo sgdisk -l=gpt_backup.bin /dev/sdb

      11.3 sfdisk 备份

      # 备份分区布局(可读)sudo sfdisk -d /dev/sda > sda_partitions.txt# 恢复sudo sfdisk /dev/sdb < sda_partitions.txt

      十二、磁盘性能与健康

      12.1 查看 IO 统计

      # 实时查看磁盘读写iostat -x 1# 或iotop# 查看磁盘历史负载sar -d 1 3

      12.2 SMART 检测

      # 查看整体健康状态sudo smartctl -H /dev/sda# 运行短测试sudo smartctl -t short /dev/sda# 查看测试结果sudo smartctl -l selftest /dev/sda# 查看详细属性(包括 Wear Leveling Count for SSD)sudo smartctl -a /dev/sda

      12.3 4K 对齐检查

      # 查看分区起始扇区是否 8 的倍数sudo fdisk -l /dev/sda# 或sudo parted /dev/sda unit s print# 如果起始 sector 是 2048(典型),则对齐到 1MiB,满足 4K 对齐

      十三、常见故障与解决

      13.1 "Device or resource busy"

      # 查找占用进程lsof /mnt/datafuser -mv /mnt/data# 强制结束并卸载sudo fuser -km /mnt/datasudo umount /mnt/data

      13.2 分区表不刷新

      sudo partprobe /dev/sdb# 或重启(终极方案)

      13.3 修复文件系统

      # ext4(卸载后运行)sudo umount /dev/sdb1sudo fsck -y /dev/sdb1# xfssudo xfs_repair /dev/sdb1# 检查坏块sudo badblocks -v /dev/sdb

      13.4 扩容分区(在线)

      # 1. 扩大分区(假设原分区是 /dev/sda3)sudo growpart /dev/sda 3# 注意:设备名与分区号分开# 2. 刷新内核分区表sudo partprobe /dev/sda# 3. 扩大文件系统(在线,无需卸载)sudo resize2fs /dev/sda3# ext4sudo xfs_growfs /mountpoint# xfs 需要挂载后操作

      十四、知识体系总览

      磁盘管理├─ 物理结构│ ├─ 磁道/扇区/柱面│ └─ CHS / LBA├─ 接口与类型│ ├─ SATA/SAS/NVMe│ └─ HDD/SSD├─ 分区表│ ├─ MBR (≤2T, 4主分区)│ └─ GPT (≥2T, 128分区)├─ 分区工具│ ├─ fdisk (基础)│ ├─ gdisk (GPT)│ ├─ parted (脚本)│ └─ sfdisk (备份)├─ 格式化│ └─ mkfs.*├─ 挂载│ ├─ 临时挂载 (mount)│ ├─ 永久挂载 (/etc/fstab)│ └─ LVM 挂载 (PV/VG/LV)├─ swap│ ├─ mkswap + swapon│ └─ 文件或分区├─ 高级│ ├─ LVM (弹性)│ └─ RAID (软硬)└─ 运维 ├─ 设备识别 (SCSI扫描/udev) ├─ smartctl (健康) ├─ iostat (性能) └─ fsck (修复)


      附录:关键命令速查

      挂载相关

      sudo mkdir -p /mnt/data# 创建挂载点sudo mount /dev/sdb1 /mnt/data# 临时挂载sudo umount /mnt/data# 卸载sudo mount -a# 挂载所有 fstab 条目

      LVM 挂载相关

      sudo pvcreate /dev/sdb1# 创建 PVsudo vgcreate myvg /dev/sdb1# 创建 VGsudo lvcreate -n mylv -L 10G myvg# 创建 LVsudo mkfs.ext4 /dev/myvg/mylv# 格式化 LVsudo mount /dev/myvg/mylv /mnt/data# 挂载 LV

      设备识别相关

      for host in /sys/class/scsi_host/host*/scan; do echo ”- - -” | sudo tee $hostdonesudo partprobe /dev/sdb# 刷新分区表sudo udevadm trigger# 触发 udev 扫描sudo blkid# 查看所有 UUID

      最新文章

      随机文章

      基本 文件 流程 错误 SQL 调试
      1. 请求信息 : 2026-08-22 01:19:39 HTTP/2.0 GET : https://f.mffb.com.cn/a/504455.html
      2. 运行时间 : 0.219828s [ 吞吐率:4.55req/s ] 内存消耗:4,808.76kb 文件加载:140
      3. 缓存信息 : 0 reads,0 writes
      4. 会话信息 : SESSION_ID=c0db4ae52b4180fd56a1ee8ea49412f2
      1. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/public/index.php ( 0.79 KB )
      2. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/autoload.php ( 0.17 KB )
      3. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_real.php ( 2.49 KB )
      4. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/platform_check.php ( 0.90 KB )
      5. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/ClassLoader.php ( 14.03 KB )
      6. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/composer/autoload_static.php ( 4.90 KB )
      7. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper.php ( 8.34 KB )
      8. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/helper.php ( 2.19 KB )
      9. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/helper.php ( 1.47 KB )
      10. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/stubs/load_stubs.php ( 0.16 KB )
      11. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Exception.php ( 1.69 KB )
      12. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Facade.php ( 2.71 KB )
      13. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/deprecation-contracts/function.php ( 0.99 KB )
      14. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap.php ( 8.26 KB )
      15. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/polyfill-mbstring/bootstrap80.php ( 9.78 KB )
      16. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/Resources/functions/dump.php ( 1.49 KB )
      17. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-dumper/src/helper.php ( 0.18 KB )
      18. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/symfony/var-dumper/VarDumper.php ( 4.30 KB )
      19. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/App.php ( 15.30 KB )
      20. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-container/src/Container.php ( 15.76 KB )
      21. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/container/src/ContainerInterface.php ( 1.02 KB )
      22. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/provider.php ( 0.19 KB )
      23. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Http.php ( 6.04 KB )
      24. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Str.php ( 7.29 KB )
      25. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Env.php ( 4.68 KB )
      26. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/common.php ( 0.03 KB )
      27. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/helper.php ( 18.78 KB )
      28. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Config.php ( 5.54 KB )
      29. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/app.php ( 0.95 KB )
      30. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cache.php ( 0.78 KB )
      31. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/console.php ( 0.23 KB )
      32. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/cookie.php ( 0.56 KB )
      33. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/database.php ( 2.48 KB )
      34. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Env.php ( 1.67 KB )
      35. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/filesystem.php ( 0.61 KB )
      36. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/lang.php ( 0.91 KB )
      37. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/log.php ( 1.35 KB )
      38. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/middleware.php ( 0.19 KB )
      39. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/route.php ( 1.89 KB )
      40. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/session.php ( 0.57 KB )
      41. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/trace.php ( 0.34 KB )
      42. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/config/view.php ( 0.82 KB )
      43. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/event.php ( 0.25 KB )
      44. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Event.php ( 7.67 KB )
      45. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/service.php ( 0.13 KB )
      46. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/AppService.php ( 0.26 KB )
      47. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Service.php ( 1.64 KB )
      48. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Lang.php ( 7.35 KB )
      49. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/lang/zh-cn.php ( 13.70 KB )
      50. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/Error.php ( 3.31 KB )
      51. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/RegisterService.php ( 1.33 KB )
      52. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/services.php ( 0.14 KB )
      53. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/PaginatorService.php ( 1.52 KB )
      54. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ValidateService.php ( 0.99 KB )
      55. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/service/ModelService.php ( 2.04 KB )
      56. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Service.php ( 0.77 KB )
      57. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Middleware.php ( 6.72 KB )
      58. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/initializer/BootService.php ( 0.77 KB )
      59. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Paginator.php ( 11.86 KB )
      60. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-validate/src/Validate.php ( 63.20 KB )
      61. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/Model.php ( 23.55 KB )
      62. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Attribute.php ( 21.05 KB )
      63. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/AutoWriteData.php ( 4.21 KB )
      64. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/Conversion.php ( 6.44 KB )
      65. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/DbConnect.php ( 5.16 KB )
      66. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/ModelEvent.php ( 2.33 KB )
      67. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/concern/RelationShip.php ( 28.29 KB )
      68. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Arrayable.php ( 0.09 KB )
      69. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/contract/Jsonable.php ( 0.13 KB )
      70. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/model/contract/Modelable.php ( 0.09 KB )
      71. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Db.php ( 2.88 KB )
      72. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/DbManager.php ( 8.52 KB )
      73. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Log.php ( 6.28 KB )
      74. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Manager.php ( 3.92 KB )
      75. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerTrait.php ( 2.69 KB )
      76. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/log/src/LoggerInterface.php ( 2.71 KB )
      77. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cache.php ( 4.92 KB )
      78. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/psr/simple-cache/src/CacheInterface.php ( 4.71 KB )
      79. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/helper/Arr.php ( 16.63 KB )
      80. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/driver/File.php ( 7.84 KB )
      81. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/cache/Driver.php ( 9.03 KB )
      82. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/CacheHandlerInterface.php ( 1.99 KB )
      83. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/Request.php ( 0.09 KB )
      84. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Request.php ( 55.78 KB )
      85. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/middleware.php ( 0.25 KB )
      86. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Pipeline.php ( 2.61 KB )
      87. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/TraceDebug.php ( 3.40 KB )
      88. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/middleware/SessionInit.php ( 1.94 KB )
      89. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Session.php ( 1.80 KB )
      90. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/driver/File.php ( 6.27 KB )
      91. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/SessionHandlerInterface.php ( 0.87 KB )
      92. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/session/Store.php ( 7.12 KB )
      93. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Route.php ( 23.73 KB )
      94. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleName.php ( 5.75 KB )
      95. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Domain.php ( 2.53 KB )
      96. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleGroup.php ( 22.43 KB )
      97. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Rule.php ( 26.95 KB )
      98. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/RuleItem.php ( 9.78 KB )
      99. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/route/app.php ( 1.72 KB )
      100. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/Route.php ( 4.70 KB )
      101. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/dispatch/Controller.php ( 4.74 KB )
      102. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/route/Dispatch.php ( 10.44 KB )
      103. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/controller/Index.php ( 4.81 KB )
      104. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/app/BaseController.php ( 2.05 KB )
      105. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/facade/Db.php ( 0.93 KB )
      106. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/connector/Mysql.php ( 5.44 KB )
      107. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/PDOConnection.php ( 52.47 KB )
      108. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Connection.php ( 8.39 KB )
      109. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/ConnectionInterface.php ( 4.57 KB )
      110. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/builder/Mysql.php ( 16.58 KB )
      111. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Builder.php ( 24.06 KB )
      112. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseBuilder.php ( 27.50 KB )
      113. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/Query.php ( 15.71 KB )
      114. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/BaseQuery.php ( 45.13 KB )
      115. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TimeFieldQuery.php ( 7.43 KB )
      116. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/AggregateQuery.php ( 3.26 KB )
      117. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ModelRelationQuery.php ( 20.07 KB )
      118. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ParamsBind.php ( 3.66 KB )
      119. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/ResultOperation.php ( 7.01 KB )
      120. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/WhereQuery.php ( 19.37 KB )
      121. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/JoinAndViewQuery.php ( 7.11 KB )
      122. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/TableFieldInfo.php ( 2.63 KB )
      123. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-orm/src/db/concern/Transaction.php ( 2.77 KB )
      124. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/driver/File.php ( 5.96 KB )
      125. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/LogHandlerInterface.php ( 0.86 KB )
      126. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/log/Channel.php ( 3.89 KB )
      127. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/event/LogRecord.php ( 1.02 KB )
      128. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-helper/src/Collection.php ( 16.47 KB )
      129. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/facade/View.php ( 1.70 KB )
      130. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/View.php ( 4.39 KB )
      131. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Response.php ( 8.81 KB )
      132. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/response/View.php ( 3.29 KB )
      133. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/Cookie.php ( 6.06 KB )
      134. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-view/src/Think.php ( 8.38 KB )
      135. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/framework/src/think/contract/TemplateHandlerInterface.php ( 1.60 KB )
      136. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/Template.php ( 46.61 KB )
      137. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/driver/File.php ( 2.41 KB )
      138. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-template/src/template/contract/DriverInterface.php ( 0.86 KB )
      139. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/runtime/temp/067d451b9a0c665040f3f1bdd3293d68.php ( 11.98 KB )
      140. /yingpanguazai/ssd/ssd1/www/f.mffb.com.cn/vendor/topthink/think-trace/src/Html.php ( 4.42 KB )
      1. CONNECT:[ UseTime:0.001211s ] mysql:host=127.0.0.1;port=3306;dbname=f_mffb;charset=utf8mb4
      2. SHOW FULL COLUMNS FROM `fenlei` [ RunTime:0.001469s ]
      3. SELECT * FROM `fenlei` WHERE `fid` = 0 [ RunTime:0.007270s ]
      4. SELECT * FROM `fenlei` WHERE `fid` = 63 [ RunTime:0.000842s ]
      5. SHOW FULL COLUMNS FROM `set` [ RunTime:0.001387s ]
      6. SELECT * FROM `set` [ RunTime:0.000599s ]
      7. SHOW FULL COLUMNS FROM `article` [ RunTime:0.001485s ]
      8. SELECT * FROM `article` WHERE `id` = 504455 LIMIT 1 [ RunTime:0.007974s ]
      9. UPDATE `article` SET `lasttime` = 1787332779 WHERE `id` = 504455 [ RunTime:0.003076s ]
      10. SELECT * FROM `fenlei` WHERE `id` = 67 LIMIT 1 [ RunTime:0.000622s ]
      11. SELECT * FROM `article` WHERE `id` < 504455 ORDER BY `id` DESC LIMIT 1 [ RunTime:0.001164s ]
      12. SELECT * FROM `article` WHERE `id` > 504455 ORDER BY `id` ASC LIMIT 1 [ RunTime:0.016888s ]
      13. SELECT * FROM `article` WHERE `id` < 504455 ORDER BY `id` DESC LIMIT 10 [ RunTime:0.004242s ]
      14. SELECT * FROM `article` WHERE `id` < 504455 ORDER BY `id` DESC LIMIT 10,10 [ RunTime:0.004231s ]
      15. SELECT * FROM `article` WHERE `id` < 504455 ORDER BY `id` DESC LIMIT 20,10 [ RunTime:0.008392s ]
      0.223537s