Raspberry Pi and FreeBSD

I’m writing down a few steps for the future me how I installed RaspBSD on a Raspberry Pi 3

  • Download http://www.raspbsd.org/
  • Insert memory card then:
    diskutil list
    sudo diskutil unmountDisk /dev/disk2
    sudo dd bs=1 if=insertFreeBSDImage.img of=/dev/disk2
  • While writing the image press ctrl+t to get progress (this works on OS-X & FreeBSD but not on Linux)
    • Boot Pi from the MicroSD card
    • set date

ntpdate 0.pool.ntp.org
Enable ntpd, NTP is important since the board has no batteries, time will be very off
sysrc ntpd_enable="YES"

  • If you are installing FreeBSD12 on it today (2018.02.11) then you’ll have to use 11’s pkg repository
    env ABI=FreeBSD:11:aarch64 pkg bootstrap
    Add “ABI = “FreeBSD:11:aarch64”; to /usr/local/etc/pkg/repo.vrt

cat /usr/local/etc/pkg.conf
ABI = "FreeBSD:11:aarch64";
all-depends: query %dn-%dv,
annotations: info -A,
build-depends: info -qd,
cinfo: info -Cx,
comment: query -i "%c",
csearch: search -Cx,
desc: query -i "%e",
download: fetch,
iinfo: info -ix,
isearch: search -ix,
prime-list: "query -e '%a = 0' '%n'",
prime-origins: "query -e '%a = 0' '%o'",
leaf: "query -e '%#r == 0' '%n-%v'",
list: info -ql,
noauto = "query -e '%a == 0' '%n-%v'",
options: query -i "%n - %Ok: %Ov",
origin: info -qo,
provided-depends: info -qb,
raw: info -R,
required-depends: info -qr,
roptions: rquery -i "%n - %Ok: %Ov",
shared-depends: info -qB,
show: info -f -k,
size: info -sq,

  • Then you should extend the HDD with uncommenting this line in /etc/rc.conf


If that doesn’t work take a look at my previous post.

One thought on “Raspberry Pi and FreeBSD”

  1. You can do some improvements writing the image using conv=sync, as written in the manual: “Pad every input block to the input buffer size. Spaces are used for pad bytes if a block oriented conversion value is specified, otherwise NUL bytes are used.”
    sudo dd bs=1 if=insertFreeBSDImage.img of=/dev/disk2 conv=sync
    Thank you Benedict – https://twitter.com/bsdbcr !

Leave a Reply

Your email address will not be published. Required fields are marked *