我减少了lv_postgres
5G 的逻辑卷大小。然后将可用空间重新分配给其他lv lv_home
,但没有对减少的卷进行resize2fs lv_postgres'
。下次启动时,我会进入紧急模式,并且resize2fs lv_postgres
不执行“请运行”任务e2fsck -f
,最后一个任务会说“超级块或 pt 可能已损坏”,如果我继续,则在第 5 遍中获取“错误读取块”读取 inode 和块位图时”根据超级块的 fs 大小为 2564096 块设备的物理大小为 1253376 块我想将卷从 9.78G 减少到 4.78G 以匹配所需的大小
哪种方法可以更正体积大小?
答案1
如果您在没有先缩小文件系统的情况下缩小了 LV,那么它就会损坏,并且其中的数据也会丢失,因为文件可能存储在现在更容易访问的区域中。文件系统根本不喜欢这样,您可能无法修复它。
如果您尚未将任何数据写入现在占用该空间的其他 LV,则最好的选择是恢复原始 LV 布局(您可能能够在 /etc/lvm/*/ 中找到合适的备份),撤消LV 尺寸调整。如果没有写入任何内容,文件系统可能仍然完好无损,您可以从那里恢复。
如果您已将其他文件系统扩展到同一区域,那么您只会重复主分区的相同问题。
答案2
我不是专家,但让我看看是否可以帮助你。您有一个逻辑卷 lg1 并将其减少到 4.7G,但resize2fs
在从释放的空间创建另一个逻辑卷 lg2 之前没有运行。
我相信你没有关于lg2的任何数据。
为什么你不能
- 删除逻辑卷lg2
resize2fs
在 lg1 上运行- 重新创建lg2