腾讯云硬盘挂载实战指南

环境基础:Ubuntu 24.04 LTS 适用场景:新购云硬盘后,需手动格式化、挂载并配置开机自动加载。

1. 确认数据盘是否被系统识别

在操作前,首先需要确认系统已正确识别到新购买的磁盘设备。

sudo lsblk

结果如下

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINTS
sr0     11:0    1 175.5M  0 rom  
vda    253:0    0    50G  0 disk 
├─vda1 253:1    0     1M  0 part 
└─vda2 253:2    0    50G  0 part /
vdb    253:16   0    50G  0 disk       # ← 新挂载的数据盘,无 MOUNTPOINTS

💡 小白知识点:如何辨认新盘?

  • vda 通常是系统盘(已有 / 根分区)。
  • vdb 通常是新购数据盘,其 MOUNTPOINTS 列为空,表示尚未挂载使用。

2. 格式化硬盘(可选)

⚠️ 注意:仅对全新空盘执行此操作!若磁盘已有数据,格式化将导致数据永久丢失。

sudo mkfs -t ext4 /dev/vdb

💡 命令拆解与科普

参数/路径 含义 说明
/dev Device 目录 Linux 中所有设备都以文件形式存在于此目录下
mkfs Make FileSystem 创建文件系统,即我们常说的“格式化”
-t ext4 Type = ext4 指定文件系统类型。ext4 是 Linux 最常用、稳定可靠的文件系统
/dev/vdb 目标设备 要格式化的磁盘完整路径

3. 挂载硬盘

将格式化好的磁盘关联到一个具体的文件夹(挂载点),之后访问该文件夹即等于访问该磁盘。

# 1. 创建挂载点目录
sudo mkdir /data

# 2. 执行挂载
sudo mount /dev/vdb /data

💡 核心概念理解

  • mkdir /data:创建一个名为 /data 的文件夹作为“入口”。注意 /是根目录。
  • mount:挂载命令,负责将物理磁盘与文件夹建立映射关系。
  • 实际效果:此后往 /data 目录写入的任何文件,实际都存储在了 /dev/vdb 这块硬盘上。
  • 路径规范mount 的第一个参数必须是块设备的完整路径(如 /dev/vdb),因为 Linux 中磁盘是以文件形式存在于 /dev 下的。

4. 验证挂载结果

使用 df 命令确认磁盘是否已成功挂载且容量正常。

df -Th

预期输出示例:

Filesystem     Type   Size  Used Avail Use% Mounted on
/dev/vda2      ext4    50G  6.1G   41G  13% /
/dev/vdb       ext4    49G   24K   47G   1% /data    # ← 确认此行存在

💡 命令参数说明

  • df (Disk Free):查看磁盘空间使用情况。
  • -T (Type):显示文件系统类型(如 ext4)。
  • -h (Human-readable):以人类可读格式显示容量(GB/MB),而非原始字节数。

5. 配置开机自动挂载(可选)

临时挂载在服务器重启后会失效。强烈建议使用 UUID 而非设备名(/dev/vdb)进行持久化配置,避免因设备顺序变化导致挂载错误或无法开机。

5.1 获取磁盘 UUID

sudo blkid /dev/vdb
# /dev/vdb: UUID="0a8c1877-16bc-45ca-9361-257648e298d5" BLOCK_SIZE="4096" TYPE="ext4"

5.2 写入 fstab 配置文件

echo 'UUID=0a8c1877-16bc-45ca-9361-257648e298d5 /data ext4 defaults,nofail 0 0' | sudo tee -a /etc/fstab

💡 命令与参数详解

  • echo '...' | sudo tee -a:通过管道将配置文本以管理员权限追加写入文件。比直接用编辑器更安全、更适合脚本化操作。
  • /etc/fstab:系统启动时的自动挂载配置文件。
  • defaults,nofail
    • defaults:使用默认挂载参数。
    • nofail关键安全参数。即使硬盘故障或移除,系统仍可正常启动,避免卡在紧急模式。推荐加上写
  • 0 0:第一个 0 表示不备份(dump),第二个 0 表示开机不进行 fsck 自检。

5.3 验证配置正确性

⚠️ 必做步骤:写入 fstab 后务必验证,错误配置可能导致重启后系统无法进入!

grep -E 'vdb|0a8c1877' /etc/fstab && echo '--- mount -a test ---' && sudo mount -a && echo '✅ mount -a OK, no error'

预期输出:

UUID=0a8c1877-16bc-45ca-9361-257648e298d5 /data ext4 defaults,nofail 0 0
--- mount -a test ---
✅ mount -a OK, no error

💡 验证命令解读

  • grep -E 'vdb|0a8c1877':使用扩展正则表达式匹配。| 表示“或”,无论 fstab 中使用的是设备名还是 UUID 写法,都能匹配到对应行,确认配置已写入。
  • sudo mount -a:重新加载 fstab 中所有未挂载的条目。如果配置有误,此命令会直接报错;输出 OK 则代表配置语法正确且挂载成功。

5.4 取消开机挂载

nano 可替换为 vi/vim

sudo nano /etc/fstab

找到下面注释(#)掉或者删除

UUID=0a8c1877-16bc-45ca-9361-257648e298d5 /data ext4 defaults 0 0

6. 确定访问权限

6.1 所有用户都可以写入

sudo chmod 777 /data

6.2 当前自己(ubuntu)

比较简单

sudo chown ubuntu:ubuntu /data
  • 把 /data 的拥有者(owner)从 root 改为 ubuntu
  • 把 /data 的所属组(group)从 root 改为 ubuntu

6.3 用户组

  1. 建一个共享组,例如 datashare:
    sudo groupadd datashare
    
  2. 把需要用盘的用户加入该组(以 ubuntu 和 oahai为例):
    sudo usermod -aG datashare ubuntu
    sudo usermod -aG datashare oahai
    
  3. 改目录属组并设权限为组内可写:
    sudo chown :datashare /data
    sudo chmod 775 /data
    
    效果:datashare 组内所有成员可读写,其他用户只读。这是『指定多用户通用』的标准做法。

7.卸载硬盘

卸载文件系统(确保无程序占用)

# 查询
fuser -mv /data

#                     USER        PID ACCESS COMMAND
#/data:               root     kernel mount /data
#                     ubuntu     2001 ..c.. bash
# 卸载
sudo umount /data

/data挂载目录

验证

df -hT /data