RUI个人博客 首页>>Linux>>[原] e2fsck: Filesystem has unsupported feature(s) while trying to open

[原] e2fsck: Filesystem has unsupported feature(s) while trying to open

起因:

       由于服务器文件系统的空间不足,需要进行扩容,一切按上一次我扩容的步骤文档执行,但在执行 e2fsck -f /dev/vg_data/lv_data 的时候报错,执行resize2fs /dev/vg_data/lv_data同样报错,进行分析步骤如下:

补充:系统:红旗 AX3 SP3  内核:Red Hat Enterprise Linux Server release 5.5 (Tikanga)

扩容流程:

1. 从主机确定光纤卡的wwpn号提供给hp工程师进行划盘(心想:如果我有权限我也能划)

2. 通知应用停止系统上的服务,进行主机的重启认盘(这一步需要备份必要的信息:文件系统信息、路由信息、ip地址信息)

3. 通过hpevainfo工具进行查看新扩容的磁盘的wwnn号,通过wwnn号进行文件系统的绑定保证。

4. 如果使用Multipath绑盘:Multipath -F Multipath -v2进行重新读取/etc/multipath.conf文件。如果是使用udev绑盘,则执行start_udev重启认盘。

5. 将认到的磁盘:pvcreate -- >vgextend -- > lvextend -- >e2fsck -f -- >resize2fs

报错信息:

[root@tyger2rules.d]# e2fsck -f /dev/vg_data/lv_data
e2fsck 1.39 (29-May-2006)
e2fsck: Filesystem has unsupported feature(s) while trying to open /dev/vg_data/lv_data
The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193

流程具体步骤:

存储划盘、文件系统绑盘、重启服务不再介绍,Google上资料很多的。

[root@tyger2rules.d]# pvcreate /dev/HP_diskc
  Physical volume "/dev/HP_diskc" successfully created
 [root@tyger2rules.d]# vgextend vg_data /dev/HP_diskc
  Volume group "vg_data" successfully extended
 [root@tyger2rules.d]# lvextend -l +100%FREE /dev/vg_data/lv_data
  Extending logical volume lv_data to 1.56 TB
  Logical volume lv_data successfully resized
 [root@tyger2rules.d]# e2fsck -f /dev/vg_data/lv_data
e2fsck 1.39 (29-May-2006)
e2fsck: Filesystem has unsupported feature(s) while trying to open /dev/vg_data/lv_data
The superblock could not be read or does not describe a correct ext2
filesystem.  If the device is valid and it really contains an ext2
filesystem (and not swap or ufs or something else), then the superblock
is corrupt, and you might try running e2fsck with an alternate superblock:
    e2fsck -b 8193[root@tyger2~]# resize2fs /dev/vg_data/lv_data                                         
resize2fs 1.39 (29-May-2006)                                                                    
resize2fs: Filesystem has unsupported feature(s) while trying to open /dev/vg_data/lv_data
Couldn't find valid filesystem superblock.                   

解决办法:

1. 网上找了一下,说是可能e2fsckresize2fs的版本太低导致的报错,查找了一些执行扩容的资料,

  上次给同样的系统版本扩容,同样的文件系统内核,同样的命令,同样的ext4都正常执行了。。。。。   所以 pass

2. 开始怀疑是否是e2fsckresize2fs的版本照成的?

[root@RAC1 ~]# man resize2fs
RESIZE2FS(8)                                                      RESIZE2FS(8)
NAME
       resize2fs - ext2/ext3 file system resizer
SYNOPSIS
       resize2fs [ -d debug-flags ] [ -S RAID-stride ] [ -f ] [ -F ] [ -p ]
       device [ size ]
