Resizing issue maybe?
-
@Tom-Elliott I guess I’ve mixed up two different issues in my head here. In my last post I was talking about extracting start sector information from the *.img files but that’s totally not the point of this issue here.
This is about trying to detect the windows boot partition and make this and all the partitions before it fixed size so the windows boot manager is not being moved. I think I need your expert knowledge on this as well. Looking at the current code of putting together the fixed_size list I find this part of the code very strange. What does the for loop below “Setting up any additional fixed parts” actually do??? -
@Sebastian-Roth That loop is to ensure non-resizable partitions don’t move around.
-
@Tom-Elliott That’s what I would’ve guessed as well. But I really can’t get my head around this weird check
[[ $((ntfscnt + extfscnt)) -gt 1 && $part_number -eq 1 ]]
. Isn’t this making the whole loop useless as it only adds something to the fixed list if “part_number == 1”?!? -
It’s backward.
Look at the first part. It already enters the fixed sizes for non-resizable partitions. The second part (the osid) is to ensure at least the first partition is fixed size, in the case there are any resizable partition found.
-
Ok, thanks for explaining. Makes a little more sense now. But I still think the for loop is useless. This would do the exact same thing without any loop:
[[ $((ntfscnt + extfscnt)) -gt 1 ]] && fixed_size_partitions="$fixed_size_partitions:1"
By the way. The current code in trunk is
...="$fixed_partitions:...
(missing the_size
). Guess this is a bug?!Do you like the idea of trying to find the BCD file on one of the NTFS partitions and make this and all the ones before fixed size?
-
@Sebastian-Roth I totally agree. I think I just had the loop in the case we needed to do as you’re suggesting (all partitions up to a certain point) without directly indicating it. Yes, the fixed_partitions was a mistake on my part.
I’ve removed the first partition out of the loop, but have left the loop in place so I can mount and test the presence of the BCD. It should work, but I will admit it’s completely untested.
-
I’ve updated the init’s to include the code to hopefully iterate the partitions during upload and setup our strings of fixed size partitions more properly.
Please test and/or review as necessary and let me know if things are okay.
Of course this will only impact new uploads from this point forward so to really test we need to have an upload task performed. Particularly on a system that the BCD partition is not on the first partition of the disk if possible.
-
I’ll definitely test it. Thanks for all your hard work guys. I’ll let you know when I’m back at work on Monday :). Have a great weekend!
-
@adame Any news. Did you get to test this?
-
Anything at all?
-
Again, anything to report?