FC3+mdadm+UUID problem

T. Horsnell tsh at mrc-lmb.cam.ac.uk
Tue Jul 19 10:02:53 UTC 2005


I cant get mdadm to assemble a raidarray using the --uuid option.
Its a raid5 array made from /dev/sde1 /dev/sdf1 /def/sdg1 /dev/sdh1

With the array stopped:
  [root at ls1 ~]$ mdadm --detail /dev/md0
  mdadm: md device /dev/md0 does not appear to be active.

  [root at ls1 ~]$ tune2fs -l /dev/md0
  tune2fs 1.36 (05-Feb-2005)
  tune2fs: Invalid argument while trying to open /dev/md0
  Couldn't find valid filesystem superblock.


Assemble the array with specific devices:
  [root at ls1 ~]$ mdadm --assemble /dev/md0 /dev/sde1 /dev/sdf1 /dev/sdg1 /dev/sdh1
  mdadm: /dev/md0 has been started with 4 drives.

  [root at ls1 ~]$ mdadm --detail /dev/md0
  /dev/md0:
          Version : 00.90.01
    Creation Time : Mon Jul 18 16:02:33 2005
       Raid Level : raid5
       Array Size : 430115904 (410.19 GiB 440.44 GB)
      Device Size : 143371968 (136.73 GiB 146.81 GB)
     Raid Devices : 4
    Total Devices : 4
  Preferred Minor : 0
      Persistence : Superblock is persistent

      Update Time : Tue Jul 19 10:01:07 2005
            State : clean
   Active Devices : 4
  Working Devices : 4
   Failed Devices : 0
    Spare Devices : 0

           Layout : left-symmetric
       Chunk Size : 64K

      Number   Major   Minor   RaidDevice State
         0       8       65        0      active sync   /dev/sde1
         1       8       81        1      active sync   /dev/sdf1
         2       8       97        2      active sync   /dev/sdg1
         3       8      113        3      active sync   /dev/sdh1
             UUID : f6ab0c35:fa5ee011:0b41c94d:cae365f6
           Events : 0.528

  [root at ls1 ~]$ tune2fs -l /dev/md0
  tune2fs 1.36 (05-Feb-2005)
  Filesystem volume name:   <none>
  Last mounted on:          <not available>
  Filesystem UUID:          947aaedc-4954-4b32-82ae-f871a3c43614
  Filesystem magic number:  0xEF53
  Filesystem revision #:    1 (dynamic)
  Filesystem features:      has_journal resize_inode filetype sparse_super large_file
  Default mount options:    (none)
  Filesystem state:         clean
  Errors behavior:          Continue
  Filesystem OS type:       Linux
  Inode count:              53772288
  Block count:              107528976
  Reserved block count:     1075289
  Free blocks:              81377439
  Free inodes:              53772275
  First block:              0
  Block size:               4096
  Fragment size:            4096
  Reserved GDT blocks:      998
  Blocks per group:         32768
  Fragments per group:      32768
  Inodes per group:         16384
  Inode blocks per group:   512
  Filesystem created:       Mon Jul 18 16:10:27 2005
  Last mount time:          Mon Jul 18 17:07:48 2005
  Last write time:          Tue Jul 19 10:01:07 2005
  Mount count:              2
  Maximum mount count:      24
  Last checked:             Mon Jul 18 16:10:27 2005
  Check interval:           15552000 (6 months)
  Next check after:         Sat Jan 14 15:10:27 2006
  Reserved blocks uid:      0 (user root)
  Reserved blocks gid:      0 (group root)
  First inode:              11
  Inode size:               128
  Journal inode:            8
  Default directory hash:   tea
  Directory Hash Seed:      a14b279a-1fcf-4bda-9321-56b5d2a6db24
  Journal backup:           inode blocks

  [root at ls1 ~]$ tune2fs -l /dev/sde1
  tune2fs 1.36 (05-Feb-2005)
  Filesystem volume name:   <none>
  Last mounted on:          <not available>
  Filesystem UUID:          947aaedc-4954-4b32-82ae-f871a3c43614
  Filesystem magic number:  0xEF53
  Filesystem revision #:    1 (dynamic)
  Filesystem features:      has_journal resize_inode filetype sparse_super large_file
  Default mount options:    (none)
  Filesystem state:         clean
  Errors behavior:          Continue
  Filesystem OS type:       Linux
  Inode count:              53772288
  Block count:              107528976
  Reserved block count:     1075289
  Free blocks:              81377439
  Free inodes:              53772275
  First block:              0
  Block size:               4096
  Fragment size:            4096
  Reserved GDT blocks:      998
  Blocks per group:         32768
  Fragments per group:      32768
  Inodes per group:         16384
  Inode blocks per group:   512
  Filesystem created:       Mon Jul 18 16:10:27 2005
  Last mount time:          Mon Jul 18 17:07:48 2005
  Last write time:          Tue Jul 19 10:01:07 2005
  Mount count:              2
  Maximum mount count:      24
  Last checked:             Mon Jul 18 16:10:27 2005
  Check interval:           15552000 (6 months)
  Next check after:         Sat Jan 14 15:10:27 2006
  Reserved blocks uid:      0 (user root)
  Reserved blocks gid:      0 (group root)
  First inode:              11
  Inode size:               128
  Journal inode:            8
  Default directory hash:   tea
  Directory Hash Seed:      a14b279a-1fcf-4bda-9321-56b5d2a6db24
  Journal backup:           inode blocks

  [root at ls1 ~]$ tune2fs -l /dev/sdf1
  tune2fs 1.36 (05-Feb-2005)
  tune2fs: Bad magic number in super-block while trying to open /dev/sdf1
  Couldn't find valid filesystem superblock.
  
  [root at ls1 ~]$ tune2fs -l /dev/sdg1
  tune2fs 1.36 (05-Feb-2005)
  tune2fs: Bad magic number in super-block while trying to open /dev/sdg1
  Couldn't find valid filesystem superblock.

  [root at ls1 ~]$ tune2fs -l /dev/sdh1
  tune2fs 1.36 (05-Feb-2005)
  tune2fs: Filesystem revision too high while trying to open /dev/sdh1
  Couldn't find valid filesystem superblock.

The assembled array has previously been initialised with an ext2 filesystem.
According to md(4), superblocks for raid devices are stored at the end
of the disk, so presumably this is why  tune2fs fails on sdf/g/h
Why does sde succeed? Does it alone contain the superblock for
the ext2 filesystem on the array in the normal place?

Why do 'tune2fs /dev/md0' and 'mdadm --detail /dev/md0' show me different UUIDs?

Stop the array and re-assemble it using --uuid option:
(try both UUIDs just for luck)

  [root at ls1 ~]$ mdadm --misc -S /dev/md0

  [root at ls1 ~]$ mdadm --assemble /dev/md0 --uuid=f6ab0c35:fa5ee011:0b41c94d:cae365f6
  mdadm: no devices found for /dev/md0

  [root at ls1 ~]$ mdadm --assemble /dev/md0 --uuid=947aaedc-4954-4b32-82ae-f871a3c43614
  mdadm: no devices found for /dev/md0

So how is the --uuid option supposed to work?

Any suggestions gratefully received,
Terry




More information about the fedora-list mailing list