Image specs for the raspi build.
Go to file
Lars Wirzenius 56b1e41eb0 Fix: quote expansion of $ROOT in case it has problematic characters
All the other uses of $ROOT are already quoted, so do it for this case
as well.
2019-12-06 17:09:31 +02:00
debos Add debos recipe for raspberrypi ARM64-based boards 2019-11-25 12:21:06 +01:00
.gitignore Ignore suggested build logs, images and system tar.gzs 2019-07-18 21:20:22 -03:00
.gitmodules The images build with Buster's vmdb2 - no need to include it as a submodule anymore 2019-07-18 12:57:20 -03:00
LICENSE Initial commit 2017-10-08 22:48:29 +02:00
README.md Fix README: Use systemwide vmdb2 2019-10-02 12:21:04 -05:00
compress.sh Switch to xz compression 2018-01-08 22:47:43 +01:00
eth0 Initial commit 2017-10-08 22:48:29 +02:00
fstab FAT labels should be uppercase 2018-12-04 18:39:03 -06:00
raspi0w.yaml Adding debian-security and (commented) backports repositories to sources.list 2019-10-02 12:11:43 -05:00
raspi1_b0rken.yaml Fix remaining references to rpi3 (instead of rpi) 2019-07-19 09:50:16 -03:00
raspi1_uboot_b0rken.yaml Fix remaining references to rpi3 (instead of rpi) 2019-07-19 09:50:16 -03:00
raspi2.yaml Adding debian-security and (commented) backports repositories to sources.list 2019-10-02 12:11:43 -05:00
raspi3.yaml Fix: quote expansion of $ROOT in case it has problematic characters 2019-12-06 17:09:31 +02:00
rpi-generate-ssh-host-keys.service Change references from rpi3-* to rpi-* 2019-07-18 21:18:59 -03:00
rpi-resizerootfs Change references from rpi3-* to rpi-* 2019-07-18 21:18:59 -03:00
rpi-resizerootfs.service Change references from rpi3-* to rpi-* 2019-07-18 21:18:59 -03:00
rpi-set-sysconf Regenerate sysconf.txt once it has been processed 2019-07-19 22:40:14 -03:00
rpi-set-sysconf.service Regenerate sysconf.txt once it has been processed 2019-07-19 22:40:14 -03:00
sysconf.txt Regenerate sysconf.txt once it has been processed 2019-07-19 22:40:14 -03:00

README.md

Raspberry Pi image specs

This repository contains the files with which the images referenced at https://wiki.debian.org/RaspberryPiImages have been built.

Option 1: Downloading an image

See https://wiki.debian.org/RaspberryPiImages for where to obtain the latest pre-built image.

Option 2: Building your own image

If you prefer, you can build a Debian buster Raspberry Pi image yourself. If you are reading this document online, you should first clone this repository:

git clone --recursive https://salsa.debian.org/raspi-team/image-specs.git
cd image-specs

For this you will first need to install the vmdb2 package, on a Debian Buster or higher system.

The recipes for building the images are:

  • raspi0w.yaml for Raspberry Pi 0 and 0w. We believe (but have not tested) it should also work on the 1 models.
  • raspi2.yaml for Raspberry Pi 2.
  • raspi3.yaml for all of the Raspberry Pi 3 models.

You can edit them to customize the built image. Although it could (should!) be better documented, vmdb2's format is very easy to understand.

Once you have edited the recipe for your hardware, you can generate the image by issuing the following (as root):

    vmdb2 --rootfs-tarball=raspi3.tar.gz --output \
	raspi3.img raspi3.yaml --log raspi3.log

Of course, substituting raspi3 with the actual flavor you need.

Installing the image onto the Raspberry Pi

Plug an SD card which you would like to entirely overwrite into your SD card reader.

Assuming your SD card reader provides the device /dev/mmcblk0 (Beware If you choose the wrong device, you might overwrite important parts of your system. Double check it's the correct device!), copy the image onto the SD card:

sudo dd if=raspi3.img of=/dev/mmcblk0 bs=64k oflag=dsync status=progress

Then, plug the SD card into the Raspberry Pi, and power it up.

The image uses the hostname rpi0w, rpi2 or rpi3 depending on the target build, so assuming your local network correctly resolves hostnames communicated via DHCP, you can log into your Raspberry Pi once it booted:

ssh root@rpi3
# Enter password “raspberry”

Note that the default firewall rules only allow SSH access from the local network. If you wish to enable SSH access globally, first change your root password using passwd. Next, issue the following commands as root to remove the corresponding firewall rules:

iptables -F INPUT
ip6tables -F INPUT

This will allow SSH connections globally until the next reboot. To make this persistent, remove the lines containing "REJECT" in /etc/iptables/rules.v4 and /etc/iptables/rules.v6.