DESCRIPTION
       The resize2fs program will resize ext2 or ext3 file systems.  It can
       be  used  to  enlarge  or shrink an unmounted file system located on
       device.  If the filesystem is mounted, it can be used to expand  the
       size of the mounted filesystem, assuming the kernel supports on-line
       resizing.  (As of this writing, the Linux 2.6  kernel  supports  on-
       line resize for filesystems mounted using ext3 only.).
       The  size parameter specifies the requested new size of the filesys-
       tem.  If no units are specified, the units  of  the  size  parameter
       shall  be  the  filesystem blocksize of the filesystem.  Optionally,
       the size parameter may be suffixed by one of the following the units
       designators: ’s’, ’K’, ’M’, or ’G’, for 512 byte sectors, kilobytes,
       megabytes, or gigabytes, respectively.  The size of  the  filesystem
       may never be larger than the size of the partition.  If size parame-
       ter is not specified, it will default to the size of the  partition.
       The  resize2fs  program  does not manipulate the size of partitions.
       If you wish to enlarge a filesystem, you must first  make  sure  you
       can  expand the size of the underlying partition first.  This can be
       done using fdisk(8) by deleting the partition and recreating it with
       a larger size or using lvextend(8), if you’re using the logical vol-
       ume manager lvm(8).  When recreating the partition,  make  sure  you
       create  it  with  the same starting disk cylinder as before!  Other-
       wise, the resize operation will certainly not work, and you may lose
       your  entire  filesystem.   After running fdisk(8), run resize2fs to
       resize the ext2 filesystem to use all of  the  space  in  the  newly
       enlarged partition.
       If  you  wish  to  shrink  an ext2 partition, first use resize2fs to
       shrink the size of filesystem.  Then you may use fdisk(8) to  shrink
       the  size  of  the partition.  When shrinking the size of the parti-
       tion, make sure you do not make it smaller than the new size of  the
       ext2 filesystem!
OPTIONS
       -d debug-flags
              Turns  on  various resize2fs debugging features, if they have
              been compiled into the binary.  debug-flags  should  be  com-
              puted  by adding the numbers of the desired features from the
              following list:
                   1    - Print out all disk I/O
                   2    - Debug block relocations
                   8    - Debug inode relocations
                   16   - Debug moving the inode table
       -S RAID-stride
              The resize2fs program will heuristically determine  the  RAID
              stride  that  was  specified when the filesystem was created.
              This option allows the user  to  explicitly  specify  a  RAID
              stride setting to be used by resize2fs instead.
       -p     Prints  out  a  percentage completion bars for each resize2fs
              operation, so that the user can keep track of what  the  pro-
              gram is doing.
       -f     Forces resize2fs to proceed with the filesystem resize opera-
              tion, overriding some safety checks which resize2fs  normally
              enforces.
       -F     Flush the filesystem device’s buffer caches before beginning.
              Only really useful for doing resize2fs time trials.
AUTHOR
       resize2fs was written by Theodore Ts’o .
COPYRIGHT
       Resize2fs is Copyright 1998 by Theodore Ts’o  and  PowerQuest,  Inc.
       All  rights  reserved.   As  of  April, 2000 Resize2fs may be redis-
       tributed under the terms of the GPL.
SEE ALSO
       fdisk(8), e2fsck(8), mke2fs(8), lvm(8), lvextend(8)
E2fsprogs version 1.39             May 2006                       RESIZE2FS(8)

The resize2fs program will resize ext2 or ext3 file systems  只支持 ext2ext3文件系统

[root@RAC1 ~]# man resize4fs
RESIZE2FS(8)                                                      RESIZE2FS(8)
NAME
       resize2fs - ext2/ext3/ext4 file system resizer
SYNOPSIS
       resize2fs  [ -fFpPM ] [ -d debug-flags ] [ -S RAID-stride ] device [
       size ]
