mdadm can you downgrade the superblock?

Why would you want to downgrade the superblock?  Old mdadm verisons like mdadm 2.5.6 only use the 0.90 superblock/metadata and new versions use 1,1.0,1.1 and 1.2 superblocks by default.

There are some annoying caveats with this, first of all the new superblocks (later than 0.90) CANNOT be read by GRUB, so you won't even be able to install GRUB.  Even worse, old versions of mdadm CANNOT automatically detect arrays even if they were created with a new version of mdadm with the -e 0.90 superblock flag.  And of course old versions of mdadm cannot even manually mount the new superblock format (I'm not sure what would happen if you tried).

So I thought I'd try to downgrade an existing 1.2 superblock array, I had already backed up data to another partition and it's good because my experience didn't go well.  Unfortunately it's not possible to downgrade the superblock and below are my nresults and observations from trying.

First of all more details from the mdadm man page:

-e , --metadata=
    Declare the style of superblock (raid metadata) to be used. The default is 0.90 for --create, and to guess for other operations.

    Options are:
    0, 0.90, default

Use the original 0.90 format superblock. This format limits arrays to 28 componenet devices and limits component devices of levels 1 and greater to 2 terabytes.

    1, 1.0, 1.1, 1.2

Use the new version-1 format superblock. This has few restrictions. The different subversion store the superblock at different locations on the device, either at the end (for 1.0), at the start (for 1.1) or 4K from the start (for 1.2).

Trying with superblock 1.1


mdadm --create /dev/md0 -e 1.1 --assume-clean --level=1 --raid-devices=2 /dev/sda3 missing
mdadm: /dev/sda3 appears to be part of a raid array:
    level=raid1 devices=2 ctime=Wed May 12 20:16:56 2010
Continue creating array? y
mdadm: array /dev/md0 started.


*Version 1.1 is not readable by GRUB either


md0 : active raid1 sda3[0]
      461017216 blocks [2/1] [U_]

 

Trying with superblock 0.90


mdadm --create /dev/md0 -e 0.90 --assume-clean --level=1 --raid-devices=2 /dev/sda3 missing  
mdadm: /dev/sda3 appears to be part of a raid array:
    level=raid1 devices=2 ctime=Tue Jun  8 23:01:54 2010
Continue creating array? y
mdadm: array /dev/md0 started.


*Now I can't mount the partition individually or as md0 for some reason.  It seems this wiped out the superblock and/or trying to create things with this new (even older version) superblock broke something.
 


Tags:

mdadm, downgrade, superblock, verisons, metadata, versions, superblocks, default, caveats, grub, install, automatically, detect, arrays, manually, mount, format, existing, array, partition, didn, nresults, observations, declare, raid, operations, componenet, devices, component, levels, terabytes, restrictions, subversion, locations, dev, md, sda, ctime, wed, creating, readable, active, u_, tue, jun, individually,

Latest Articles

  • Linux Ubuntu Cannot Print Large Images
  • Cannot Print PDF Solution and Howto Resize
  • Linux Console Login Screen TTY Change Message
  • Apache Cannot Start Listening Already on 0.0.0.0
  • MySQL Bash Query to pipe input directly without using heredoc trick
  • CentOS 6 and 7 / RHEL Persistent DHCP Solution
  • Debian Ubuntu Mint rc-local service startup error solution rc-local.service: Failed at step EXEC spawning /etc/rc.local: Exec format error
  • MySQL Cheatsheet Guide and Tutorial
  • bash script kill whois or other command that is running for too long
  • Linux tftp listens on all interfaces and IPs by DEFAULT Security Risk Hole Solution
  • python import docx error
  • Cisco Unified Communications Manager Express Cheatsheet CUCME CME
  • Linux Ubuntu Debian Missing privilege separation directory: /var/run/sshd
  • bash how to count the number of columns or words in a line
  • bash if statement how to test program output without assigning to variable
  • RTNETLINK answers: Network is unreachable
  • Centos 7 how to save iptables rules like Centos 6
  • nfs tuning maximum amount of connections
  • qemu-kvm error "Could not initialize SDL(No available video device) - exiting"
  • Centos 7 tftpd will not work with selinux enabled