Looking for a 64-bit version of Linux for the Raspberry Pi 4.
Are there any other options that are working now?
Raspberry Pi Stack Exchange is a question and answer site for users and developers of hardware and software for Raspberry Pi. It only takes a minute to sign up.Sign up to join this community
As of September 2019, the following 64-bit operating systems run on a Raspberry Pi 4:
The above list is by no means exhaustive because there have been many one-off 64-bit experiments ("Hey, it boots") starting shortly after Pi 4's release.
After all, the procedure for tweaking an existing distro into a 64-bit Pi 4 compatible one has not changed. Just like with a Pi 3 or Pi 2 v1.2, copying over the kernel and kernel modules from a working system will usually result in a configuration that boots*.
In terms of quality and support, the situation with Raspberry Pi 4, Buster, kernel 4.19+, and 64-bit is better than it had been with Pi 3B+ and Stretch. This time it is actually possible to access the SoC camera in Fake KMS mode. Gentoo has been listed first for its active userbase and it was the first to provide fixes for accessing 4 GB of memory and V3D acceleration.
Note that for distros without an arm64 userland (e.g. Raspbian + 64-bit kernel), additional steps are necessary to run 64-bit programs. This can be done via static compilation, containers (LXC, systemd-nspawn), or chroot. The last option has proven to be the most straightforward:
sudo apt install -y debootstrap schroot cat << EOF | sudo tee /etc/schroot/chroot.d/pi64 [pi64] description=V3D arm64 testing type=directory directory=/srv/chroot/pi64 users=pi root-groups=root profile=desktop personality=linux preserve-environment=true EOF sudo debootstrap --arch arm64 buster /srv/chroot/pi64 sudo schroot -c pi64 -- apt install -y mesa-utils sudo schroot -c pi64
Then continue to install more arm64 programs or run them inside the chroot:
(pi64)pi@raspberrypi:~ $ glxgears
* One pitfall specific to Pi 4 is that fake KMS with VC6 requires a very recent build of Mesa, so an initial workaround is to edit
config.txt to switch to legacy mode.
Edit: Ubuntu has published new images for raspberry pi which allow you to use Raspberry Pi 4 4GB with Ubuntu 19.10.1 64-bit out-of-the-box. See the blog post
As of December '19, you can use Ubuntu 19.10 without limiting your ram to 3GB. Assuming you have downloaded 64-bit Ubuntu server image, you can follow these instructions and add eoan-proposed apt sources. Then you do your usual
apt update && apt upgrade, and your Ubuntu kernel is upgraded to a version which fixes the USB bug on 64-bit Ubuntu install on Raspberry Pi 4 4GB model.
There's already a full 64bits Kali linux available with support of all the 4Gb ram memory : https://www.offensive-security.com/kali-linux-arm-images/#1493408272250-e17e9049-9ce8 For memory, kali is a debian with security check pre-installed packages/app, it is based on the debian unstable branch, but from tests I made, you can also "convert" it to the debian testing branch (= the next debian release). If you want to have a try on it, here's the rpi 2 3 & 4 img file of Kali Linux RaspberryPi (2 (v1.2), 3 and 4 64-Bit) : https://images.offensive-security.com/arm-images/kali-linux-2019.3-rpi3-nexmon-64.img.xz another thread related to running a 64 os on the RPI 4 is here, and could interest anyone looking for a 64 bit os (it's on the dietpi forum, for memory dietpi is a very small debian/raspbian os (available to flash as an img or installable through a shell script to reduce and remove a lot of useless packages, allowing you to install ONLY what you really need)) : https://dietpi.com/phpbb/viewtopic.php?f=9&t=6065&start=30
I used this image succesfully: https://jamesachambers.com/raspberry-pi-ubuntu-server-18-04-2-installation-guide/ Only had to make some changes in the /boot/firmware/config.txt. I used a 7" touchscreen.
I offer the following procedure on how to install Ubuntu 19.10 on a Pi4
I got most of the following information from the following youtube site Give it a listen because it is quite accurate in the part it covers. The only missing piece was how to configure a network on the Pi4 that has virtually no network tools installed.
This procedure will be self contained with outside references where necessary for clarity or additional reading.
The procedure consists of 7 sections:
Now for the details on how to do this:
Are there any other options that are working now?
The image https://ubuntu.com/download/raspberry-pi works for RPi4 1GB & 2GB models but needs a patch for the 4GB model to work at only 3GB memory limit allocation.
Debian said: Multiarch lets you install library packages from multiple architectures on the same machine. This is useful in various ways, but the most common is installing both 64 and 32-bit software on the same machine and having dependencies correctly resolved automatically. In general, you can have libraries of more than one architecture installed together and applications from one architecture or another installed as alternatives. Note that it does not enable multiple architecture versions of applications to be installed simultaneously.
The default image you burn doesn't (obviously) have your wifi access point info, doesn't have ssh keys for the default ubuntu account, you'll need a monitor and you'll also need an HDMI cable (micro). However, all the problems can be overcome by doing the following. Mount the sd card on any other Linux box and do the following:
yamlfile in SD card's
/etc/netplan(for e.g., wifi.yaml). Copy one of example
netplan.io/examplesfor a Wifi. Add your access point to
ssh-keygento generate keys (
id_rsa.pub), place those in card's
/home/ubuntu/.sshdirectory (ensure permissions are set for the directory + keys).
Now, you can boot the Raspberry Pi 4. From your router or using
nmap -sn a.b.c.d/24 command, find Raspberry Pi's IP address, and do an
ssh ubuntu@Ubuntu-IP, and there you go.
Using this method you'll not need a monitor and HDMI cable.