April 2

Linux: Resize a linux image file

To resize your Debian IMG file – instructions are for people with linux computers or laptops:

Copy the ‘debian.img’ image file from your Phone’s SD card (in sdcard/debian) to your linux desktop.

Open a terminal on your linux computer and ‘su’ so you are root.

change directory to the desktop in unbuntu’s case it’s here, we do this so we can see whats going on easily:

cd /home/user/Desktop

create an empty image file: (the 3500999999 refers to the size – this one is 3.5 GB, basically take the first 4 digits and thats how many megabytes the image will be)

dd if=/dev/zero of=debian2.img seek=3500999999 bs=1 count=1

Your new image file is called debian2.img

Now do (you are still on your desktop linux machine here):

mkfs.ext2 -F debian2.img

Mount the 2 images (the old one and new empty one)

mkdir debian
mkdir debian2
mount -o loop debian.img debian
mount -o loop debian2.img debian2

Copy the contents of the old image into the new:

cd /home/user/Desktop/debian/

cp -r -f –preserve * /home/user/Desktop/debian2

Unmount files

umount debian
umount debian2

(sometimes this doesn’t work – so simply reboot)

e2fsck -F debian2

Once that’s done

Back to your linux computer desktop:

As root (su):

Delete the 2 folders debian and debian2

rm -r -f debian
rm -r -f debian2

delete your old image:

rm debian.img

rename the new image:

mv debian2.img debian.img

change permissions:

chmod a+x debian.img
chmod 777 debian.img

Then copy the newly created image into your phones /sdcard/debian folder (overwrite the original).

Finally on your phone boot debian shell as normal and at the localhost$ prompt do:

cd /var/lib/dpkg/updates

rm -r -f *

then

dpkg –configure -a (may take a few minutes, ignore the errors)

This gives you a 3.5GB image instead of the 720mb original image.


Copyright 2021. All rights reserved.

Posted April 2, 2012 by Timothy Conrad in category "Linux

About the Author

If I were to describe myself with one word it would be, creative. I am interested in almost everything which keeps me rather busy. Here you will find some of my technical musings. PGP: 4CB8 91EB 0C0A A530 3BE9 6D76 B076 96F1 6135 0A1B