Web lists-archives.com

Re: libgparted bug.




On Friday 09 February 2018 03:33:38 Thomas Schmitt wrote:

> Hi,
>
> Gene Heskett wrote:
> > Th os say its 59.b GB when it mounts the original
> > [...]
> > gene@coyote:~/rock64.imgs$ dd of=/dev/sdd bs=64k
> > if=working-rock64.img dd: writing `/dev/sdd': No space left on
> > device
> > 976897+0 records in
> > 976896+0 records out
>
> That's the usual confusion between ISO GB (= 1 billion bytes) and
> programmer's GiB (1024 * 1024 * 1024 bytes).
> dd's "k" are programmer's KiB (= 1024).
>
> 976896*64*1024 = 64021856256 = 64.02 ISO GB = 59.63 programmer's GiB.
>
> So it failed when it had already reached the 64 ISO GB limit.
> No chance to return the card to the seller for being undersized, i
> guess.
>
> > So nominally 600k of card disappeared.
>
> The old card is obviously slightly larger than the new one.
>
> > Obviously I need to restrict dd to about the first 10 gigs as there
> > is not any data beyond that anyway.  So wash, rinse and repeat. But
> > I need too, to shrink the file system, and the last partition on the
> > card to low enough I could use a 16GB sdcard as the test tool
>
> You need to do it in a qualified way.
> The partition table would be easy as soon as you identified what type
> it is: MBR partition table or GPT.
>
> > partition 7 is around 125k bigger than the disk
>
> The task of shrinking a filesystem depends much on its type.
> E.g.
> http://www.microhowto.info/howto/reduce_the_size_of_an_ext2_ext3_or_ex
>t4_filesystem.html (Disclaimer: I have never done this.)
>
> > Why hasn't such a utility been done?
>
> I guess because most people just buy a bigger medium.
>
That is not the problem, something is automounting the partition as soon 
as gparted unmounts the SOB, so by the time you start the resize, its 
mounted again and gparted is locked out.
>
> Normally i would advise to copy old partition 7 file by file into a
> freshly formatted filesystem in the slightly smaller partition 7 on
> the new card. But the bootability might get damaged that way.
>
> You would be lucky if the boot loader on the old card does not refer
> to partition 7. I'd flatly give it a try:
>
> - Copy the old card by dd up to the start of partition 7.
>   This will most probably copy the oversized partition entry of old
>   partition 7.
>
> - So use a partition editor to delete partition 7 on the new card.
>   Create an new partition 7 of a size that matches the card size.
>
> - Create a new filesystem in the new partition 7.
>
> - Mount both partitions 7 of old and new card.
>   Copy all files from old partition 7 to new one. E.g. by cp -a.
>
> If the new card then does not boot, you have to find out which boot
> loader is installed, what it uses on partition 7, and how to
> re-install it so that it works properly with new partition 7.
>
>
> Have a nice day :)
>
> Thomas



-- 
Cheers, Gene Heskett
--
"There are four boxes to be used in defense of liberty:
 soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author)
Genes Web page <http://geneslinuxbox.net:6309/gene>