Make your pi images smaller!
Go to file
Drew Bonasera c519a658c7 Fix issue #4 where the script tries to resize to a larger or equal size 2016-07-07 01:28:32 -04:00
LICENSE Initial Commit 2016-04-11 23:05:00 -04:00
README.md Add option to copy to new file before script executes 2016-04-28 01:35:12 -04:00
pishrink.sh Fix issue #4 where the script tries to resize to a larger or equal size 2016-07-07 01:28:32 -04:00

README.md

PiShrink

PiShrink is a bash script that automatically shrink a pi image that will then resize to the max size of the SD card on boot. This will make putting the image back onto the SD card faster and the shrunk images will compress better.

Usage: ./pishrink imagefile.img [newimagefile.img]

If you specify the newimagefile.img parameter, the script will make a copy of imagefile.img and work off that. You will need enough space to make a full copy of the image to use that option.

Example

[user@localhost PiShrink]$ sudo ./shrink.sh pi.img 
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/loop1: 88262/1929536 files (0.2% non-contiguous), 842728/7717632 blocks
resize2fs 1.42.9 (28-Dec-2013)
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/loop1 to 773603 (4k) blocks.
Begin pass 2 (max = 100387)
Relocating blocks             XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 3 (max = 236)
Scanning inode table          XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Begin pass 4 (max = 7348)
Updating inode references     XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
The filesystem on /dev/loop1 is now 773603 blocks long.

Shrunk pi.img from 30G to 3.1G

Credits

Thanks to SirLagz for the code to shrink http://sirlagz.net/2013/03/10/script-automatic-rpi-image-downsizer/