DESCRIPTION
       The resize2fs program will resize ext2, ext3, or ext4 file  systems.
       It can be used to enlarge or shrink an unmounted file system located
       on device.  If the filesystem is mounted, it can be used  to  expand
       the size of the mounted filesystem, assuming the kernel supports on-
       line resizing.  (As of this writing, the Linux 2.6  kernel  supports
       on-line resize for filesystems mounted using ext3 only.).
       The  size parameter specifies the requested new size of the filesys-
       tem.  If no units are specified, the units  of  the  size  parameter
       shall  be  the  filesystem blocksize of the filesystem.  Optionally,
       the size parameter may be suffixed by one of the following the units
       designators: ’s’, ’K’, ’M’, or ’G’, for 512 byte sectors, kilobytes,
       megabytes, or gigabytes, respectively.  The size of  the  filesystem
       may never be larger than the size of the partition.  If size parame-
       ter is not specified, it will default to the size of the  partition.
       The  resize2fs  program  does not manipulate the size of partitions.
       If you wish to enlarge a filesystem, you  must  make  sure  you  can
       expand the size of the underlying partition first.  This can be done
       using fdisk(8) by deleting the partition and recreating  it  with  a
       larger size or using lvextend(8), if you’re using the logical volume
       manager lvm(8).  When recreating the partition, make sure you create
       it  with  the same starting disk cylinder as before!  Otherwise, the
       resize operation will certainly not work,  and  you  may  lose  your
       entire  filesystem.  After running fdisk(8), run resize2fs to resize
       the ext2 filesystem to use all of the space in  the  newly  enlarged
       partition.
       If  you  wish  to  shrink  an ext2 partition, first use resize2fs to
       shrink the size of filesystem.  Then you may use fdisk(8) to  shrink
       the  size  of  the partition.  When shrinking the size of the parti-
       tion, make sure you do not make it smaller than the new size of  the
       ext2 filesystem!
OPTIONS
       -d debug-flags
              Turns  on  various resize2fs debugging features, if they have
              been compiled into the binary.  debug-flags  should  be  com-
              puted  by adding the numbers of the desired features from the
              following list:
                   2    - Debug block relocations
                   4    - Debug inode relocations
                   8    - Debug moving the inode table
       -f     Forces resize2fs to proceed with the filesystem resize opera-
              tion,  overriding some safety checks which resize2fs normally
              enforces.
       -F     Flush the filesystem device’s buffer caches before beginning.
              Only really useful for doing resize2fs time trials.
       -M     Shrink the filesystem to the minimum size.
       -p     Prints  out  a  percentage completion bars for each resize2fs
              operation, so that the user can keep track of what  the  pro-
              gram is doing.
       -P     Print the minimum size of the filesystem and exit.
       -S RAID-stride
              The  resize2fs  program will heuristically determine the RAID
              stride that was specified when the  filesystem  was  created.
              This  option  allows  the  user  to explicitly specify a RAID
              stride setting to be used by resize2fs instead.
KNOWN BUGS
       The minimum size of the filesystem as estimated by resize2fs may  be
       incorrect, especially for filesystems with 1k and 2k blocksizes.
AUTHOR
       resize2fs was written by Theodore Ts’o .
COPYRIGHT
       Resize2fs  is  Copyright  1998 by Theodore Ts’o and PowerQuest, Inc.
       All rights reserved.  As of April,  2000  Resize2fs  may  be  redis-
       tributed under the terms of the GPL.
SEE ALSO
       fdisk(8), e2fsck(8), mke2fs(8), lvm(8), lvextend(8)
E2fsprogs version 1.41.12          May 2010                       RESIZE2FS(8)

The resize2fs program will resize ext2, ext3, or ext4 file  systems.  支持ext2,ext3,or ext4文件系统

最后通过执行    resize4fs /dev/vg_data/lv_data 

注:由于这个命令执行没有执行过,不敢贸然执行,所有先挂上之前的 文件系统,保证使用,第二天领导来了一块商量才执行, 

数据第一位!!!执行出问题了,就是   死。。。。。。。

思考:

执行的扩容也是同样的步骤,同样的命令,同样的内核版本,同样的操作系统,但是执行成功了。。。。。

      下一次扩容的时候在关注一下这个问题吧。。。。。。

    2016.05.05   北京邮储   tyger.wang

昵  称:
邮  箱:
评论内容:
验 证 码:
可用[code][/code]插入代码
点击刷新验证码