CentOS 7 在线添加新磁盘及扩容教程

4 下载量 145 浏览量 更新于2024-08-31 收藏 368KB PDF 举报
"本文主要介绍如何在 CentOS 7 环境中添加新磁盘而无需重启系统,涉及Linux命令行操作,包括虚拟机中扩展磁盘空间、检查磁盘状态、重新扫描SCSI总线以及创建新磁盘分区等步骤。" 在 CentOS 7 系统中,有时需要动态地添加新磁盘以扩展存储空间,特别是在生产环境中,避免重启服务器以保持服务的连续性至关重要。以下是在 CentOS 7 中添加新磁盘并扩展磁盘空间的详细步骤: 1. **虚拟机客户端扩充磁盘空间**: 如果你的 CentOS 7 是运行在一个虚拟环境中,如 VMware vSphere 或 VMware Workstation,你需要在虚拟机管理软件中添加一个新的虚拟磁盘。这通常涉及到调整虚拟机配置,增加新的硬盘容量。 2. **检查磁盘空间**: 使用 `df -h` 命令查看当前文件系统的磁盘使用情况,以确定新磁盘是否已经被系统识别。同时,`fdisk -l` 命令可以列出所有磁盘及其分区信息。在新磁盘被正确识别前,你可能看不到新添加的磁盘空间。 3. **扩展空间不重启虚拟机**: 当新磁盘添加后,需要重新扫描 SCSI 总线来使系统识别新磁盘。执行如下命令: - 首先找到 `/sys/class/scsi_host/` 下的主机ID,例如 `host0`, `host1`, `host2` 等。 - 然后向每个主机ID的 `scan` 文件写入 `---` 来触发扫描,例如 `echo "---" > /sys/class/scsi_host/host0/scan`。 - 使用 `ls /sys/class/scsi_device/` 查看设备列表,然后针对每个设备执行 `rescan` 操作,如 `echo 1 > /sys/class/scsi_device/0:0:0:0/device/rescan` 和 `echo 1 > /sys/class/scsi_device/2:0:0:0/device/rescan`。 这些步骤完成后,新添加的磁盘空间应能在系统中显示。 4. **创建新磁盘分区**: 使用 `fdisk` 工具对新磁盘进行分区操作。首先,选择新磁盘,如 `/dev/sdb`,然后创建新的分区(如 `n` 创建新分区,`p` 创建主分区,`1` 作为分区号,然后确认)。接着,设置分区起始和结束位置,然后写入分区表 (`w`)。接下来,使用 `mkfs` 命令(如 `mkfs.ext4`)对新分区进行格式化,最后使用 `mount` 命令挂载新分区到指定目录。 5. **扩展文件系统**: 如果需要将新分区扩展到现有文件系统,可能需要使用 `resize2fs` 命令。首先,确保新分区未被挂载,然后使用 `resize2fs /dev/sdb1` (假设 `sdb1` 是新分区)来扩展文件系统大小。如果新分区是作为逻辑卷(LVM)的一部分,需要使用 `pvcreate`, `vgextend`, `lvextend` 和 `resize2fs` 命令来扩展整个逻辑卷和文件系统。 在完成这些步骤后,新添加的磁盘空间应该已成功地并入到 CentOS 7 系统中,且无需重启。务必谨慎操作,确保数据安全,并在执行任何可能导致数据丢失的操作前备份重要信息。在实际环境中,可能还需要更新 `/etc/fstab` 文件,以确保系统启动时能自动挂载新分区。