绿云VPS Linux 系统 挂载数据盘

在 Linux 系统上比如说双十一博主购买的绿云VPS,挂载数据盘是一个常见的操作。这篇笔记将提供一个从入门到精明的完整指南,包含查看磁盘、分区、格式化、挂载到自动挂载的全步骤。

1、核心步骤概览

  1. 连接磁盘并识别 - 找到新添加的磁盘。(这里服务商会提供好,使用者无需担心)
  2. 分区 - (可选但推荐)为磁盘创建分区。
  3. 格式化 - 在分区上创建文件系统(如 ext4, xfs)。
  4. 创建挂载点 - 创建一个目录作为访问磁盘的入口。
  5. 挂载磁盘 - 将磁盘分区关联到挂载点。
  6. 配置自动挂载 - 让系统重启后能自动挂载。

 

2、详细步骤

第 1 步:查看并识别新磁盘

使用 lsblk 或 fdisk -l 命令来列出所有块设备。

sudo lsblk
# 或者
sudo fdisk -l

输出示例:

NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda      8:0    0  20G  0 disk
├─sda1   8:1    0   1G  0 part /boot
└─sda2   8:2    0  19G  0 part /
sdb      8:16   0 100G  0 disk   # <-- 这就是新加的,没有分区和挂载点

在这个例子中:

  • sda 是系统盘,它已经被分区(sda1sda2)并挂载。
  • sdb 是新加的 100GB 数据盘,目前是“裸”设备,没有分区。它的标识符可能是 vdb(虚拟机)、nvme0n1(NVMe SSD)等,请根据您的实际情况判断。

 

第 2 步:(可选但推荐)为磁盘分区

对于新磁盘,我们通常先创建一个主分区并使用所有空间。这里使用 fdisk 工具。

注意: 如果磁盘容量大于 2TB,建议使用 parted 工具创建 GPT 分区表。

# 对 /dev/sdb 进行分区
sudo fdisk /dev/sdb

# 进入 fdisk 的交互界面后,按顺序输入以下命令:
# n    (新建分区)
# p    (选择主分区)
# 1    (分区号,默认为1)
# 回车 (起始扇区,默认即可)
# 回车 (结束扇区,默认使用所有空间)
# w    (将分区表写入磁盘并退出)

操作完成后,再次运行 sudo lsblk,你会看到现在有了一个分区 sdb1

NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda      8:0    0  20G  0 disk ...
sdb      8:16   0 100G  0 disk
└─sdb1   8:17   0 100G  0 part          # <-- 新创建的分区

第 3 步:格式化分区

现在我们需要在分区上创建一个文件系统。最常用的是 ext4(通用稳定)和 xfs(高性能,适用于大文件)。

格式化为例:

# 格式化为 ext4 文件系统
sudo mkfs.ext4 /dev/sdb1

# 或者,如果你想格式化为 xfs
# sudo mkfs.xfs /dev/sdb1

格式化过程很快,你会看到一些输出信息。

第 4 步:创建挂载点

挂载点就是一个普通的目录。通常我们会在 /mnt 或 /data 下创建。例如,我们创建一个 /data 目录。

sudo mkdir /data

第 5 步:手动挂载分区

使用 mount 命令将分区挂载到刚创建的目录。

sudo mount /dev/sdb1 /data

现在,使用 df -h 命令检查是否挂载成功。

df -h

 输出示例:

Filesystem      Size  Used Avail Use% Mounted on
/dev/sda2        19G  1.5G   17G   9% /
...
/dev/sdb1        98G   61M   93G   1% /data    # <-- 挂载成功!

第 6 步:配置自动挂载(关键!)

为了让系统每次启动时都能自动挂载,我们需要将挂载信息写入 /etc/fstab 文件。

首先,获取分区的 UUID(推荐)
使用 UUID 比使用设备名(如 /dev/sdb1)更可靠,因为设备名可能会变。使用 blkid 命令查看 UUID。

sudo blkid /dev/sdb1

输出示例:

/dev/sdb1: UUID="d6a5c4b1-1234-5678-90ab-cdef12345678" TYPE="ext4"

记下你的 UUID 值。

其次备份并编辑 /etc/fstab 文件

# 先备份,一个好习惯
sudo cp /etc/fstab /etc/fstab.bak

# 编辑 fstab 文件,可以使用 vi 或 nano
sudo nano /etc/fstab

然后在文件末尾添加一行

按照以下格式填写(将 UUID 替换为你刚才查到的值):

UUID=d6a5c4b1-1234-5678-90ab-cdef12345678 /data ext4 defaults 0 0
  • 第一项UUID=... 或 /dev/sdb1强烈推荐使用 UUID
  • 第二项: 挂载点 (/data)
  • 第三项: 文件系统类型 (ext4)
  • 第四项: 挂载选项 (defaults)
  • 第五项: 是否被 dump 备份(0 表示不备份)
  • 第六项: 开机磁盘检查顺序(根目录 / 是 1,其他数据盘通常是 0

 

最后验证 fstab 配置是否正确

这是一个非常重要的安全步骤!错误的 fstab 配置可能导致系统无法启动。使用以下命令测试:

sudo mount -a

如果这条命令没有报错,并且 df -h 显示挂载依然正常,说明你的 /etc/fstab 配置是正确的。现在,即使重启系统,数据盘也会自动挂载到 /data

 

3、快速总结(懒人包)

如果你确认新盘是 /dev/sdb,并且想快速挂载到 /data,可以依次执行以下命令:

# 1. 查看磁盘
sudo lsblk

# 2. 分区(直接使用整个磁盘创建一个分区)
echo 'type=83' | sudo sfdisk /dev/sdb

# 3. 格式化
sudo mkfs.ext4 /dev/sdb1

# 4. 创建挂载点
sudo mkdir /data

# 5. 获取UUID并写入fstab(请手动执行,确保UUID正确)
UUID=$(sudo blkid -s UUID -o value /dev/sdb1)
echo "UUID=$UUID /data ext4 defaults 0 0" | sudo tee -a /etc/fstab

# 6. 挂载并测试
sudo mount -a
df -h | grep /data

4、重要提醒

  • 谨慎操作 fdisk 和 fstab:错误的操作可能导致数据丢失或系统无法启动。
  • 备份 fstab:编辑前务必备份。
  • 验证 fstab:编辑后务必使用 mount -a 验证。
  • UUID 更可靠:对于永久性挂载,始终优先使用 UUID。
  • sudo:是普通用户执行一些或者全部的root命令的一个工具,如果你本身已经是root登录,那么也无需sudo来执行了。
THE END