CentOS 6 - 扩展没有分区的磁盘。/

CentOS 6 - 扩展没有分区的磁盘。/

我有一台 CentOS 6 服务器(在 XenServer 上作为 VM 运行),由前一位员工设置,其中一个磁盘上没有任何分区。我通过 XenServer 界面增加了磁盘的大小,运行 lsblk 确实显示了新的大小。但是,我似乎无法将磁盘(使用 fdisk)扩展到新的大小。

$ df -h
Filesystem      Size  Used Avail Use%
/dev/xvda3      1.6G  479M  1.1G  32% 
tmpfs           245M  4.0K  245M   1% 
/dev/xvda1      113M   59M   48M  56% 
/dev/xvda7      485M  2.7M  457M   1% 
/dev/xvda2      2.4G  829M  1.5G  36% 
/dev/xvda5      2.4G  1.2G  1.1G  53% 
**/dev/xvdb        99G   92G  1.8G  99%**
/dev/xvdc        99G   60M   94G   1%
/dev/xvde4      222G  195G   16G  93%
$ lsblk
NAME    MAJ:MIN RM  SIZE RO TYPE
xvda    202:0    0    8G  0 disk 
??xvda1 202:1    0  120M  0 part
??xvda2 202:2    0  2.5G  0 part 
??xvda3 202:3    0  1.6G  0 part
??xvda4 202:4    0    1K  0 part 
??xvda5 202:5    0  2.5G  0 part 
??xvda6 202:6    0  768M  0 part 
??xvda7 202:7    0  509M  0 part 
**xvdb    202:16   0  300G  0 disk **
xvdc    202:32   0  100G  0 disk
xvde    202:64   0  225G  0 disk 
??xvde4 202:68   0  225G  0 part

我对 Linux 系统相当了解,但我绝不是专家。我一直找不到解决我难题的答案。现在还能扩展磁盘吗?在此先感谢大家的帮助!

答案1

fdisk 无法扩展磁盘,它只处理分区 - 而您的磁盘没有任何分区,因此没有理由使用 fdisk。

由于您已经扩展了整个磁盘(即 lsblk 显示的“xvdb”设备)并且没有任何其他中间层,因此下一步是扩展文件系统,即允许它占用其可用的空间。这就是“df”显示的内容(文件系统配置)。

fdisk 也不会扩展文件系统(如果就是您所说的“磁盘”),所以这里也没有理由使用 fdisk。

相反,根据文件系统类型,你需要resize2fs对于 ext4,或xfs_growfs对于 XFS,或者btrfs filesystem resize,或者类似的东西。(每个文件系统都有自己的工具。大多数支持在线增长,但有些需要先卸载文件系统。)

使用df -Tlsblk -f确定文件系统类型。

答案2

我的建议是添加一个新的虚拟磁盘并将其安装在最合适的位置。您可以通过在互联网上搜索“xenserver 新虚拟磁盘”来了解如何执行此操作。我不了解 XenServer,但它们都是一样的。这是一个 Linux 概念,与您的虚拟化主机 (XenServer) 无关。

  • 您需要弄清楚 Linux 安装上的所有空间都被占用了在哪里。您可能已经知道这一点。这里举个例子,我们假设它是 /home。

  • 以 root 身份登录(又名 sudo -i)。

  • 首先使用 mount 命令挂载新的虚拟磁盘。在其根目录下创建一个名为“home”的文件夹。您可以/将使用rsync它从 /home/* 将文件复制到新挂载的驱动器上的“home”。这应该会保留权限。

  • 将旧的 /home/ 重命名为 /oldhome/,以防出现问题。

  • 使用 fstab 文件将新驱动器挂载为 /home/ 并重新启动。

  • 如果一切正常,以 root 身份执行 rd /s /q /oldhome

我不是 Linux 大神,但我无数次使用这种方法来扩展我在 *nix 操作系统中的空间。如果有人对我如何做到这一点有批评,请帮助我写一篇更好的文章。我很乐意修改它。

相关内容