/dev 目录不是挂载点,需挂载的是已分区格式化的设备节点(如 /dev/sdb1)到空目录(如 /mnt/data);操作须经设备确认、分区匹配容量、格式化前校验、uuid 永久挂载并测试 fstab。

Linux 中 /dev 目录本身不是挂载点,它只是存放设备文件(如 /dev/sdb、/dev/sdb1)的虚拟目录,由内核动态生成。你不能也不应该“挂载 /dev 目录”——真正需要挂载的是硬盘上的已分区、已格式化的逻辑设备节点(例如 /dev/sdb1),并将其映射到一个普通空目录(如 /mnt/data)下。
关键在于:用对设备文件,挂到对位置,配对持久机制。以下是安全、可靠的操作路径:
确认新硬盘对应的正确设备文件
设备名(如 /dev/sdb)不固定,不能只看字母顺序。必须交叉验证:
- 运行
lsblk -f,找MOUNTPOINT为空、FSTYPE为空、容量与物理硬盘一致的盘; - 对比
sudo fdisk -l输出,确认Disk /dev/sdb:行的容量和型号; - 执行
sudo blkid,没有 UUID 和文件系统的设备就是待处理的新盘; - 虚拟机环境若未识别,可手动触发扫描:
for host in /sys/class/scsi_host/host*; do echo "- - -" > "$host/scan"; done
分区时严格匹配磁盘容量选方案
-
≤ 2TB 硬盘 → 用
fdisk创建 MBR 分区表:sudo fdisk /dev/sdb # 输入 n → p → 1 → 回车 → 回车 → w
-
> 2TB 硬盘 → 必须用
parted或gdisk创建 GPT 分区表:sudo parted /dev/sdb # mklabel gpt # mkpart primary 0% 100% # quit
- 分区后务必执行
sudo partprobe /dev/sdb或重启,确保内核识别/dev/sdb1。
格式化前校验设备,避免误操作系统盘
- 再次确认目标分区无数据且非系统盘:
lsblk -f | grep sdb1 # 应显示 FSTYPE 为空
- 格式化命令明确指定分区(不是整盘):
sudo mkfs.ext4 /dev/sdb1 # 推荐 ext4,稳定通用 # 或 sudo mkfs.xfs /dev/sdb1 # 大文件场景选 XFS
- 机械硬盘建议加
-c扫坏块;SSD/NVMe 不要加,可能卡死。
挂载必须使用独立空目录,禁用 /dev 下任何子目录
- 创建专用挂载点(不可复用已有目录,尤其不能是
/dev下路径):sudo mkdir -p /mnt/newdisk
- 临时挂载验证:
sudo mount /dev/sdb1 /mnt/newdisk df -h | grep sdb1 # 确认挂载成功、空间可见
- 卸载测试(可选):
sudo umount /mnt/newdisk
开机自动挂载必须用 UUID,不用 /dev/sdX 名
- 获取分区唯一标识:
sudo blkid /dev/sdb1 # 输出类似:/dev/sdb1: UUID="a1b2c3d4..." TYPE="ext4"
- 编辑
/etc/fstab,添加一行(注意字段顺序和空格):UUID=a1b2c3d4-... /mnt/newdisk ext4 defaults 0 2
- 测试配置是否合法(无输出即成功):
sudo mount -a
- 若 fstab 配置错误会导致系统无法启动,务必先测试再重启。
不复杂但容易忽略











