Re: RAID disk failure

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Jeffrey Ross writes:

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *          63      787184      393561   fd  Linux raid autodetect
/dev/sdb2          787185    16418429     7815622+  fd  Linux raid autodetect
/dev/sdb3        16418430    24418799     4000185   fd  Linux raid autodetect
/dev/sdb4        24418800  1953520064   964550632+   5  Extended
/dev/sdb5        24418863    40050044     7815591   fd  Linux raid autodetect
/dev/sdb6        40050108    55665224     7807558+  fd  Linux raid autodetect
/dev/sdb7        55665288  1953520064   948927388+  fd  Linux raid autodetect

Bingo, mine start at 63, probably a hold over from previous installs.

ok, sdb1 is /boot, and I'm currently using 81 meg out of 372 meg and if I'm doing my math right I should be able to easily shrink /boot by another 1985 blocks (roughly 1MB) or so.

Based upon what you've given me, I suspect I can simply fail /dev/md1 (sda1 sdb1) resize it on the sda1 disk, copy everything across via cpio, install the new bootloader on /dev/sda, once it comes up I can then resize /dev/sdb1 re-add the partition to RAID and run the grub2-install command.

The problem here is that the kernel will NOT reread an updated partition table, if anything is still using any partition. This includes your active md arrays that are already on sda.

You will have to fail and remove all your arrays from sda, before you can screw around with its partition table. fdisk will let you do it, and write the updated partition table, but the kernel will refuse to reread the partition table, and use it, if any partition is active on that disk.

Furthermore, I would not chance a reboot with different versions of /boot on two disks.

If I'm on a UPS and don't have to worry about power, I would do the following (since I've already done this two times already, for similar reasons):

Make a back up of /boot, in case something happens.

Unmount /boot, fsck it, and use resize2fs to shrink it down to about 30% less than its projected smaller size (so as to not to waste any time on all the mega/mibi drivel). Then, use mdadm --grow to reduce the size of the /boot md unit to about 15% less than the projected smaller size of the new /boot. This needs to be done now, while the md array is still synced. mdadm --grow won't work if the array is degraded.

Double check that md says that everything is still fully synced, maybe mount /boot and verify that it still looks kosher.

Fail all partitions on sda, to release all the kernel locks on the partition table. Delete and recreate a smaller sda1.

Run mdadm --zero-superblock on all sda partitions, then add them back to their original arrays, and let the kernel fully resync everything. --zero- superblock will ensure that everything is fully sync. mdadm will accept the smaller sda1 back into its original array, because it's still larger than the reduced logical size of the array.

At this point, when I went through this, I repeated the the whole thing, this time failing everything on sdb, because I wanted to have sdb's partition table match sda's. But that's not strictly necessary. But it's a good idea, since you will also be able to install grub on sdb, if needed, and swap it in for sda, and boot off it.

Finally, unmount /boot, if it's still mounted, run mdadm --grow to let mdadm grow the logical array back up to the maximum size of the smallest partition in the array, then use resize2fs to bring the size of the /boot filesystem back up to the size of the logical array it lives on.

Attachment: pgpznk1eEZBFy.pgp
Description: PGP signature

-- 
users mailing list
users@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe or change subscription options:
https://admin.fedoraproject.org/mailman/listinfo/users
Guidelines: http://fedoraproject.org/wiki/Mailing_list_guidelines
Have a question? Ask away: http://ask.fedoraproject.org
[Index of Archives]     [Older Fedora Users]     [Fedora Announce]     [Fedora Package Announce]     [EPEL Announce]     [EPEL Devel]     [Fedora Magazine]     [Fedora Summer Coding]     [Fedora Laptop]     [Fedora Cloud]     [Fedora Advisory Board]     [Fedora Education]     [Fedora Security]     [Fedora Scitech]     [Fedora Robotics]     [Fedora Infrastructure]     [Fedora Websites]     [Anaconda Devel]     [Fedora Devel Java]     [Fedora Desktop]     [Fedora Fonts]     [Fedora Marketing]     [Fedora Management Tools]     [Fedora Mentors]     [Fedora Package Review]     [Fedora R Devel]     [Fedora PHP Devel]     [Kickstart]     [Fedora Music]     [Fedora Packaging]     [Fedora SELinux]     [Fedora Legal]     [Fedora Kernel]     [Fedora OCaml]     [Coolkey]     [Virtualization Tools]     [ET Management Tools]     [Yum Users]     [Yosemite News]     [Gnome Users]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [Fedora Sparc]     [Libvirt Users]     [Fedora ARM]

  Powered by Linux