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

  • Virtualbox Error Cannot register the hard disk because a hard disk with UUID already exists solution
  • kernel: [549267.368859] mate-terminal[7871]: segfault at 2000000101 ip 00007f5d0a9548f0 sp 00007fff7012c610 error 4 in libgobject-2.0.so.0.4800.2[7f5d0a920000+52000]
  • apcupsd how to setup and monitor APC UPS units
  • How To Password Reset, Recover, Bypass, Remove and Unlock on Windows 10,8,7,Vista,XP,NT,2000,2003,2008,2012,2016,2019 Administrative Login Programs
  • Nvidia Ubuntu Linux Screentearing Video with solution driver
  • ?? Question Marks for time, permissions and size of a file?
  • mdadm how to stop a check
  • access denied by acl file qemu-kvm: bridge helper failed
  • Linux NIC connecting at 100M instead of 1000M gigabit speeds? It could be overheating
  • "This kernel requires the following features not present on the CPU: cmov Unable to boot - please use a kernel appropriate for your CPU.
  • http://vault.centos.org/5.9/os/i386/repodata/filelists.xml.gz: [Errno -1] Metadata file does not match checksum solution
  • Linux Ubuntu Wifi Disabled Only Works When Laptop Plugged Into Wall AC Power
  • CentOS 6 impossible to compile a newer libguestfs
  • chroot
  • How To Get Started on Ubuntu with gpt-2 OpenAI Text Prediction
  • Remove cloud-init in your VM
  • QEMU-KVM KVM Command Line Practical Guide
  • Linux How To Change NIC Name to eth0 instead of enps33 or enp0s25
  • virt-resize: error: libguestfs error: could not create appliance through libvirt.
  • Asterisk Does Not Retry When Authentication Fails