網頁

2009年5月20日 星期三

fedora ext3 轉換 ext4 心得

Ubuntu 9.04 成功地輕鬆轉換成 ext4 後,在 Fedora 11 釋出之前,手邊的 Fedora 10 也來改改看。

開始前先確認您的 e2fsprogs, kernel 及 mkinitrd 是否更新至最新版。
# yum upgrade mkinitrd e2fsprogs kernel

由 ext3 轉成 ext4 的指令與 Ubuntu 相同。
# tune2fs -O extents,uninit_bg,dir_index /dev/DEV
# e2fsck -fD /dev/DEV

但再轉換前請務必完成以下的步驟!

注意:根據 Ext4 HowTo 的說明, Fedora 的 /boot 請轉成 ext4 !
No version of Fedora at this time (including F11) has support in grub for booting from ext4, so /boot must be ext3 or some other supported filesystem. The anaconda installer enforces this restriction.


轉換只需三個步驟:
#1 修改 /etc/fstab 將要轉成 ext4 的磁區的 ext3 改成 ext4
注意: /boot 只能使用 ext3 !!
#2 備份舊的initrd.img 並建立新的包含 ext4 module 的 initrd.img
mv /boot/initrd-`uname -r`.img /boot/initrd-`uname -r`.img.old
mkinitrd -v --with=ext4 /boot/initrd-`uname -r`.img `uname -r`
#3 由 ext3 轉換成 ext4
tune2fs -O extents,uninit_bg,dir_index /dev/DEV
e2fsck -fD /dev/DEV
注意:使用中的磁區無法 e2fsck,在 tune2fs 後,建議利用光碟開機再 e2fsck.

第二步驟很重要,沒有 ext4 的 module 開機就會失敗!
參考:Fedora Solved

1 則留言:

han 提到...

補充說明一下:

在完成 tune2fs 及 mkinitrd 之後,在 fedora 下就算進入 single user mode 之後 / 及 /usr 還是會 mount 起來,這樣一能就只能用光碟開機進行 e2fsck。我手邊又沒有 fedora 10 的開機光碟…,實在沒有 ubuntu 方便

一時失手就 reboot 了,沒想到也 reboot 成功,開機後系統自動 fsck ...

手賤,找了一台遠端的 fedora server 如法泡制,一切 ok.