Please note that User Registration has been temporarily disabled due to a recent increase in automated registrations. If anyone needs an account, please request one here: RequestAccount. Thanks for your patience!--Wmat (talk)
Please email User:Wmat if you experience any issues with the Request Account form.

Difference between revisions of "RPi Easy SD Card Setup"

From eLinux.org
Jump to: navigation, search
m (Copying the image to an SD card on Windows)
(Run an App (Only with graphical interface))
 
(53 intermediate revisions by 21 users not shown)
Line 3: Line 3:
  
 
=SD card setup=
 
=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:
+
The Raspberry Pi will not start without a properly formatted SD Card, containing the bootloader and a suitable operating system. Many problems with booting the Pi are a result of an improperly formatted or corrupted card. Make sure that you insert the card before powering on the Pi, and that you shutdown the Pi before unplugging the card. If you do have problems booting the Pi, see the [[R-Pi_Troubleshooting | trouble shooting page]] first.
  
Official images are available from http://www.raspberrypi.org/downloads and there is an overview of available distributions [[RPi_Distributions | here]].
+
You will also need to choose a distribution. Available distributions [[RPi_Distributions | are shown here]]; you will need the RPi bootloader to launch your distribution, so you need one for the Raspberry Pi and cannot download a PC based distribution and use that. Note that you can have several SD Cards with a separate distribution on each, then power off, swap cards and restart the Pi to use that card.
  
Warning! When you write the Raspberry Pi image to your SD card you will lose all data that was on the card.
+
Some Raspberry Pi kits will come with a ready-to-go card with the distribution pre-installed, or these can be bought separately. There is more on this below.
  
