我相信 CentOS 5 中的默认操作系统文件系统是 ext3。
是否可以在 Centos 5.x 上使用 ext4,还是只能在 6.x 上使用?我可以将现有的 ext3 文件系统升级到 ext4 吗?
答案1
除了 Kenny Rasschaert 的回答之外:
您可以在这里找到一个很好的解释:
http://www.debian-administration.org/article/Migrating_a_live_system_from_ext3_to_ext4_filesystem
请注意,这可能很危险,因此在尝试执行此操作之前应进行备份。
将根文件系统转换为 ext4
转换根文件系统有点棘手,因为您无法卸载它,因为您的系统正在其上运行。不过,仍然可以在不使用外部可启动媒体的情况下进行转换。您应该在单用户模式下执行此操作。
第一步是修改 /etc/fstab 文件,将根分区的“ext3”改为“ext4”。这很重要,因为稍后您将在只读文件系统上操作,并且无法进行更改,这将导致您的系统无法在下次启动时挂载根文件系统。
让我们假设根分区是 /dev/sda1,因此您的 /etc/fstab 应该看起来像这样。
/dev/sda1 / ext4 defaults 0 1
现在以只读方式重新挂载根文件系统。
mount -o remount,ro /
然后在根文件系统上运行文件系统检查。
fsck.ext3 -pf /dev/sda1
它会提示您重新启动系统。这可能是一个好主意,因此只需启动到单用户模式并再次以只读方式重新挂载即可。即使我们已经修改了 /etc/fstab,这也没问题,因为 ext3 可以挂载为 ext4,而无需转换。
接下来,在根文件系统上启用所有 ext4 功能。
tune2fs -O extents,uninit_bg,dir_index /dev/sda1
然后再次对根文件系统进行文件系统检查。它将发现并修复错误。这是正常的。
fsck.ext4 -yfD /dev/sda1
现在,您可以重新启动到新的 ext4 系统,并享受更快的文件系统检查时间、更好的性能以及 ext4 的所有改进。好吧,差不多了;请阅读下一节。
答案2
根据Red Hat 文档,5.6以上版本支持ext4。
安装e4fsprogs
ext4 实用程序包。在 5.6 之前的版本中,这些实用程序可能位于包中ext4dev
。
答案3
这可能太旧了,但 CentOS 5 中的默认 grub 无法从 ext4 启动。刚刚在困难中发现了这一点 - 将 /root(因此是 /boot)转换为 ext4 后出现内核崩溃。
请点击此处查看工作流程: http://blog.endpoint.com/2013/06/converting-root-filesystem-from-ext3-to.html
注意,在操作之前需要先安装e4fsprogs,并将“tune2fs”替换为“tune4fs”。