I set up a machine with Debian 12 earlier. The partition schema is fairly standard, except I’m using mdraid for redundancy. I made an image of the two drives, so that I can easily replicate this setup for other machines (I have a bunch of machines that I need to set up in the exact same way.
However, I realized after I finished setting up everything that I chose the wrong pair of disks - instead of the 2.5" SSD pair, I installed it on the NVMe pair which are supposed to be used for something else. And the SSD pair is smaller than the NVMe pair.
Is it possible to resize the images so that they’ll fit onto the correct disks, or do I have to start from scratch?
I’m sure there’s probably some sort of mdadm invocation to shrink an existing RAID1 mirror pair, but in the absence of that, one option is to create the mirror pair you want on your 2.5" SSDs, and then shrink-and-clone the filesystem from the NVMe mirror to the 2.5" SSDs, using something like Gparted.
In that way, you end up with the mdadm pair that you wanted, and the filesystem is correctly sized. You can even clone the UUIDs for the filesystem so fstab entries won’t have to be changed.
Uhm… why don’t you just move the contents over, then change all references to the new file systems? (fstab, boot loader, etc.)
Yeah, I’ve considered that - Remake the mdraid and partition schema on the correct drives, and then rsync everything over. It’s just a lot more manual than what I was hoping for was possible.
It’s probably just a technicality, but I would not use rsync, but tar -cp …|tar -xvpC …
Depending on how you made the images, you can probably also mount and change them or extract just the files etc.
Edit: disregard this. I have gotten my wires crossed somewhere.
tar
cannot preserve hard links, wherersync
can. Definitely something to bear in mind before doing a full drive copy.As for why anyone would choose hard links over symlinks, sometimes, for some purposes, it’s not clear which file should be the target and which the link and also, symlinks - especially explicit, non-relative symlinks - are very easily broken when files are moved around. Patching them all can be a pain.
you mixed something up tar can and will preserve hard links by default
I could have sworn that the last time I tried to
tar
-copy part of a filesystem containing hard links that I ended up with copies everywhere rather than preservation of the hard links, and thetar
manual page isn’t particularly clear about it at all.But it looks like I’ve misremembered because a quick test with
tar
confirms that it detects and saves hard links, and they unpack correctly too. Now I’m wondering precisely what it was that I was doing where I ended up with all those copies.maybe the target file system didn’t support hard links. hard to say.
This! I’ve done it many a time following 3.7 Full system backup. For some reason can’t get table of contents to load on mobile and get a proper anchor link.