必须先用lsblk确认新硬盘设备名,它只列块设备且未挂载、未分区的磁盘显示为disk类型、无MOUNTPOINT;fdisk -l可辅看容量和分区表状态,但输出冗长。

新硬盘加进去不能直接用,必须走完分区→格式化→挂载三步,漏一步都会导致 mount: wrong fs type 或 device not found 错误。
怎么确认新硬盘设备名?
别猜 /dev/sdb 或 /dev/xvdb,先看真实设备。虚拟机里加完硬盘常要重启,否则 lsblk 不显示:
-
lsblk最可靠:只列块设备,没挂载、没分区的磁盘会显示为disk类型,无MOUNTPOINT -
fdisk -l能看到容量和分区表状态,但输出冗长;若提示Disk /dev/sdb doesn't contain a valid partition table,说明是干净新盘 - 云服务器(如阿里轻量)可能用
/dev/vdb或/dev/xvdb,不是所有环境都叫sdb - 物理机 SATA 盘可能是
/dev/sdc,NVMe 盘则是/dev/nvme0n1—— 名字取决于控制器,不能硬背
fdisk 分区时最常踩的三个坑
fdisk 看似简单,但默认行为容易埋雷:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 不输入
n就直接按回车,它不会新建分区,而是报错退出;必须显式输n→p→1才进入分区流程 - 起始扇区别乱改:默认
2048是对齐 1MB 边界的推荐值,手动输1会导致后续mkfs报Warning: could not read block 0 - 大于 2TB 的盘必须用
parted+ GPT;fdisk只支持 MBR,强行操作会丢数据或无法引导
格式化选 ext4 还是 xfs?
不是“哪个更好”,而是“谁更不容易翻车”:
- 新盘首次格式化,
mkfs.xfs /dev/sdb1比mkfs.ext4 /dev/sdb1更快,尤其大容量盘;xfs 默认启用 lazy-count,避免日志写满阻塞 - ext4 对小文件多、随机读写频繁的场景(如邮件服务器)更稳;但如果你只是挂个
/data存日志或备份,xfs 更省心 - 千万别用
mkfs -t xfs这种写法:-t是给 ext 系留的,xfs 不认,会静默失败 - 格式化后立刻用
blkid /dev/sdb1记下 UUID —— 后续写/etc/fstab必须用它,不用设备名,否则热插拔或盘序变动就挂不上
挂载后为什么 reboot 就失效?
因为没写进 /etc/fstab,或者写错了位置:
-
mount /dev/sdb1 /mnt/data是临时挂载,重启即丢;必须编辑/etc/fstab才能固化 - fstab 每行 6 列,第 5、6 列填
0 0(非 root 分区不参与fsck,也不 dump);填成1 2可能导致开机卡住 - 写完 fstab 后,**必须运行
mount -a测试**:有报错立刻修,别等重启才发现failed to mount - 如果挂载点目录不存在,
mount -a会失败但不提示原因;先mkdir -p /mnt/data再测试
真正麻烦的是 LVM 场景——物理卷、卷组、逻辑卷三层嵌套,pvcreate 之前忘清空旧签名,vgscan 就会扫出残留元数据,后续所有操作都报错。这种问题不看 pvs 和 vgs 输出,光靠 fdisk -l 根本发现不了。

















