Ubuntu 新 SSD 挂载到 /home/cx/data

记录 Ubuntu 下将新 SSD 格式化为 ext4 并挂载到 /home/cx/data,同时配置 fstab 开机自动挂载和 SSD TRIM。

Ubuntu 在配置 OpenPCDet 数据集之前,我先把新 SSD 挂载到了 /home/cx/data,用于存放 KITTI、nuScenes 等点云数据集。

⚠️ 注意:本文中的分区、wipefsmkfs 都是破坏性操作,会清空目标硬盘数据。执行前一定要确认目标盘是新盘,例如 /dev/sdb,不要误操作系统盘 /dev/sda 或 Windows 盘 nvme0n1

1. 确认新盘设备名

先查看磁盘列表、型号、文件系统、挂载点等信息:

1
2
sudo lsblk -o NAME,SIZE,FSTYPE,LABEL,MOUNTPOINTS,MODEL,SERIAL,TRAN
sudo fdisk -l /dev/sdb

需要确认:

  • /dev/sdb 是新 SSD;
  • /dev/sda 是系统盘时不要动;
  • nvme0n1 如果是 Windows 盘,也不要动;
  • 后续所有 /dev/sdb 都要根据自己机器实际情况替换。

预期能看到类似:

1
/dev/sdb MODEL 显示你的新 SSD,例如 Fanxiang S100Pro

2. 创建 GPT 分区表和全盘分区

1
2
3
sudo parted -s /dev/sdb mklabel gpt
sudo parted -s /dev/sdb mkpart primary ext4 0% 100%
lsblk /dev/sdb

正常情况下会出现:

1
/dev/sdb1

3. 擦除旧文件系统签名

如果硬盘之前被格式化过,可能残留 NTFS 或其他文件系统签名,导致 mkfs 时出现提示。建议先查看,再擦除:

1
2
3
sudo umount /dev/sdb1 2>/dev/null || true
sudo wipefs -n /dev/sdb1
sudo wipefs -a /dev/sdb1

说明:

  • wipefs -n:只查看,不修改;
  • wipefs -a:擦除文件系统签名。

4. 格式化为 ext4

1
sudo mkfs.ext4 -L data /dev/sdb1

这里使用 -L data 给分区设置标签,方便后续识别。

5. 挂载到 /home/cx/data

1
2
3
mkdir -p /home/cx/data
sudo mount /dev/sdb1 /home/cx/data
df -hT | grep /home/cx/data

如果希望用户 cx 可以直接读写这个目录,可以修改目录所有者:

1
sudo chown -R cx:cx /home/cx/data

6. 设置开机自动挂载

先获取分区 UUID:

1
sudo blkid /dev/sdb1

编辑 /etc/fstab

1
sudo nano /etc/fstab

追加一行:

1
UUID=你的UUID  /home/cx/data  ext4  defaults,nofail  0  2

注意把 UUID=你的UUID 替换成真实 UUID。

保存后测试:

1
2
sudo mount -a
df -hT | grep -E "/home/cx/data|/data|/mnt/data"

sudo mount -a 很重要。如果这里不报错,说明开机自动挂载配置基本没问题。

7. 处理 mount point does not exist

如果执行:

1
sudo mount -a

时报错:

1
mount: /mnt/data: mount point does not exist.

说明 /etc/fstab 中还有一条指向 /mnt/data 的挂载项,但该目录不存在。

方案 A:注释或删除 /mnt/data 挂载项

推荐这种方式:

1
sudo nano /etc/fstab

找到包含 /mnt/data 的那一行,删除或在行首加 # 注释掉。

然后重新测试:

1
sudo mount -a

方案 B:创建 /mnt/data 目录

如果你确实需要使用 /mnt/data,可以创建目录:

1
2
sudo mkdir -p /mnt/data
sudo mount -a

8. 开启 SSD 定期 TRIM

1
2
sudo systemctl enable --now fstrim.timer
systemctl status fstrim.timer

9. 快速验证清单

1
2
3
4
5
6
7
8
# 1. 挂载是否生效
df -hT | grep /home/cx/data

# 2. 是否是 ext4
lsblk -f | grep -A2 sdb

# 3. fstab 配置是否无误
sudo mount -a

总结

新 SSD 挂载时最容易出问题的地方有两个:

  1. 设备名确认错误,导致误格式化其他硬盘;
  2. /etc/fstab 写错,导致开机挂载失败。

所以每次修改 /etc/fstab 后,都建议立即执行:

1
sudo mount -a

这样可以在重启前提前发现问题。

使用 Hugo 构建
主题 StackJimmy 设计