=Safest/Laziest way=
+
If you don't have a pre-installed card you will need to prepare your own. Make sure you get a reasonable quality card rather than a cheap one. Check the [[RPi_SD_cards | SD Card list]] if you are not sure. Warning! When you write the Raspberry Pi image to your SD card you will lose all data that was on the card. Official images are available from http://www.raspberrypi.org/downloads.
Buy a preloaded card from RS Components, Element14 or [http://thepihut.com/ The Pi Hut's Raspberry Pi Store].
+
  
=Easiest way=
+
'''Note: It is highly recommended that you start with the latest official NOOBS installer: check the Raspberry Pi official website (http://www.raspberrypi.org/downloads) for the current version. This makes the process of installing an operating system as easy as copying a few files in a zip archive to your SD card. This contains the reccomended Raspbian distribution, as well as various other distributions, all of which are available as individual images from the downloads page, if you prefer not to use NOOBS.'''
  
* Use an installer program. The [http://zenit.senecac.on.ca/wiki/index.php/Raspberry_Pi_Fedora_Remix_Installation#SD_Card_Installation_Using_the_Installer 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.
+
= Safe / Easy way =
 +
Buying a preloaded SD card from a reputable supplier means that you can just plug it in and power up your Raspberry Pi; it should then just work. If you don't buy one of these, you will have to create your own using the instructions below
  
* ('''Mac''') The [http://alltheware.wordpress.com/2012/12/11/easiest-way-sd-card-setup/  RPi-sd card builder] utility is a app which will walk you through the process of installing to SD card. '''With graphical interface'''. Don't need to use commands in terminal.
+
You may need to perform an upgrade of the card once you have got the Pi working, as a distribution (usually) is continuously updated and the card may not contain those updates
  
* ('''Mac''') The [https://github.com/exaviorn/RasPiWrite 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.
+
Compare these for prices, delivery, distribution and card size/class:
  
* If your Pi is connected to the Internet, you can use the [http://www.berryterminal.com/doku.php/berryboot BerryBoot installer] to let it download and install the operating system. This requires that you first use a normal Windows/Mac/Linux computer to download a small .zip file with the Berryboot system files and extract it to an empty SD card. Then you put the SD card in your Pi, and follow the on-screen prompts to complete the installation. An additional advantage is that Berryboot allows you to install more than one operating system on a single SD card. Also, it is not necessary to install any additional software on your normal Windows/Mac/Linux computer.
+
*RS Components
  
=Easy way=
+
*Element14 (Farnell)
  
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 [http://en.wikipedia.org/wiki/BitTorrent_(protocol) 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).
+
*[http://thepihut.com/ The Pi Hut's Raspberry Pi Store] offer SD cards preloaded with either:
 +
**[http://thepihut.com/products/raspbian-preinstalled-sd-card Raspbian].
 +
**[http://thepihut.com/products/xbmc-preinstalled-sd-card OpenELEC XBMC].
  
This guide assumes you have downloaded the Debian "wheezy" image, with name 2012-10-28-wheezy-raspbian. Obviously, if you are downloading a different or newer version, use the name of the version you have downloaded.
+
*[http://modmypi.com/ ModMyPi] Sell high quality Samsung SD cards pre-loaded with the latest Raspian Wheezy OS.
 +
**[https://www.modmypi.com/sd-cards-and-adaptors/samsung-8gb-sd-card-pre-loaded-with-debian-linux-os 8GB Raspian Wheezy Pre-Loaded]
 +
**[https://www.modmypi.com/sd-cards-and-adaptors/samsung-16gb-sd-card-pre-loaded-with-debian-linux-os 16GB Raspian Wheezy Pre-Loaded]
 +
**[https://www.modmypi.com/sd-cards-and-adaptors/samsung-32gb-sd-card-pre-loaded-with-debian-linux-os 32GB Raspian Wheezy Pre-Loaded]
  
==Copying the image to an SD card on Windows==
+
'''[http://www.raspberrypi.org/archives/3534 Public Service Announcement on SD Cards]'''. There have been reports of problems with SD cards purchased from ebay and Amazon. Make sure the SD card you're purchasing is up to date with the latest version of your chosen operating System to avoid any issues.
  
# Download the image from a mirror or torrent. The remainder of this assumes you are using the Raspbian “wheezy” download 2012-12-16-wheezy-raspbian.zip
+
= Create your own =
#* http://www.raspberrypi.org/downloads
+
To create your own SD Card for the Raspberry Pi you will need access to another machine, or a friend with one. You will need to be careful, as you could corrupt the disk on that machine if you do things wrong (although it is not hard to do it right, and NOOBS makes it impossible to go wrong). If you are lucky, you might find a local Raspberry Pi or Linux group who will offer to load your card for you.
# Extract the image file 2012-12-16-wheezy-raspbian.img from the downloaded .zip file.
+
 
# 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. '''If the card is not new, you should format it and make sure there is only one partition (FAT32 is a good choice); otherwise Win32DiskImager can make corrupt your SD card!'''
+
You will also need to choose and download a distribution (mentioned above), or use NOOBS, which has all the . Check the [[RPi_Distributions | Distributions list]] to make sure that you are getting a distribution that will work with the Pi. '''Note that the distribution must be written to the card using the methods below; the standard file copy method will not work'''
# Download the [https://launchpad.net/win32-image-writer Win32DiskImager] utility.  The download links are on the right hand side of the page, you want the binary zip.
+
 
# Extract the executable from the zip file and run the Win32DiskImager utility. '''You should run the utility as Administrator!'''
+
== Using NOOBS ==
# Select the 2012-12-16-wheezy-raspbian.img image file you extracted earlier
+
Recently, the Raspberry Pi Foundation have released a really easy way to set up your SD Card. It's called the New Out Of Box Software (or NOOBS for short) and provides a really easy way to install Raspberry Pi distributions. Be warned, however, that it is a 1GB download - if you have a limit on what you are allowed to download, follow the instructions below, as the other images are around 500MB.
# 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 data on the computer's hard disk!'''
+
 
 +
# Download NOOBS from the [http://www.raspberrypi.org/downloads raspberrypi.org downloads page]
 +
# Insert a (4GB+) SD Card into your computer
 +
#* If you want to save space on the SD Card, you can delete some of the images inside the os folder in the NOOBS zip file that you don't want to use.
 +
# Format the disk
 +
#* '''Windows'''
 +
## Download and install the SD Association's Formatting tool from https://www.sdcard.org/downloads/formatter_4/eula_windows/
 +
## Open the Application you have just installed
 +
## Set "FORMAT SIZE ADJUSTMENT" to ON in the Options menu.
 +
## Make sure you have selected the Drive your SD Card is inserted in
 +
## Click "Format"
 +
#* '''Mac'''
 +
## Download and install the SD Association's Formatting tools from https://www.sdcard.org/downloads/formatter_4/eula_mac/
 +
## Select "Overwrite format"
 +
## Make sure you have selected your SD Card, and not something else
 +
## Click "Format"
 +
#* '''Linux'''
 +
## Use gparted (or the command-line version parted if you prefer), if you don't have it, install it as you usually would.
 +
## Format the entire disk as FAT32 (FAT16 will not work! Make sure you select the correct disk!)
 +
# Extract the file you downloaded in Step 1
 +
# Copy the files you just extracted to your SD Card (see below on flashing your SD card)
 +
 
 +
Not all monitors work with NOOBS straight away. If your monitor is one of those that doesn't work, press the Number buttons 1-4 until you see what you want.
 +
# Default HDMI Mode
 +
# HDMI Safe Mode - Use this if Default (1) doesn't work and you cannot see anything
 +
# Composite PAL Mode - Use this or 4. if you are using the yellow and black outputs on the opposite side to the HDMI output
 +
# Composite NTSC Mode
 +
 
 +
== Flashing the SD Card using Windows ==
 +
 
 +
=== Using the Win32DiskImager program ===
 +
 
 +
# Download the distribution from the [http://www.raspberrypi.org/downloads raspberrypi.org downloads page] or from a mirror or torrent. Make sure the distribution is for the Raspberry Pi, as others will not work. Usually these are zipped (compressed) files ending in .zip or .gz (something like "distribution-name.zip").
 +
# Extract the image file from the downloaded .zip file, so you now have "distribution-name.img".
 +
# 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. You can use the SD Card slot (if you have one) or a cheap Adapter in a USB slot.
 +
# Download the [http://sourceforge.net/projects/win32diskimager Win32DiskImager] utility (it is also a zip file). You can run this from a USB drive. [[File:Win32DiskImager.png‎|300px|right|frameless|Win32DiskImager screen]]
 +
# Extract the executable from the zip file and run the Win32DiskImager utility; you may need to run the utility as Administrator! Right-click on the file, and select 'Run as Administrator'
 +
# Select the image file you extracted above.
 +
# 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 data on the computer's hard disk!''' If you are using an SD Card slot in your computer (if you have one) and can't see the drive in the Win32DiskImager window, try using a cheap Adapter in a USB slot.
 
# Click Write and wait for the write to complete.
 
# Click Write and wait for the write to complete.
 
# Exit the imager and eject the SD card.
 
# Exit the imager and eject the SD card.
# Insert the card in the Raspberry Pi, power it on, and it should boot up. There is an option in the raspi-config script that comes up to automatically expand the partitions to use all of the SD card if you have used one larger than 4 GB
+
# You are now ready to plug the card into your Raspberry Pi. See [[RPi_Hardware_Basic_Setup]] for the other things you need.
''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 Raspberry Pi uses and is not visible in Windows. If you are about to manually resize this Linux partition you should read [[RPi Resize Flash Partitions|this]] page as well.''
+
''In Windows, the SD card will appear only to have a fairly small size once written - about 55 to 75 MB. This is because most of the card has a partition that is formatted for the Linux operating system that the Raspberry Pi uses which is not visible in Windows. If you don't see this small directory with files such as kernel.img then the copy may not have worked correctly.
  
==Copying the image to an SD card on Windows if first option isn't successful==
+
=== Using flashnul (if Win32DiskImager 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 a Windows machine..
+
You may not be able to choose the device in Win32DiskImager on some notebooks so this is a different way to achieve the same thing on a Windows machine.
  
# Download the image from a mirror or torrent
+
* Download the distribution from the [http://www.raspberrypi.org/downloads | raspberrypi.org downloads page] or from a mirror or torrent. Make sure the distribution is for the Raspberry Pi, as others will not work. Usually these are zipped (compressed) files ending in .zip or .gz (something like "distribution-name.zip").
#* http://www.raspberrypi.org/downloads
+
* Extract the image file from the downloaded .zip file, so you now have "distribution-name.img".
# Extract the image file 2012-10-28-wheezy-raspbian.img from 2012-10-28-wheezy-raspbian.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. You can use an SD Card slot in your computer (if you have one) or a cheap Adapter in a USB slot.
# 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 H:) by looking in the left column of Windows Explorer.
+
* Download the flashnul software from http://shounen.ru/soft/flashnul/index.html ; here is the English [http://translate.google.com/translate?hl=en&sl=ru&tl=en&u=http%3A%2F%2Fshounen.ru%2Fsoft%2Fflashnul%2Findex.html Translated version] with a link to instructions (also translated)
# Download flashnul software from http://shounen.ru/soft/flashnul/ here is [http://translate.google.com/translate?u=http%3A%2F%2Fshounen.ru%2Fsoft%2Fflashnul%2F&hl=en&ie=UTF8&sl=ru&tl=en Translated version]
+
* Download the latest version. At the time of writing it was flashnul-1rc1.  
#* Download the latest version. At the time of writing it was flashnul-1rc1.  
+
* Extract the application from the archive.  
#* Extract the application from the archive.  
+
* Click Start button > All Programs > Accessories > Command Prompt, right click on it and Run as Administrator.
#* Click Start button > All Programs > Accessories > Command Prompt, right click on it and Run as Administrator.
+
* Run flashnul with argument "-p":
#* Run flashnul with argument "-p":
+
 
  C:/flashnul/flashnul.exe -p
 
  C:/flashnul/flashnul.exe -p
#* Flashnul will tell you something like:
+
* Flashnul will tell you something like this (it should be different, as it depends on the drives on your machine):
 
+
 
  Available physical drives:
 
  Available physical drives:
 
  0      size = 250059350016 (232 Gb)
 
  0      size = 250059350016 (232 Gb)
Line 65: Line 106:
 
  C:\
 
  C:\
 
  D:\
 
  D:\
 +
E:\
 
  F:\
 
  F:\
G:\
 
H:\
 
 
   
 
   
 
  Press ENTER to exit.
 
  Press ENTER to exit.
+
* Use the Load option of flashnul to put the image file on the SD Card. '''Make sure that you use the correct drive letter for the SD Card as that drive will be overwritten!'''
'''SDCARD number is on left! In my case it is number 1'''
+
  C:/flashnul/flashnul.exe E: -L C:/temp/distribution-name.img
+
Where C:/flashnul/flashnul.exe is the location of the flashnul program; E: is the drive you want to overwrite, and C:/temp/distribution-name.img is the location of the .img file.
#* Now we will use the Load argument:
+
* Flashnul will give you a device summary and a caution message. Check the information to make sure you have selected the correct device, then type yes and press enter.
  C:/flashnul/flashnul.exe 1 -L C:/2012-10-28-wheezy-raspbian.img
+
* If you get an access denied error, make sure to close all explorer windows or folders open for the device, then try re-plugging the SD card.
where '''<Path to flashnul directory>'''flashnul.exe '''<device number>''' -L '''<img file path>'''
+
 
+
=== Using the Fedora Remix Installer ===
#* Flashnul will give you a device summary and proceed caution, have a quick scan through the information to make sure you have selected the correct device, then type yes and press enter.
+
Download the installer program from [http://zenit.senecac.on.ca/wiki/index.php/Raspberry_Pi_Fedora_Remix_Installation#SD_Card_Installation_Using_the_Installer Fedora ARM Installer]. This will download and install the Raspberry Pi Fedora Remix images, but it will also install other images if they are already downloaded and in uncompressed or .gz format. This also works with Linux.
#* If you get a access denied error, try re-plugging the SD card. Also make sure to close all explorer windows or folders open for the device.
+
 
#* If you still get a access denied error, try substitute the device number with the drive letter followed by a colon. Eg:
+
== Flashing the SD card using Mac OSX ==
C:/flashnul/flashnul.exe H: -L C:/debian6/debian6-19-04-2012.img
+
'''Note:''' In OS X each disk may have two path references in /dev:
* If the device summary does not match Your card (the size is smaller, for example, 75&nbsp;MB), but you are sure, that the letter is correct - please continue and then try again with the device number.
+
* /dev/disk# is a buffered device, which means any data being sent undergoes extra processing.
 +
* /dev/'''r'''disk# is a ''raw'' path, which is much faster, and perfectly OK when using the dd program.
 +
On a Class 4 SD card the difference was around 20 times faster using the rdisk path.  
 +
 
 +
=== Run an App (Only with graphical interface) ===
 +
 
 +
'''RPi-sd card builder'''
 +
The [http://alltheware.wordpress.com/2012/12/11/easiest-way-sd-card-setup/  RPi-sd card builder] utility is a app which will walk you through the process of installing to SD card. Note: This is a closed source app which requires your root password.
 +
 
 +
 
 +
'''ApplePi-Baker'''
 +
[[File:ApplePi-Baker.png‎|300px|right|frameless|ApplePi-Baker Window]][http://www.tweaking4all.com/hardware/raspberry-pi/macosx-apple-pi-baker/ ApplePi-Baker] is a free utility that allows you to create a NOOBS SD, write an IMG file to SD card, or backup an SD card to IMG, with only a few simple clicks. This is also a closed source application and also requires your root password to write to SD cards. The application is written in Lazarus Pascal and supports Retina.
 +
 
 +
 
 +
'''PiWriter'''
 +
 
 +
[http://sourceforge.net/projects/piwriter/  PiWriter] is a simple wizard made using shell scripts, PlatyPus and CocoaDialog. To prevent users from making mistakes the wizard auto-detect's the SD card you plan to use and prevents you from selecting your system disk. Also there is no need for a root password so even less damage can be done. The nextgen PiWriter2 introduces a new 'drag and drop' approach and also includes a backup feature. PiWriter 1.0.4 does not work on Mac OS X Mavericks.
 +
 
 +
* [http://sourceforge.net/projects/piwriter/  Get PiWriter 1.0.4]
 +
* [http://sourceforge.net/projects/piwriter/files/PiWriter-2.x Get PiWriter2]
 +
 
 +
* [http://vimeo.com/62083666 Watch the 1.x quick review video]
 +
* [http://www.youtube.com/watch?v=PIvNxprbDhQ Watch full OSX HOWTO video using PiWriter 1.x] By: [http://www.youtube.com/user/brucefulton?feature=watch Bruce Fulton]
 +
 
 +
 
 +
 
  
==Copying an image to the SD card in Mac&nbsp;OS&nbsp;X (Only with graphical interface)==
+
'''Pi Filler'''
The [http://alltheware.wordpress.com/2012/12/11/easiest-way-sd-card-setup/  RPi-sd card builder] utility is a app which will walk you through the process of installing to SD card.
+
* [http://ivanx.com/raspberrypi Pi Filler] is a GUI wizard for copying a Raspberry Pi operating system image file to an SD card without needing Terminal. It automatically identfies your SD card (and asks for confirmation so the wrong disk doesn't get written to), and shows estimated time remaining during the copy.  After it's done, if your Pi is not connected to a display, you can use [http://ivanx.com/raspberrypi Pi Finder] to connect to it from Terminal. Both utilities are written in AppleScript and won't trigger Mountain Lion's "unidentified developer" warnings (WTFPL license).
  
==Copying an image to the SD card in Mac&nbsp;OS&nbsp;X (mostly graphical interface)==
+
=== Using system tools (mostly graphical interface) ===
 
# Download the image from a mirror or torrent
 
# Download the image from a mirror or torrent
 
#* http://www.raspberrypi.org/downloads
 
#* http://www.raspberrypi.org/downloads
Line 93: Line 158:
 
# From the ''Apple () menu'', choose ''About This Mac'', then click on ''More info...''; if you are using Mac&nbsp;OS&nbsp;X 10.8.x Mountain Lion then click on ''System report''.
 
# From the ''Apple () menu'', choose ''About This Mac'', then click on ''More info...''; if you are using Mac&nbsp;OS&nbsp;X 10.8.x Mountain Lion then click on ''System report''.
 
# Click on ''USB'' (or ''Card Reader'' if using an in-built SD card reader) then search for your SD card in the upper right section of the window; click it, then search for ''BSD name'' in the lower right section: must be something like '''disk'''''n'' where ''n'' is a number (for example, disk4). Note this number
 
# Click on ''USB'' (or ''Card Reader'' if using an in-built SD card reader) then search for your SD card in the upper right section of the window; click it, then search for ''BSD name'' in the lower right section: must be something like '''disk'''''n'' where ''n'' is a number (for example, disk4). Note this number
# Unmount the partition so that you will be allowed to overwrite the disk by opening Disk Utility and unmounting it (do not eject it, or you have to reconnect it)
+
# Unmount the partition so that you will be allowed to overwrite the disk by opening Disk Utility and unmounting it (do not eject it, or you have to reconnect it). Note: On Mac&nbsp;OS&nbsp;X 10.8.x Mountain Lion, "Verify Disk" (before unmounting) will display the BSD name as "''/dev/disk1s1"'' (or similar), allowing you to skip the previous two steps.
 
# From the Terminal run:
 
# From the Terminal run:
 
#* '''sudo dd if=''path_of_your_image.img'' of=/dev/disk''n'' bs=1m'''
 
#* '''sudo dd if=''path_of_your_image.img'' of=/dev/disk''n'' bs=1m'''
 
#* Remember to replace ''n'' with the number that you noted before!
 
#* Remember to replace ''n'' with the number that you noted before!
# Wait a LONG time!
+
# Wait a LONG time! ''(or see the note above about using /dev/rdisk#...)'' To see the current status, send <code>SIGINFO</code> signal by pressing <code>Ctrl+T</code>.
 
# You're done! Insert it in the Raspberry Pi, and have fun
 
# You're done! Insert it in the Raspberry Pi, and have fun
  
==Copying an image to the SD card in Mac&nbsp;OS&nbsp;X (command line)==
+
=== Using command line tools (1) ===
 +
* If you are comfortable with the command line, you can image a card without any additional software. Run:
 +
** diskutil list
 +
*** identify the disk (not partition) of your SD card. e.g. disk4 (not disk4s1)
 +
** diskutil unmountDisk /dev/<disk# from diskutil>
 +
*** e.g. diskutil unmountDisk /dev/disk4
 +
** sudo dd bs=1m if=<your image file>.img of=/dev/<disk# from diskutil>
 +
*** e.g. sudo dd bs=1m if=2012-12-16-wheezy-raspbian.img of=/dev/disk4
 +
*** (This will take a few minutes)
  
 +
=== Using command line tools (2) ===
 
'''Note''': Some users have [http://www.raspberrypi.org/phpBB3/search.php?keywords=extra+files&t=8226&sf=msgonly reported issues] with using Mac&nbsp;OS&nbsp;X to create SD cards.   
 
'''Note''': Some users have [http://www.raspberrypi.org/phpBB3/search.php?keywords=extra+files&t=8226&sf=msgonly reported issues] with using Mac&nbsp;OS&nbsp;X to create SD cards.   
 
#These commands and actions need to be performed from an account that has administrator privileges.
 
#These commands and actions need to be performed from an account that has administrator privileges.
Line 107: Line 181:
 
#* http://www.raspberrypi.org/downloads
 
#* http://www.raspberrypi.org/downloads
 
# Verify if the the hash key is the same (optional), in the terminal run:  
 
# Verify if the the hash key is the same (optional), in the terminal run:  
#* '''shasum ~/Downloads/2012-10-28-wheezy-raspbian.zip'''
+
#* '''shasum ~/Downloads/2012-12-16-wheezy-raspbian.zip'''
 
# Extract the image:
 
# Extract the image:
#* '''unzip ~/Downloads/2012-10-28-wheezy-raspbian.zip'''
+
#* '''unzip ~/Downloads/2012-12-16-wheezy-raspbian.zip'''
 
#* ''(or: just double click the zip, it will extract automatically)''
 
#* ''(or: just double click the zip, it will extract automatically)''
 
# From the terminal run '''df -h'''
 
# From the terminal run '''df -h'''
Line 120: Line 194:
 
#* For example, '''/dev/disk3s1''' => '''/dev/rdisk3'''
 
#* For example, '''/dev/disk3s1''' => '''/dev/rdisk3'''
 
# In the terminal write the image to the card with this command, using the raw disk device name from above (read '''carefully''' the above step, to be sure you use the correct rdisk# here!):
 
# In the terminal write the image to the card with this command, using the raw disk device name from above (read '''carefully''' the above step, to be sure you use the correct rdisk# here!):
#* '''sudo dd bs=1m if=~/Downloads/2012-10-28-wheezy-raspbian/2012-10-28-wheezy-raspbian.img of=/dev/rdisk3'''
+
#* '''sudo dd bs=1m if=~/Downloads/2012-10-28-wheezy-raspbian/2012-12-16-wheezy-raspbian.img of=/dev/rdisk3'''
 
#* if the above command report an error(dd: bs: illegal numeric value), please change bs=1M to bs=1m
 
#* if the above command report an error(dd: bs: illegal numeric value), please change bs=1M to bs=1m
 
#* (note that dd will not feedback any information until there is an error or it is finished, information will show and disk will re-mount when complete. However if you are curious as to the progresss - ctrl-T (SIGINFO, the status argument of your tty) will display some en-route statistics).
 
#* (note that dd will not feedback any information until there is an error or it is finished, information will show and disk will re-mount when complete. However if you are curious as to the progresss - ctrl-T (SIGINFO, the status argument of your tty) will display some en-route statistics).
Line 128: Line 202:
 
# Insert it in the Raspberry Pi, and have fun
 
# Insert it in the Raspberry Pi, and have fun
  
==Copying an image to the SD card in Linux (command line)==
+
* ('''Mac''') The [https://github.com/exaviorn/RasPiWrite 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.
 +
 
 +
== Flashing the SD Card using Linux (including on a Pi!) ==
 +
 
 +
=== Using ImageWriter (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.
 +
 
 +
# Download the zip file containing the image from a mirror or torrent
 +
#* http://www.raspberrypi.org/downloads
 +
# Right click the zip file and select "Extract here"
 +
#* '''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 2012-10-28-wheezy-raspbian.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
 +
 
 +
=== Using the 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.
 
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.
Line 135: Line 228:
 
#* http://www.raspberrypi.org/downloads
 
#* http://www.raspberrypi.org/downloads
 
# 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:  
 
# 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 ~/2012-10-28-wheezy-raspbian.zip'''
+
#* '''sha1sum ~/2012-12-16-wheezy-raspbian.zip'''
 
#* This will print out a long hex number which should match the "SHA-1" line for the SD image you have downloaded
 
#* 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
 
# Extract the image, with
#* '''unzip ~/2012-10-28-wheezy-raspbian.zip'''
+
#* '''unzip ~/2012-12-16-wheezy-raspbian.zip'''
 
# Run '''df -h''' to see what devices are currently mounted
 
# Run '''df -h''' to see what devices are currently mounted
 
# If your computer has a slot for SD cards, insert the card. If not, insert the card into an SD card reader, then connect the reader to your computer.
 
# If your computer has a slot for SD cards, insert the card. If not, insert the card into an SD card reader, then connect the reader to your computer.
Line 146: Line 239:
 
#* 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.
 
#* 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''' lose 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)
 
# 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''' lose 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=4M if=~/2012-10-28-wheezy-raspbian.img of=/dev/sdd'''
+
#* '''dd bs=4M if=~/2012-12-16-wheezy-raspbian.img of=/dev/sdd'''
 
#** Please note that block size set to 4M will work most of the time, if not, please try 1M, although 1M will take considerably longer.
 
#** Please note that block size set to 4M will work most of the time, if not, please try 1M, although 1M will take considerably longer.
 
#* Note that if you are not logged in as root you will need to prefix this with '''sudo '''
 
#* 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. It could take more than five minutes to finish writing to the card. If your card reader has an LED it may blink during the write process. To forcibly stop the copy operation you can run '''pkill -USR1 -n -x dd''' in another terminal (prefixed with '''sudo''' if you are not logged in as root).
+
#* The dd command does not give any information of its progress and so may appear to have frozen. It could take more than five minutes to finish writing to the card. If your card reader has an LED it may blink during the write process. To see the progress of the copy operation you can run '''pkill -USR1 -n -x dd''' in another terminal (prefixed with '''sudo''' if you are not logged in as root). The progress will be displayed (perhaps not immediately, due to buffering) in the original window, not the window with the '''pkill''' command.
 
# Instead of dd you can use dcfldd; it will give a progress report about how much has been written.
 
# Instead of dd you can use dcfldd; it will give a progress report about how much has been written.
 
# You can check what's written to the SD card by dd-ing from the card back to your harddisk to another image, and then running diff (or md5sum) on those two images. There should be no difference.
 
# You can check what's written to the SD card by dd-ing from the card back to your harddisk to another image, and then running diff (or md5sum) on those two images. There should be no difference.
Line 155: Line 248:
 
# Remove SD card from card reader, insert it in the Raspberry Pi, and have fun
 
# 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)==
+
== Using any system and BerryBoot ==
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.
+
  
# Download the zip file containing the image from a mirror or torrent
+
If your Pi is connected to the '''Internet''', you can use the [http://www.berryterminal.com/doku.php/berryboot BerryBoot installer] to let it download and install the operating system. This requires that you first use a normal Windows/Mac/Linux computer to download a small .zip file with the Berryboot system files and extract it to an empty SD card. Then you put the SD card in your Pi, and follow the on-screen prompts to complete the installation. An additional advantage is that Berryboot allows you to install more than one operating system on a single SD card. Also, it is not necessary to install any additional software on your normal Windows/Mac/Linux computer.
#* http://www.raspberrypi.org/downloads
+
 
# Right click the zip file and select "Extract here"
+
= Other points =
#* '''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
+
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 [http://en.wikipedia.org/wiki/BitTorrent_(protocol) 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).
# Install the ImageWriter tool from the Ubuntu Software Center
+
# Launch the ImageWriter tool (it needs your administrative password)
+
# Select the image file (example 2012-10-28-wheezy-raspbian.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)=
+
= Manually resizing the SD card partitions (Optional) =
The SD card image is sized for a 2&nbsp;GB card. So, if you are using an SD card with a greater capacity, you may find that only 2&nbsp;GB is available. If this is the case, then to gain more free space, the partitions must be resized.  The Fedora Remix and the BerryBoot will automatically resize the partitions on the mounted card during the first boot. The Debian and Rasbian images won't, so you'll have to do it manually. The easiest way is to use the tool [[RPi raspi-config]] selecting menu item EXPAND-ROOTFS - Expand Root Partition to Fill SD Card. If you want to resize the SD card whilst the SD card is not mounted in the Pi, look [[RPi_Resize_Flash_Partitions|here]] for instructions.
+
The SD card image is sized for a 2&nbsp;GB card. So, if you are using an SD card with a greater capacity, you may find that only 2&nbsp;GB is available. If this is the case, then to gain more free space, the partitions must be resized.  The Fedora Remix and the BerryBoot will automatically resize the partitions on the mounted card during the first boot. The Debian , OpenSuSe and Rasbian images won't, so you'll have to do it manually. The easiest way is to use the tool [[RPi raspi-config]] selecting menu item EXPAND-ROOTFS - Expand Root Partition to Fill SD Card. If you want to resize the SD card whilst the SD card is not mounted in the Pi, look [[RPi_Resize_Flash_Partitions|here]] for instructions.
  
=Adding a data partition (Optional)=
+
= Adding a data partition (Optional) =
 
If you would rather not resize the partition on another machine as described above, either because you do not have another working Linux machine or you wish to keep your data on another partition to your operating system, you can instead create a new data partition and have that mount automatically at boot.
 
If you would rather not resize the partition on another machine as described above, either because you do not have another working Linux machine or you wish to keep your data on another partition to your operating system, you can instead create a new data partition and have that mount automatically at boot.
  
Line 179: Line 265:
 
  sudo su -
 
  sudo su -
 
  apt-get install parted
 
  apt-get install parted
*Then you need to run parted on your SD card, mine is /dev/mmcblk0, ymmv:
+
*Then you need to run parted on your SD card, mine is /dev/mmcblk0, [http://en.wiktionary.org/wiki/your_mileage_may_vary ymmv]:
 
  parted /dev/mmcblk0
 
  parted /dev/mmcblk0
*Once running, set the display units to something usable and then print your partition table
+
*Once running, set the display units to something usable and then print your partition table:
 
  unit chs
 
  unit chs
 
  print
 
  print
Line 221: Line 307:
 
=References=  
 
=References=  
 
<references/>
 
<references/>
 +
 +
== SD(DC|DX] Card Class 6 & 10 Hints ==
 +
 +
[[http://elinux.org/index.php?title=RPiconfig&section=14|SD card usage Hints with OverClocking ]]
  
 
{{Template:Raspberry Pi}}
 
{{Template:Raspberry Pi}}
 
[[Category:RaspberryPi]]
 
[[Category:RaspberryPi]]

Latest revision as of 16:59, 2 March 2014


RaspPi.png Back to the Hub


Getting Started:

Buying Guide - for advice on buying the Raspberry Pi.

SD Card Setup - for information on how to prepare the SD Card used to boot your Raspberry Pi.

Basic Setup - for help with buying / selecting other hardware and setting it up.

Beginners Guide - you are up and running, now what can you do?

Advanced Setup - for more extensive information on setting up.

Trouble Shooting - some things to check if things don't work as expected.

SD card setup

The Raspberry Pi will not start without a properly formatted SD Card, containing the bootloader and a suitable operating system. Many problems with booting the Pi are a result of an improperly formatted or corrupted card. Make sure that you insert the card before powering on the Pi, and that you shutdown the Pi before unplugging the card. If you do have problems booting the Pi, see the trouble shooting page first.

You will also need to choose a distribution. Available distributions are shown here; you will need the RPi bootloader to launch your distribution, so you need one for the Raspberry Pi and cannot download a PC based distribution and use that. Note that you can have several SD Cards with a separate distribution on each, then power off, swap cards and restart the Pi to use that card.

Some Raspberry Pi kits will come with a ready-to-go card with the distribution pre-installed, or these can be bought separately. There is more on this below.

If you don't have a pre-installed card you will need to prepare your own. Make sure you get a reasonable quality card rather than a cheap one. Check the SD Card list if you are not sure. Warning! When you write the Raspberry Pi image to your SD card you will lose all data that was on the card. Official images are available from http://www.raspberrypi.org/downloads.

Note: It is highly recommended that you start with the latest official NOOBS installer: check the Raspberry Pi official website (http://www.raspberrypi.org/downloads) for the current version. This makes the process of installing an operating system as easy as copying a few files in a zip archive to your SD card. This contains the reccomended Raspbian distribution, as well as various other distributions, all of which are available as individual images from the downloads page, if you prefer not to use NOOBS.

Safe / Easy way

Buying a preloaded SD card from a reputable supplier means that you can just plug it in and power up your Raspberry Pi; it should then just work. If you don't buy one of these, you will have to create your own using the instructions below

You may need to perform an upgrade of the card once you have got the Pi working, as a distribution (usually) is continuously updated and the card may not contain those updates

Compare these for prices, delivery, distribution and card size/class:

  • RS Components
  • Element14 (Farnell)

Public Service Announcement on SD Cards. There have been reports of problems with SD cards purchased from ebay and Amazon. Make sure the SD card you're purchasing is up to date with the latest version of your chosen operating System to avoid any issues.

Create your own

To create your own SD Card for the Raspberry Pi you will need access to another machine, or a friend with one. You will need to be careful, as you could corrupt the disk on that machine if you do things wrong (although it is not hard to do it right, and NOOBS makes it impossible to go wrong). If you are lucky, you might find a local Raspberry Pi or Linux group who will offer to load your card for you.

You will also need to choose and download a distribution (mentioned above), or use NOOBS, which has all the . Check the Distributions list to make sure that you are getting a distribution that will work with the Pi. Note that the distribution must be written to the card using the methods below; the standard file copy method will not work

Using NOOBS

Recently, the Raspberry Pi Foundation have released a really easy way to set up your SD Card. It's called the New Out Of Box Software (or NOOBS for short) and provides a really easy way to install Raspberry Pi distributions. Be warned, however, that it is a 1GB download - if you have a limit on what you are allowed to download, follow the instructions below, as the other images are around 500MB.

  1. Download NOOBS from the raspberrypi.org downloads page
  2. Insert a (4GB+) SD Card into your computer
    • If you want to save space on the SD Card, you can delete some of the images inside the os folder in the NOOBS zip file that you don't want to use.
  3. Format the disk
    • Windows
    1. Download and install the SD Association's Formatting tool from https://www.sdcard.org/downloads/formatter_4/eula_windows/
    2. Open the Application you have just installed
    3. Set "FORMAT SIZE ADJUSTMENT" to ON in the Options menu.
    4. Make sure you have selected the Drive your SD Card is inserted in
    5. Click "Format"
    • Mac
    1. Download and install the SD Association's Formatting tools from https://www.sdcard.org/downloads/formatter_4/eula_mac/
    2. Select "Overwrite format"
    3. Make sure you have selected your SD Card, and not something else
    4. Click "Format"
    • Linux
    1. Use gparted (or the command-line version parted if you prefer), if you don't have it, install it as you usually would.
    2. Format the entire disk as FAT32 (FAT16 will not work! Make sure you select the correct disk!)
  4. Extract the file you downloaded in Step 1
  5. Copy the files you just extracted to your SD Card (see below on flashing your SD card)

Not all monitors work with NOOBS straight away. If your monitor is one of those that doesn't work, press the Number buttons 1-4 until you see what you want.

  1. Default HDMI Mode
  2. HDMI Safe Mode - Use this if Default (1) doesn't work and you cannot see anything
  3. Composite PAL Mode - Use this or 4. if you are using the yellow and black outputs on the opposite side to the HDMI output
  4. Composite NTSC Mode

Flashing the SD Card using Windows

Using the Win32DiskImager program

  1. Download the distribution from the raspberrypi.org downloads page or from a mirror or torrent. Make sure the distribution is for the Raspberry Pi, as others will not work. Usually these are zipped (compressed) files ending in .zip or .gz (something like "distribution-name.zip").
  2. Extract the image file from the downloaded .zip file, so you now have "distribution-name.img".
  3. 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. You can use the SD Card slot (if you have one) or a cheap Adapter in a USB slot.
  4. Download the Win32DiskImager utility (it is also a zip file). You can run this from a USB drive.
    Win32DiskImager screen
  5. Extract the executable from the zip file and run the Win32DiskImager utility; you may need to run the utility as Administrator! Right-click on the file, and select 'Run as Administrator'
  6. Select the image file you extracted above.
  7. 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 data on the computer's hard disk! If you are using an SD Card slot in your computer (if you have one) and can't see the drive in the Win32DiskImager window, try using a cheap Adapter in a USB slot.
  8. Click Write and wait for the write to complete.
  9. Exit the imager and eject the SD card.
  10. You are now ready to plug the card into your Raspberry Pi. See RPi_Hardware_Basic_Setup for the other things you need.

In Windows, the SD card will appear only to have a fairly small size once written - about 55 to 75 MB. This is because most of the card has a partition that is formatted for the Linux operating system that the Raspberry Pi uses which is not visible in Windows. If you don't see this small directory with files such as kernel.img then the copy may not have worked correctly.

Using flashnul (if Win32DiskImager isn't successful)

You may not be able to choose the device in Win32DiskImager on some notebooks so this is a different way to achieve the same thing on a Windows machine.

  • Download the distribution from the | raspberrypi.org downloads page or from a mirror or torrent. Make sure the distribution is for the Raspberry Pi, as others will not work. Usually these are zipped (compressed) files ending in .zip or .gz (something like "distribution-name.zip").
  • Extract the image file from the downloaded .zip file, so you now have "distribution-name.img".
  • 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. You can use an SD Card slot in your computer (if you have one) or a cheap Adapter in a USB slot.
  • Download the flashnul software from http://shounen.ru/soft/flashnul/index.html ; here is the English Translated version with a link to instructions (also translated)
  • Download the latest version. At the time of writing it was flashnul-1rc1.
  • Extract the application from the archive.
  • Click Start button > All Programs > Accessories > Command Prompt, right click on it and Run as Administrator.
  • Run flashnul with argument "-p":
C:/flashnul/flashnul.exe -p
  • Flashnul will tell you something like this (it should be different, as it depends on the drives on your machine):
Available physical drives:
0       size = 250059350016 (232 Gb)
1       size = 1990197248 (1898 Mb)

Available logical disks:
C:\
D:\
E:\
F:\

Press ENTER to exit.
  • Use the Load option of flashnul to put the image file on the SD Card. Make sure that you use the correct drive letter for the SD Card as that drive will be overwritten!
C:/flashnul/flashnul.exe E: -L C:/temp/distribution-name.img

Where C:/flashnul/flashnul.exe is the location of the flashnul program; E: is the drive you want to overwrite, and C:/temp/distribution-name.img is the location of the .img file.

  • Flashnul will give you a device summary and a caution message. Check the information to make sure you have selected the correct device, then type yes and press enter.
  • If you get an access denied error, make sure to close all explorer windows or folders open for the device, then try re-plugging the SD card.

Using the Fedora Remix Installer

Download the installer program from Fedora ARM Installer. This will download and install the Raspberry Pi Fedora Remix images, but it will also install other images if they are already downloaded and in uncompressed or .gz format. This also works with Linux.

Flashing the SD card using Mac OSX

Note: In OS X each disk may have two path references in /dev:

  • /dev/disk# is a buffered device, which means any data being sent undergoes extra processing.
  • /dev/rdisk# is a raw path, which is much faster, and perfectly OK when using the dd program.

On a Class 4 SD card the difference was around 20 times faster using the rdisk path.

Run an App (Only with graphical interface)

RPi-sd card builder The RPi-sd card builder utility is a app which will walk you through the process of installing to SD card. Note: This is a closed source app which requires your root password.


ApplePi-Baker

ApplePi-Baker Window
ApplePi-Baker is a free utility that allows you to create a NOOBS SD, write an IMG file to SD card, or backup an SD card to IMG, with only a few simple clicks. This is also a closed source application and also requires your root password to write to SD cards. The application is written in Lazarus Pascal and supports Retina.


PiWriter

PiWriter is a simple wizard made using shell scripts, PlatyPus and CocoaDialog. To prevent users from making mistakes the wizard auto-detect's the SD card you plan to use and prevents you from selecting your system disk. Also there is no need for a root password so even less damage can be done. The nextgen PiWriter2 introduces a new 'drag and drop' approach and also includes a backup feature. PiWriter 1.0.4 does not work on Mac OS X Mavericks.



Pi Filler

  • Pi Filler is a GUI wizard for copying a Raspberry Pi operating system image file to an SD card without needing Terminal. It automatically identfies your SD card (and asks for confirmation so the wrong disk doesn't get written to), and shows estimated time remaining during the copy. After it's done, if your Pi is not connected to a display, you can use Pi Finder to connect to it from Terminal. Both utilities are written in AppleScript and won't trigger Mountain Lion's "unidentified developer" warnings (WTFPL license).

Using system tools (mostly graphical interface)

  1. Download the image from a mirror or torrent
  2. Extract the image by double clicking on the download file
  3. Connect the SD card reader with the SD card inside; note: must be formatted in FAT32!
  4. From the Apple () menu, choose About This Mac, then click on More info...; if you are using Mac OS X 10.8.x Mountain Lion then click on System report.
  5. Click on USB (or Card Reader if using an in-built SD card reader) then search for your SD card in the upper right section of the window; click it, then search for BSD name in the lower right section: must be something like diskn where n is a number (for example, disk4). Note this number
  6. Unmount the partition so that you will be allowed to overwrite the disk by opening Disk Utility and unmounting it (do not eject it, or you have to reconnect it). Note: On Mac OS X 10.8.x Mountain Lion, "Verify Disk" (before unmounting) will display the BSD name as "/dev/disk1s1" (or similar), allowing you to skip the previous two steps.
  7. From the Terminal run:
    • sudo dd if=path_of_your_image.img of=/dev/diskn bs=1m
    • Remember to replace n with the number that you noted before!
  8. Wait a LONG time! (or see the note above about using /dev/rdisk#...) To see the current status, send SIGINFO signal by pressing Ctrl+T.
  9. You're done! Insert it in the Raspberry Pi, and have fun

Using command line tools (1)

  • If you are comfortable with the command line, you can image a card without any additional software. Run:
    • diskutil list
      • identify the disk (not partition) of your SD card. e.g. disk4 (not disk4s1)
    • diskutil unmountDisk /dev/<disk# from diskutil>
      • e.g. diskutil unmountDisk /dev/disk4
    • sudo dd bs=1m if=<your image file>.img of=/dev/<disk# from diskutil>
      • e.g. sudo dd bs=1m if=2012-12-16-wheezy-raspbian.img of=/dev/disk4
      • (This will take a few minutes)

Using command line tools (2)

Note: Some users have reported issues with using Mac OS X to create SD cards.

  1. These commands and actions need to be performed from an account that has administrator privileges.
  2. Download the image from a mirror or torrent
  3. Verify if the the hash key is the same (optional), in the terminal run:
    • shasum ~/Downloads/2012-12-16-wheezy-raspbian.zip
  4. Extract the image:
    • unzip ~/Downloads/2012-12-16-wheezy-raspbian.zip
    • (or: just double click the zip, it will extract automatically)
  5. From the terminal run df -h
  6. Connect the SD card reader with the SD card inside
  7. Run df -h again and look for the new device that wasn't listed last time. Record the device name of the filesystem's partition, for example, /dev/disk3s1
  8. Unmount the partition so that you will be allowed to overwrite the disk:
    • sudo diskutil unmount /dev/disk3s1
    • (or: open Disk Utility and unmount the partition of the SD card (do not eject it, or you have to reconnect it)
  9. Using the device name of the partition work out the raw device name for the entire disk, by omitting the final "s1" and replacing "disk" with "rdisk" (this is very important: you will lose 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, rdisk3, not rdisk3s1. Similarly you might have another SD drive name/number like rdisk2 or rdisk4, etc. -- recheck by using the df -h command both before & after you insert your SD card reader into your Mac if you have any doubts!):
    • For example, /dev/disk3s1 => /dev/rdisk3
  10. In the terminal write the image to the card with this command, using the raw disk device name from above (read carefully the above step, to be sure you use the correct rdisk# here!):
    • sudo dd bs=1m if=~/Downloads/2012-10-28-wheezy-raspbian/2012-12-16-wheezy-raspbian.img of=/dev/rdisk3
    • if the above command report an error(dd: bs: illegal numeric value), please change bs=1M to bs=1m
    • (note that dd will not feedback any information until there is an error or it is finished, information will show and disk will re-mount when complete. However if you are curious as to the progresss - ctrl-T (SIGINFO, the status argument of your tty) will display some en-route statistics).
  11. After the dd command finishes, eject the card:
    • sudo diskutil eject /dev/rdisk3
    • (or: open Disk Utility and eject the SD card)
  12. Insert it in the Raspberry Pi, and have fun
  • (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.

Flashing the SD Card using Linux (including on a Pi!)

Using ImageWriter (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.

  1. Download the zip file containing the image from a mirror or torrent
  2. Right click the zip file and select "Extract here"
    • 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.
  3. Insert the SD card into your computer or connect the SD card reader with the SD card inside
  4. Install the ImageWriter tool from the Ubuntu Software Center
  5. Launch the ImageWriter tool (it needs your administrative password)
  6. Select the image file (example 2012-10-28-wheezy-raspbian.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)
  7. Select the target device to write the image to (your device will be something like "/dev/mmcblk0" or "/dev/sdc")
  8. Click the "Write to device" button
  9. Wait for the process to finish and then insert the SD card in the Raspberry Pi

Using the 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.

  1. Download the zip file containing the image from a mirror or torrent
  2. 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 ~/2012-12-16-wheezy-raspbian.zip
    • This will print out a long hex number which should match the "SHA-1" line for the SD image you have downloaded
  3. Extract the image, with
    • unzip ~/2012-12-16-wheezy-raspbian.zip
  4. Run df -h to see what devices are currently mounted
  5. If your computer has a slot for SD cards, insert the card. If not, insert the card into an SD card reader, then connect the reader to your computer.
  6. 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 Raspberry Pi SD images have more than one partition.
  7. 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.
  8. 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 lose 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=4M if=~/2012-12-16-wheezy-raspbian.img of=/dev/sdd
      • Please note that block size set to 4M will work most of the time, if not, please try 1M, although 1M will take considerably longer.
    • 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. It could take more than five minutes to finish writing to the card. If your card reader has an LED it may blink during the write process. To see the progress of the copy operation you can run pkill -USR1 -n -x dd in another terminal (prefixed with sudo if you are not logged in as root). The progress will be displayed (perhaps not immediately, due to buffering) in the original window, not the window with the pkill command.
  9. Instead of dd you can use dcfldd; it will give a progress report about how much has been written.
  10. You can check what's written to the SD card by dd-ing from the card back to your harddisk to another image, and then running diff (or md5sum) on those two images. There should be no difference.
  11. 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)
  12. Remove SD card from card reader, insert it in the Raspberry Pi, and have fun

Using any system and BerryBoot

If your Pi is connected to the Internet, you can use the BerryBoot installer to let it download and install the operating system. This requires that you first use a normal Windows/Mac/Linux computer to download a small .zip file with the Berryboot system files and extract it to an empty SD card. Then you put the SD card in your Pi, and follow the on-screen prompts to complete the installation. An additional advantage is that Berryboot allows you to install more than one operating system on a single SD card. Also, it is not necessary to install any additional software on your normal Windows/Mac/Linux computer.

Other points

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).

Manually resizing the SD card partitions (Optional)

The SD card image is sized for a 2 GB card. So, if you are using an SD card with a greater capacity, you may find that only 2 GB is available. If this is the case, then to gain more free space, the partitions must be resized. The Fedora Remix and the BerryBoot will automatically resize the partitions on the mounted card during the first boot. The Debian , OpenSuSe and Rasbian images won't, so you'll have to do it manually. The easiest way is to use the tool RPi raspi-config selecting menu item EXPAND-ROOTFS - Expand Root Partition to Fill SD Card. If you want to resize the SD card whilst the SD card is not mounted in the Pi, look here for instructions.

Adding a data partition (Optional)

If you would rather not resize the partition on another machine as described above, either because you do not have another working Linux machine or you wish to keep your data on another partition to your operating system, you can instead create a new data partition and have that mount automatically at boot.

  • First you need to become root and install parted (I did all of this from the boot command prompt, although if you feel safer in a GUI, you can do all of this in a terminal window):
sudo su -
apt-get install parted
  • Then you need to run parted on your SD card, mine is /dev/mmcblk0, ymmv:
parted /dev/mmcblk0
  • Once running, set the display units to something usable and then print your partition table:
unit chs
print
  • You should see something like this:
Model: SD SD08G (sd/mmc)
Disk /dev/mmcblk0: 121279,3,31
Sector size (logical/physical): 512B/512B
BIOS cylinder,head,sector geometry: 121280,4,32.  Each cylinder is 65.5kB.
Partition Table: msdos
Number  Start      End         Type     File system     Flags
 1      16,0,0     1215,3,31   primary  fat32           lba
 2      1232,0,0   26671,3,31  primary  ext4
 3      26688,0,0  29743,3,31  primary  linux-swap(v1)
  • Now you need to create your data partition - you need to choose one more than the end of partition 3 with ,0,0 as your start and use the number from the line that starts with Disk as your end:
mkpart primary 29744,0,0 121279,3,31
print
  • That should show your new partition:
Number  Start      End          Type      File system     Flags
 1      16,0,0     1215,3,31    primary   fat32           lba
 2      1232,0,0   26671,3,31   primary   ext4
 3      26688,0,0  29743,3,31   primary   linux-swap(v1)
 4      29744,0,0  121279,3,31  primary
  • Now quit and format the partition (again, ymmv with the specific device name, try ls /dev for some clues), and then label it:
quit
mkfs.ext4 /dev/mmcblk0p4
e2label /dev/mmcblk0p4 data
  • Now we need to make sure that the partition is mounted automatically when the system boots (maybe don't use vi if you never have before, try nano):
vi /etc/fstab
  • Enter a line exactly like this at the end of the file and save and quit your text editor:
/dev/mmcblk0p4  /data           ext4    defaults        1       2
  • Create the mount point:
mkdir /data
  • Now mount the partition:
mount /data
cd /data
ls

Your new partition has been created!

References


SD(DC|DX] Card Class 6 & 10 Hints

[card usage Hints with OverClocking ]