SD Card setup

To boot the Raspberry Pi, you need an SD card installed with a bootloader and a suitable Operating System. Some Raspberry Pi kits will come with a ready-to-go card, but if you didn't receive one you will need to prepare your own:

Warning! When you write the Raspberry Pi image to your SD card you will lose all data that was on the card.

Safest/Laziest way

Buy a preloaded card from RS Components or element14.

Easiest way

Use an installer program. The Fedora ARM Installer will download and install Raspberry Pi Fedora Remix images, but it will also install other images if they are already downloaded and in uncompressed or .gz format.

(Mac) The RasPiWrite utility is a python script which will walk you through the process of installing to SD card, it works with any Raspberry Pi compatible disk image, and can download one of the currently available distros if you don't have one.

Easy way

To write your SD card you start by downloading the SD image (the data you will write to the card). The best way to do this is using BitTorrent. This generally results in a faster download as it is a highly distributed system (you will be downloading the data from users who have previously downloaded it).

This guide assumes you have downloaded the Debian "squeeze" image, with name debian6-13-04-2012. Obviously, if you are downloading a different or newer version, use the name of the version you have downloaded.

Copying the image to an SD Card on Windows

Extract the image file debian6-19-04-2012.img from the debian6-19-04-2012directory in the debian6-19-04-2012.zip

Insert the SD card into your SD card reader and check what drive letter it was assigned. You can easily see the drive letter (for example G:) by looking in the left column of Windows Explorer.

Download the Win32DiskImager utility. The download links are on the right hand side of the page, you want the binary zip.

Extract the zip file and run the Win32DiskImager utility.

Select the debian6-19-04-2012.img image file you extracted earlier

Select the drive letter of the SD card in the device box. Be careful to select the correct drive; if you get the wrong one you can destroy your computer's hard disk!

Click Write and wait for the write to complete.

Exit the imager and eject the SD card.

Insert the card in the Raspberry Pi, power it on, and it should boot up. Have fun!

In Windows the SD card will appear only to have a fairly small size - about 75 Mbytes. This is because most of the card has a partition that is formatted for the Linux operating system that the RPi uses and is not visible in Windows.

Copying the image to an SD Card on Windows if first option isn't successful

I wasn't able to choose device in Win32DiskImager on my notebook so I found a different way to achieve the same thing on windows machine..

(note that dd will not feedback any information until it is finished, information will show and disk will re-mount when complete)

After the dd command finishes, eject the card:

diskutil eject /dev/rdisk3

(or: open Disk Utility and eject the sdcard)

Insert it in the raspberry pi, and have fun

Copying an image to the SD Card in Linux (command line)

Please note that the use of the "dd" tool can overwrite any partition of your machine. If you specify the wrong device in the instructions below you could delete your primary Linux partition. Please be careful.

Verify if the the hash key of the zip file is the same as shown on the downloads page (optional). Assuming that you put the zip file in your home directory (~/), in the terminal run:

sha1sum ~/debian6-19-04-2012.zip

This will print out a long hex number which should match the "SHA-1" line for the SD image you have downloaded

Extract the image, with

unzip ~/debian6-19-04-2012.zip

Run df -h to see what devices are currently mounted

Connect the sdcard reader with the sdcard inside

Run df -h again. The device that wasn't there last time is your SD card. The left column gives the device name of your SD card. It will be listed as something like "/dev/mmcblk0p1" or "/dev/sdd1". The last part ("p1" or "1" respectively) is the partition number, but you want to write to the whole SD card, not just one partition, so you need to remove that part from the name (getting for example "/dev/mmcblk0" or "/dev/sdd") as the device for the whole SD card. Note that the SD card can show up more than once in the output of df: in fact it will if you have previously written a Raspberry Pi image to this SD card, because the RPi SD images have more than one partition.

Now that you've noted what the device name is, you need to unmount it so that files can't be read or written to the SD card while you are copying over the SD image. So run the command below, replacing "/dev/sdd1" with whatever your SD card's device name is (including the partition number)

umount /dev/sdd1

If your SD card shows up more than once in the output of df due to having multiple partitions on the SD card, you should unmount all of these partitions.

In the terminal write the image to the card with this command, making sure you replace the input file if= argument with the path to your .img file, and the "/dev/sdd" in the output file of= argument with the right device name (this is very important: you will loose all data on the hard drive on your computer if you get the wrong device name). Make sure the device name is the name of the whole SD card as described above, not just a partition of it (for example, sdd, not sdds1 or sddp1, or mmcblk0 not mmcblk0p1)

dd bs=1M if=~/debian6-19-04-2012/debian6-19-04-2012.img of=/dev/sdd

Note that if you are not logged in as root you will need to prefix this with sudo

The dd command does not give any information of its progress and so may appear to have frozen. If your card reader has an LED it may blink during the write process, or you can run pkill -USR1 -n -x dd in another terminal (prefixed with sudo if you are not logged in as root).

As root run the command sync or if a normal user run sudo sync (this will ensure the write cache is flushed and that it is safe to unmount your SD card)

Remove SD card from card reader, insert it in the Raspberry Pi, and have fun

Copying an image to the SD Card in Linux (graphical interface)

If you are using Ubuntu and hesitate to use the terminal, you can use the ImageWriter tool (nice graphical user interface) to write the .img file to the SD card.

ATTENTION: As of this writing (15 June 2012), there is a bug in the ImageWriter program that causes it to fail if the filename of the image file or its path (i.e. all the names of any parent folders that you extract the image file into) contain any space characters. Before going any further, ensure that neither the file name of the image you're using or the path contain any spaces (or other odd characters, for that matter). A bug has been opened for this issue: https://bugs.launchpad.net/usb-imagewriter/+bug/1013834 Once the issue is fixed, edit this page to advise people to use an updated/patched version of ImageWriter.

Insert the SD card into your computer or connect the SD card reader with the SD card inside

Install the ImageWriter tool from the Ubuntu Software Center

Launch the ImageWriter tool (it needs your administrative password)

Select the image file (example debian6-19-04-2012.img) to be written to the SD card (note: because you started ImageWriter as administrator the starting point when selecting the image file is the administrator's home folder so you need to change to your own home folder to select the image file)

Select the target device to write the image to (your device will be something like "/dev/mmcblk0" or "/dev/sdc")

Click the "Write to device" button

Wait for the process to finish and then insert the SD card in the Raspberry Pi

Manually resizing the SD card partitions (Optional)

The SD card image is sized for a 2GB card. The Fedora Remix will automatically resize the partitions on the card during the first boot. The Debian version won't, so you'll have to do it manually. It's much easier if you do this on another machine, as the SD card can't be mounted when you do this.