商会资讯

 找回密码
 立即注册

QQ登录

只需一步,快速开始

用新浪微博连接

一步搞定

搜索
热搜: 活动 交友 discuz
查看: 5816|回复: 0
打印 上一主题 下一主题

如何把linux的文件系统从ext2无损升级到ext4

[复制链接]

109

主题

1

好友

3774

积分

管理员

Rank: 9Rank: 9Rank: 9

  • ta_mind
    mb_qb7
    2013-3-19 01:56
  • classn_01: 366 classn_02

    [LV.9]以坛为家II

    跳转到指定楼层
    楼主
    发表于 2016-11-22 17:18:34 |只看该作者 |倒序浏览
    基本步骤:
    1确认内核版本和系统环境支持ext4 (推荐升至2.6.28以上,lsmod |grep ext4)
    2卸载要升级的分区(在线卸不掉则需要进单用户)
    3 tune2fs -O has_journal,extents,huge_file,flex_bg,uninit_bg,dir_nlink,extra_isize来给分区加入ext4的特性
    4 e2fsck -fDC0 /dev/sdb1 –y修复分区错误
    5修改fstab中分区格式为ext4,reboot

    关键点:
    1tune2fs版本要高于1.41 否则不支持ext4的特性
    2官方推荐使用2.6.28以上内核才稳定支持ext4
    3对在使用的分区如var,一定要先卸载再操作,并且重启之前一定要挨个执行完tune2fs,e2fsck,和vi /boot/fstab的修改,再重启,否则挂载就会出问题

    网络资料:
    一、测试场景
    操作系统:CentOS 5.6 x86 64bit(内核2.6.18)
    文件系统:ext3
    硬盘:2块(sda1、sdb1),sdb1的挂载点为/Android,专门用来存储编译文件,在编译时报错。

    二、升级前状态
    查看系统内核版本
    # uname -r
    2.6.18-238.el5
    查看文件系统的情况:
    # df -T
    文件系统      类型    1K-块        已用    可用 已用% 挂载点
    /dev/mapper/VolGroup00-LogVol00
                  ext3    13077624  3342968  9059636  27% /
    /dev/sda1    ext3      101086    15876    79991  17% /boot
    tmpfs        tmpfs      257452        0    257452  0% /dev/shm
    /dev/sdb1    ext3    8254240    149624  7685324  2% /android
    查看ext4特征是否激活:
    # tune2fs -l /dev/sdb1 | grep extent
    执行上述命令后无任何信息返回,说明/dev/sdb1的ext4特征没有激活,唯一的解决办法就是升级文件系统到ext4了。

    三、软件下载及安装
    e2fsprogs软件包下载页面:http://ftp.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/

    接下来是源码编译安装过程:
    # wget http://ftp.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/e2fsprogs-1.41.14.tar.gz
    # tar -zxvf e2fsprogs-1.41.14.tar.gz
    # cd e2fsprogs-1.41.14
    # ./configure
    # make && make install
    安装完毕后暂时不需要重启系统。第一次安装完毕时我就重启系统了,结果系统竟然崩溃了,因此e2fsprogs软件包安装完毕后不要立即重启服务器。
    分享到: QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    分享分享0 收藏收藏0 转发到微博
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    回顶部