I use Ubuntu 16.04 on my machine. I have downloaded the new 16.04 Ubuntu Mate image for Raspberry Pi. The SHA256 hash matches what is published.
The uncompressed file is 7.5GB.
ls -lh ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img
-rw-r–r-- 1 pid pid 7.5G Apr 26 12:12 ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img
However the recent NOOBS SD card I got is 7.4GB.
lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 238.5G 0 disk
├─sda1 8:1 0 243M 0 part /boot
…
mmcblk0 179:0 0 7.4G 0 disk
So guess what happens when I use ddrescue to write the image onto the SD card? It fails saying the SD card is too small.
sudo ddrescue -D --force ubuntu-mate-16.04-desktop-armhf-raspberry-pi.img /dev/mmcblk0
GNU ddrescue 1.19
Press Ctrl-C to interrupt
rescued: 7948 MB, errsize: 0 B, current rate: 4390 kB/s
ipos: 7948 MB, errors: 0, average rate: 9728 kB/s
opos: 7948 MB, run time: 13.61 m, successful read: 0 s ago
Copying non-tried blocks… Pass 1 (forwards)
ddrescue: Write error: No space left on device
The NOOBS card shipped is a Sandisk 8GB card.