黑白格子

  • 首页
  • 所有文章
  • 文章分类
  • 关于页面
  • 友链

  • 搜索
工具 随笔 脚本 Shell MAC IE SSL iptables 网络 k8s docker ubuntu web 镜像 Nginx Linux Windows cloud-init

linux操作系统无损升级文件系统ext3至ext4--数据盘篇

发表于 2020-06-17 | 分类于 Linux | 0 | 阅读次数 646

linux操作系统无损升级文件系统ext3至ext4

这里我们以CentOS7.0操作系统来作为示例升级数据盘文件系统

注意:根据此方法测试过程中没有发现数据损坏或丢失现象,但还是建议操作前通过快照等方式备份数据避免意外丢失数据

具体操作步骤:

1. 确认内核版本和系统环境支持 ext4 (推荐内核版本升至2.6.28以上)
root@Test ~ # uname -r                         #查看当前内核版本
3.10.0-123.el7.x86_64
root@Test ~ # lsmod |grep ext4                 #查看内核当前是否已加载ext4文件系统模块
ext4                  528957  1 
mbcache                14958  1 ext4
jbd2                   98341  1 ext4
2. 卸载要升级的分区(这里我们以/dev/vdb1分区为例)
root@Test ~ # umount /dev/vdb1                 #解挂载/dev/vdb1分区
root@Test ~ # lsblk 
NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
vda    253:0    0  50G  0 disk 
└─vda1 253:1    0  50G  0 part /
vdb    253:16   0  50G  0 disk 
└─vdb1 253:17   0  50G  0 part                 #vdb1数据盘已经是未挂载状态
3. 使用 tune2fs 命令来给分区加入ext4的特性
root@Test ~ # tune2fs -O extents,uninit_bg,dir_index /dev/vdb1          #文件系统参数extents,uninit_bg,dir_index包含了ext4特性
root@Test ~ # tune2fs -l /dev/vdb1 | grep features                      #查看文件系统ext4相关参数是否添加成功
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent sparse_super large_file uninit_bg
root@Test ~ # blkid | grep vdb1                #查看vdb1分区文件系统已经是ext4
/dev/vdb1: UUID="a2ecf594-5d20-4e94-a32e-5f3c77dac121" TYPE="ext4"
4. 使用 fsck 或 e2fsck 检查修复分区,如果不做这一步,在系统启动的时候会提示分区检查,可以导致系统启动卡住
root@Test ~ # e2fsck -fDC0 /dev/vdb1
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure                                           
Pass 3: Checking directory connectivity
Pass 3A: Optimizing directories
Pass 4: Checking reference counts                                              
Pass 5: Checking group summary information
/dev/vdb1: ***** FILE SYSTEM WAS MODIFIED *****
/dev/vdb1: 11/3276800 files (0.0% non-contiguous), 251732/13106944 blocks
5. 挂载分区,修改 /etc/fstab 中分区格式为 ext4
root@Test ~ # mount /dev/vdb1 /test
root@Test ~ # df -Th | grep vdb1
/dev/vdb1      ext4       50G   52M   47G   1% /test
root@Test ~ # cat /etc/fstab | grep vdb1
/dev/vdb1            /test                ext4       defaults              0 0

通过这种方式转换而来的分区,原先存放的数据,文件数据存放结构还是ext3,解决的办法,就是把原来的数据重新复制一遍,这样就可以真正使用上ext4的文件系统特征了。

  • 本文作者: 黑白格子
  • 本文链接: https://www.clhuang.cn/?p=54
  • 版权声明: 本博客所有文章除特别声明外,均采用CC BY-NC-SA 4.0 许可协议。转载请注明出处!
# Linux # 随笔
linux操作系统无损升级文件系统ext3至ext4--系统盘篇
H2 Database迁移到MySQL【halo】
黑白格子

黑白格子

56 日志
11 分类
18 标签
Creative Commons
0%
© 2023 黑白格子
主题 - NexT.Mist
网站已稳定运行:
陕ICP备2023008476号