在服务器运维过程中,随着业务数据的不断增长,初始的系统磁盘空间往往会变得捉襟见肘,对于使用宝塔面板管理 CentOS 服务器的用户来说,挂载一块新的数据磁盘是扩展存储、实现数据分离(如网站文件、数据库独立存放)的核心操作,本文将提供一个清晰、详尽的步骤指南,帮助您在 CentOS 系统上完成新磁盘的挂载,并将其无缝集成到宝塔面板的工作环境中。
准备工作与磁盘识别
在开始任何磁盘操作之前,首要原则是确保数据安全,如果您在服务器上已有重要数据,请务必提前进行完整备份,接下来的所有操作都应在拥有 root 权限的用户下执行。
第一步是登录您的 CentOS 服务器,并识别出新添加的磁盘,您可以通过 SSH 客户端连接到服务器,登录后,使用以下命令来列出系统当前所有的磁盘设备:
lsblk
或者使用更为详细的 fdisk
命令:
fdisk -l
这两个命令都会显示磁盘信息,系统盘会被命名为 /dev/vda
、/dev/sda
等,您新挂载的磁盘会根据其类型和顺序拥有不同的名称,/dev/vdb
、/dev/sdb
等,您可以通过磁盘的大小来准确识别哪一个是新磁盘,如果您的系统盘是 50GB,而您新购买了一块 200GB 的磁盘,那么在输出结果中找到那个 200GB 大小的、尚未分区的设备,它就是我们的目标,在下文中,我们将假设新磁盘为 /dev/vdb
。
磁盘分区
识别出新磁盘后,需要对其进行分区,分区是将一块物理磁盘划分为一个或多个逻辑单元的过程,对于大多数应用场景,创建一个主分区并使用全部空间是最简单直接的选择,我们将使用 fdisk
工具来完成这项工作。
执行以下命令,对目标磁盘 /dev/vdb
进行分区操作:
fdisk /dev/vdb
进入 fdisk
的交互式界面后,您可以按照以下顺序输入命令来创建分区:
输入命令 | 说明 |
---|---|
n | 新建一个分区 |
p | 选择分区类型为主分区 |
1 | 设置分区号为 1 |
回车 | 设置起始扇区,直接回车使用默认值 |
回车 | 设置结束扇区,直接回车使用默认值(即使用全部磁盘空间) |
w | 将分区表写入磁盘并退出 |
完成以上步骤后,系统会提示分区表已同步,您可以使用 lsblk
或 fdisk -l
再次查看,会发现 /dev/vdb
下多了一个名为 /dev/vdb1
的分区。
格式化文件系统
分区创建完成后,它还不能直接存储数据,需要被格式化为特定的文件系统,Linux 系统中常见的文件系统有 ext4、xfs 等,ext4 是目前最稳定、兼容性最好的选择,推荐大多数用户使用。
使用 mkfs.ext4
命令来格式化刚刚创建的分区 /dev/vdb1
:
mkfs.ext4 /dev/vdb1
这个过程会根据磁盘大小花费一些时间,执行完毕后,该分区就被格式化为了 ext4 文件系统,可以准备挂载了。
创建挂载点并挂载
“挂载”是将一个文件系统(即我们的新分区)关联到系统目录树中某个目录的过程,这个目录被称为“挂载点”,对于宝塔面板,默认的网站根目录是 /www
,将新磁盘挂载到 /www
目录是最佳实践,这样所有新建的网站、数据库等数据都会自动存储到这块新磁盘上。
创建挂载点目录(如果它不存在):
mkdir /www
使用 mount
命令将分区 /dev/vdb1
挂载到 /www
目录:
mount /dev/vdb1 /www
为了验证挂载是否成功,可以使用 df -h
命令查看磁盘使用情况,您会在输出中看到一行关于 /dev/vdb1
的信息,其挂载点正是 /www
,并显示了总容量、已用空间和可用空间。
设置开机自动挂载
我们完成的挂载是临时的,服务器一旦重启,挂载关系就会失效,为了让系统在每次启动时都能自动挂载该磁盘,我们需要修改 /etc/fstab
文件,这是一个非常重要的系统配置文件,记录了开机时需要挂载的文件系统信息。
为了安全起见,推荐使用分区的 UUID(通用唯一识别码)来进行配置,因为设备名(如 /dev/vdb1
)在某些情况下可能会改变,而 UUID 是固定的。
获取新分区的 UUID:
blkid /dev/vdb1
命令会输出类似 UUID="a1b2c3d4-e5f6-7890-1234-567890abcdef"
的信息,请复制这个 UUID 字符串(不包括引号)。
使用文本编辑器(如 vi
或 nano
)打开 /etc/fstab
文件:
vi /etc/fstab
在文件末尾,添加一行新的记录,格式如下:
UUID=您复制的UUID /www ext4 defaults 0 0
UUID=a1b2c3d4-e5f6-7890-1234-567890abcdef /www ext4 defaults 0 0
保存并退出编辑器,为了确保配置无误,无需重启即可测试,执行以下命令,如果没有任何错误输出,说明 /etc/fstab
文件语法正确,自动挂载设置成功:
mount -a
至此,您的磁盘已经成功挂载,并配置了开机自动挂载,当您通过宝塔面板创建网站或数据库时,数据就会被安全地存放在这块新的、独立的磁盘上了。
相关问答FAQs
问题1:我执行了 fdisk -l
命令,但是没有看到新磁盘,这是为什么?
解答: 这种情况通常由以下几个原因造成,请确认您已经在云服务商(如阿里云、腾讯云等)的控制台中将新磁盘正确“挂载”到了您的 CentOS 实例上,仅仅购买磁盘是不够的,必须执行挂载操作,某些云平台在磁盘挂载后,可能需要在服务器内部执行 reboot
命令重启服务器,系统才能识别到新硬件,可以尝试使用 lsblk
命令,它的输出有时比 fdisk -l
更为直观,可以帮助您更好地识别设备。
问题2:我修改了 /etc/fstab
文件后,执行 mount -a
命令报错,怎么办?
解答: mount -a
报错意味着 /etc/fstab
文件中存在语法错误,这很可能是在您手动添加挂载记录时出现了拼写错误,UUID 错误、挂载点路径错误、文件系统类型写错(例如写成了 ext3
)或者字段之间缺少空格/制表符,请仔细检查您添加的那一行,确保每一个字段都准确无误,您可以使用 cat /etc/fstab
命令查看文件内容,在修改前,建议先备份一下原始的 fstab
文件(cp /etc/fstab /etc/fstab.bak
),以便在出现严重问题时可以快速恢复,如果错误导致服务器无法正常启动,您可能需要进入单用户模式或救援模式来修复这个文件。
【版权声明】:本站所有内容均来自网络,若无意侵犯到您的权利,请及时与我们联系将尽快删除相关内容!
发表回复