我们将在新服务器上运行 CentOS 7。我们在服务器内部的 raid6 中有 6 个 300GB 驱动器。(存储主要以 40TB RAID 盒的形式在外部存储。)如果格式化为单个卷,则内部卷大约为 1.3TB。我们的系统管理员认为将操作系统安装在一个 1.3TB 的大分区上是一个非常糟糕的主意。
我是生物学家。我们不断安装新软件来运行和测试,其中大部分都在 /usr/local 中。然而,因为我们有大约 12 位不精通计算机的生物学家在使用该系统,所以我们也在 /home 中收集了很多数据。我们的最后一个服务器有一个 200GB 的 / 分区,2.5 年后它已满 90%。我不希望这种情况再次发生,但我也不想违背专家的建议!
我们如何才能最好地使用 1.3TB 可用空间来确保空间在需要的时间和地点可用,但又不会为系统管理员带来维护噩梦?
我试图使用如何将磁盘空间从 centos-home 移动到 centos-root 中的步骤重新分配未使用的磁盘空间/dev/mapper/centos-home
(1.2Tb/dev/centos/root
)。
跑完后...
$ umount /dev/mapper/centos-home
$ lvreduce -L 1200G /dev/mapper/centos-home
Run Code Online (Sandbox Code Playgroud)
当我尝试重新安装驱动器时,出现“无法读取超级块”错误。
$ mount /dev/mapper/centos-home
mount: /dev/mapper/centos-home: can't read superblock
Run Code Online (Sandbox Code Playgroud)
在开始之前,我仔细检查以确保在运行“lvreduce”命令之前有足够的可用空间(物理空间)(有 2Tb 可用空间) - 但假设我的错误不是按照中的建议运行命令来首先缩小文件系统LVM 逻辑卷分区在 lvreduce 之后损坏,但也了解到这不能在 XFS 系统上完成,但无法找到具体细节。
我尝试恢复使用,
$ xfs_repair /dev/mapper/centos-home
Run Code Online (Sandbox Code Playgroud)
但结果说
Sorry, could not find valid secondary superblock; Exiting now.
Run Code Online (Sandbox Code Playgroud)
我也尝试过恢复LV的大小
$ lvextend -L 1200G /dev/mapper/centos-home
Run Code Online (Sandbox Code Playgroud)
结果,
New size (307200 extents) matches existing size (307200 extents)
Run Code Online (Sandbox Code Playgroud)
superblock read
但在尝试驱动器时遇到了同样的错误$ mount
。
我不确定此时我给自己挖的坑有多深,所以这是我的问题。
从中恢复的最佳方法是什么?或者,如果我无法恢复和安装损坏的驱动器,我是否只需将其删除并创建一个同名的新驱动器?这是否可能,即我需要重新安装 CentOS …