
摘要: 云服务器数据盘挂载分四步:购买云硬盘 CBS 并挂载到实例、在系统里格式化、挂载到目录、配开机自动挂载。扩容则是先在控制台扩云硬盘容量、再在系统里扩文件系统。本文讲清每步命令和「数据和系统分盘」为什么重要。
把数据直接堆在系统盘上,是云服务器运维的一个隐患——系统重装、镜像回滚时数据容易一起没。专业做法是给云服务器挂一块独立的数据盘(云硬盘 CBS),系统归系统、数据归数据。挂载分「买盘、格式化、挂目录、设自动挂载」四步,扩容则是「先扩盘、再扩文件系统」两步。这篇把命令和易错点讲清,照着做不丢数据。
先说清这件事的价值,才知道为什么值得多花这几步:
一句话:系统盘放系统和程序、数据盘放业务数据,是云服务器的标准实践。数据库、上传文件、日志这类会持续增长的数据,都应该放数据盘。
云硬盘 CBS 是 CVM 用的块存储。在 CVM 或云硬盘控制台:
挂载完成后,这块盘在系统里是一块「裸盘」——还不能直接用,需要格式化和挂载到目录。很多人卡在「盘买了挂了却找不到」,就是漏了后面这两步。
登录服务器,先找到这块新盘。Linux 下用 lsblk 或 fdisk -l 查看,新挂的盘通常是 /dev/vdb(系统盘一般是 /dev/vda)。
确认是新盘后格式化(以 ext4 为例):
# 查看磁盘,确认新盘设备名(如 /dev/vdb)
lsblk
# 格式化为 ext4 文件系统
sudo mkfs.ext4 /dev/vdb务必确认设备名是新买的数据盘,别格式化错盘——格错系统盘或有数据的盘会丢数据。新盘没有数据、容量和你买的一致,可以用这两点核对。
格式化后,把盘挂载到一个目录才能用:
# 创建挂载点目录
sudo mkdir -p /data
# 挂载云硬盘到该目录
sudo mount /dev/vdb /data挂载后,/data 目录就是这块数据盘的空间,往里写的数据都存在数据盘上。用 df -h 能看到 /data 对应的容量就是你买的云硬盘大小。把数据库数据目录、上传文件目录等指到这里即可。
上一步的 mount 是临时的——服务器一重启,挂载就没了,程序会找不到数据目录。要让它开机自动挂载,得写进 /etc/fstab:
# 先查数据盘的 UUID
sudo blkid /dev/vdb
# 编辑 fstab,加一行(用上面查到的 UUID)
# UUID=xxxx-xxxx /data ext4 defaults 0 2
sudo vim /etc/fstab用 UUID 而不是设备名(/dev/vdb)更稳——设备名可能因挂载顺序变化,UUID 是固定的。配好后可以 sudo mount -a 测试一下不报错,再重启验证。漏了这一步,重启后服务可能因找不到数据而崩溃,是个隐蔽但致命的坑。
数据涨满了要扩容,分两步,顺序不能错:
第一步,控制台扩云硬盘容量。在云硬盘控制台对这块盘执行扩容,调大容量。这一步只是把「盘」变大了。
第二步,系统里扩文件系统。盘变大后,系统里的文件系统还是老容量,要扩文件系统才能用上新空间。ext4 用 resize2fs:
# 扩容文件系统(ext4)
sudo resize2fs /dev/vdb扩完用 df -h 看 /data 容量变大即成功。只在控制台扩盘、不扩文件系统,是扩容最常见的误区——盘是大了,但系统还按老容量用,白扩。扩容前建议先给数据盘做个快照备份,稳妥。
数据盘挂好后,把数据管理做扎实:
想了解云服务器 CVM、云硬盘 CBS 的配置与价格,可前往腾讯云双十一活动页查看并选购:https://cloud.tencent.com/act/pro/double11-202611
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。