我想知道您是否可以在 RPi 4 上安装 Ubuntu,因为在 Ubuntu 的官方指南中,它说它仅适用于 2 和 3。Raspberry Pi 3 的版本可以在 RPi 4 上运行吗?
答案1
有一个非官方的指南https://jamesachambers.com/raspberry-pi-ubuntu-server-18-04-2-installation-guide/如果您不想等待正式发布。
当前的 Ubuntu Server Raspberry Pi 映像尚未正式支持 Raspberry Pi 4,但您可以通过手动更新固件使其正常工作。固态存储也可以工作,但由于 Pi 4 尚未获得官方启动支持,因此必须使用微型 SD 卡作为引导加载程序。我在本文中描述了如何同时执行这两项操作。
Raspberry Pi 的外围设备(如 WiFi/蓝牙)现已完全受支持。Raspberry Pi 的先前 Ubuntu Server 版本(与许多其他发行版一样)的核心组件(如 WiFi/蓝牙)的驱动程序已损坏或完全缺失。在 18.04.2 更新中,WiFi 和其他组件的固件现已开箱即用,使其成为功能齐全的发行版。
这是除 Raspbian 之外的第一个发行版,感觉就像您只要对其进行映像处理,一切便会正常运作。我将在本指南中指导您完成整个过程。只需几分钟即可完成设置。
推荐装备
我强烈建议升级到固态设置。性能提升巨大。现在只需不到 30 美元即可将 Pi 升级为固态。这是 Pi 可以获得的最佳性能升级。
使用新的 Raspberry Pi 4,使用 USB 存储更加方便,因为 Pi 4 中最终添加了 USB 3.0 总线,使其可以充分利用固态硬盘。这是我当前使用的设置:
Raspberry Pi 4 Model B 2 GB
StarTech 2.5 英寸 SATA 转 USB 3.0 适配器 -AND- Kingston A400 SSD 120GB SATA 3 2.5 英寸 SSD
或者紧凑型设置:SanDisk Extreme Pro 128 GB USB 固态闪存驱动器
对于微型 SD 卡设置:SanDisk Extreme 64 GB A2 应用程序类微型 SD 卡
获取 Ubuntu 服务器
前往 Ubuntu Raspberry Pi 官方页面https://wiki.ubuntu.com/ARM/RaspberryPi并滚动到“官方图片”部分。
32 位 (armhf) 与 64 位 (aarch64)
现在,启动 32 位版本的 Ubuntu Server 比启动 64 位版本更简单、更快捷。如果您选择安装 64 位版本,请密切注意说明中针对 64 位的特定步骤,因为缺少其中任何一个步骤都会导致您的 Pi 无法启动!
目前,Raspberry Pi 4 在 64 位模式下的内存限制为 1 GB。我建议使用 32 位版本的 Ubuntu 或等到 Raspberry Pi 4 支持跟上。如果您现在想运行 64 位版本,除了内存限制外,它运行良好。
除非您特别需要 64 位发行版,否则您目前应该选择 armhf 32 位版本。对于绝大多数用例而言,32 位版本速度更快、更稳定。64 位版本已经取得了长足进步,目前完全可用,但仍存在一些重大缺点。
Raspberry Pi 4 已经将内存提升到了 4 GB,但要突破这一限制,Raspbian 最终必须采用 64 位,因为 32 位操作系统的限制之一是它只能处理 4 GB 的 RAM。为了突破 4 GB 内存寻址障碍,操作系统将有转为 64 位 (aarch64/arm64)。
目前,64 位支持在 Pi 上运行,但由于 Raspbian 和 Pi 的固件没有官方的 64 位版本,因此配置起来可能比较困难。
写入基础映像
这部分很简单。将图像从 xz 格式提取为 img 格式(7zip 很棒而且免费,可以提取这些图像)。现在将 img 写入您的媒体(Micro SD 卡、固态硬盘、USB 存储等)。与任何其他发行版的方法相同。
更新 Raspberry Pi 4 的固件
删除现有固件
当前版本中的固件并未支持 Raspberry Pi 4,因此我们需要更新 /boot/ 分区上的固件,以便 Pi 4 能够正确启动。
在计算机中插入/安装微型 SD 卡并导航到“启动”分区。删除现有文件夹中的所有内容,使其完全清空。
下载最新固件
32 位固件说明
如果您尝试运行 64 位版本的 Ubuntu,请跳至 64 位说明部分。对于 32 位版本的 Ubuntu,请从此处的官方 GitHib 存储库下载固件:https://github.com/raspberrypi/firmware/archive/master.zip
最新固件是 master.zip“boot”文件夹(包括子文件夹)内的所有内容。我们希望将“boot”(包括子文件夹)中的所有内容提取到我们在上一步中刚刚清空的 micro SD 的“boot”分区中。不要忘记获取“overlays”文件夹,因为其中包含正确启动所需的覆盖。
最终结果在“启动”驱动器上看起来会像这样:
$ ls
COPYING.linux bcm2711-rpi-4-b.dtb kernel.img
LICENCE.broadcom bootcode.bin kernel7.img
'System Volume Information' cmdline.txt kernel7l.img
bcm2708-rpi-b-plus.dtb config.txt overlays
bcm2708-rpi-b.dtb fixup.dat start.elf
bcm2708-rpi-cm.dtb fixup4.dat start4.elf
bcm2708-rpi-zero-w.dtb fixup4cd.dat start4cd.elf
bcm2708-rpi-zero.dtb fixup4db.dat start4db.elf
bcm2709-rpi-2-b.dtb fixup4x.dat start4x.elf
bcm2710-rpi-3-b-plus.dtb fixup_cd.dat start_cd.elf
bcm2710-rpi-3-b.dtb fixup_db.dat start_db.elf
bcm2710-rpi-cm3.dtb fixup_x.dat start_x.elf
64 位固件说明
要以 64 位模式启动 Ubuntu Server,我们需要下载 64 位版本的固件。32 位和 64 位操作系统的 .dtb 文件有所不同。Raspbian 没有附带 64 位引导加载程序,官方 GitHub 存储库中也没有提供。
自己构建 64 位版本的固件需要交叉编译工具链和大量时间,但这是一个选择。幸运的是,sakiki 提供了一组 64 位版本的固件,旨在用于在支持继续跟进的同时启动 Raspberry Pi 4 64 位设备。
下载固件 blob:https://github.com/sakaki-/gentoo-on-rpi3-64bit/releases/download/v1.4.2/deploy_root_p4.tar.xz
将存档中的 deploy-root/bootfs 文件提取到我们在上一步中清理的 SD 卡上的“boot”分区。这将为我们提供 64 位引导加载程序。
创建/更新 config.txt 和 cmdline.txt
导航到 micro SD /boot/ 分区。创建一个空白的 cmdline.txt 文件,其中包含以下行:
dwc_otg.fiq_fix_enable=2 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait rootflags=noload net.ifnames=0
接下来我们将创建包含以下内容的 config.txt:
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
[pi4]
[all]
64位 config.txt 配置
要以 64 位模式启动 Pi,我们需要在 config.txt 中添加以下几行:
total_mem=1024
arm_64bit=1
enable_gic=1
armstub=armstub8-gic.bin
64 位的最终配置如下:
# Enable audio (loads snd_bcm2835)
dtparam=audio=on
[pi4]
total_mem=1024
arm_64bit=1
enable_gic=1
armstub=armstub8-gic.bin
[all]
这些启用了在 Pi 上执行 64 位启动所需的所有不同的 64 位相关选项。
关于 total_mem=1024 的注意事项:目前,如果不将总内存限制为 1 GB,Raspberry Pi 4 的 SD 卡将无法在 64 位模式下工作。我们正在解决这个问题,并将在官方支持推出后立即修复。
启动 Ubuntu 服务器
现在我们准备启动设备了。插入微型 SD 卡并打开设备电源。
注意:第一次启动可能会非常慢。请耐心等待。可能需要 2-3 分钟,没有任何活动指示灯,然后突然间所有指示灯开始闪烁,SSH 就会打开。
修复 apt-get 更新
如果您现在尝试,apt-get update
它将尝试使用 Ubuntu 存储库中的旧固件更新您的固件。目前的解决方法是删除该软件包,以便保留您现有的固件。请记住您已执行此步骤,因为稍后我们将希望在添加支持后重新启用存储库中的更新。
sudo apt remove flash-kernel initramfs-tools
您现在可以运行sudo apt-get update && sudo apt-get upgrade
但不要使用dist-upgrade
,因为它将更新的存储库中的内核尚不支持 Pi 4。但这应该可以让您了解软件包的最新情况。
固态硬盘 (SSD) 配置(可选)
USB 启动功能尚未添加到 Raspberry Pi 4 固件中,但目前正在开发中。同时,您可以使用微型 SD 卡作为引导加载程序,并从固态硬盘启动整个操作系统 (rootfs),从而在整个系统范围内实现 USB 3.0 速度提升。一旦 Pi USB 启动功能正式发布,您就应该能够直接从设备启动,而无需任何临时的引导加载程序 SD 卡。
首先按照本教程前面的步骤创建一个完全映像并可启动的微型 SD 卡。创建微型 SD 安装后,您现在应该使用与创建 SD 卡时相同的 Ubuntu 映像来映像您的 SSD / USB 驱动器。
现在导航到新创建的 SSD/USB 驱动器上的“启动”分区,并删除其中的所有内容,就像我们之前对 SD 卡所做的那样。现在将“启动”文件夹从微型 SD 卡复制到固态驱动器。这是必要的,因为即使“启动”中的文件最初是从我们的微型 SD 卡读取的,但后期加载阶段的一些固件文件是从已安装的驱动器读取的,如果缺少必要的固件文件,系统将无法启动。
现在您已经创建了 SSD / USB 驱动器分区并将“启动”分区从 SD 卡复制到新驱动器,我们需要更新 SD 卡的 cmdline.txt 以指向 SSD / USB 驱动器的分区。
dwc_otg.fiq_fix_enable=2 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/mmcblk0p2 rootfstype=ext4 rootwait rootflags=noload net.ifnames=0
这里我们需要更改的关键部分是“root=/dev/mmcblk0p2”部分。mmcblk0p2 是微型 SD 存储的硬件标识符。我们需要将其更改为您的存储被检测到的设备。
如果您使用的是 USB 转固态硬盘适配器,您的驱动器很可能被寻址为 /dev/sda2。因此,我们将更root=/dev/mmcblk0p2
改为root=/dev/sda2
root=/dev/sda2
最后一行将是:
dwc_otg.fiq_fix_enable=2 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 root=/dev/sda2 rootfstype=ext4 rootwait rootflags=noload net.ifnames=0
将微型 SD 和固态硬盘插入 Pi 并启动它。
请记住:首次启动可能需要 2-3 分钟,因此在假设它不起作用之前请等待一些时间。
配置
默认用户/密码
您首次登录 Ubuntu Server 的用户名和密码是:
user: ubuntu
password: ubuntu
首次登录后,您将需要更改密码。请确保在提示符下输入当前的“ubuntu”密码,然后再输入新密码,否则设备将完全将您踢出,您必须再次登录。
设置时区
要为 Ubuntu Server 配置正确的时区,请使用以下命令:
sudo dpkg-reconfigure tzdata
这将带您进入一个非常易于遵循的菜单,以选择正确的时区并将其应用于系统。
更新系统
为了获得最佳稳定性、安全性和性能,您应该立即将系统和软件包更新到最新版本。这还将获取所有最新的修复/改进,使您的 Raspberry Pi Ubuntu 体验更好。
这部分很简单。输入:
sudo apt-get update && sudo apt-get upgrade
更改默认 GPU 内存分配
Raspberry Pi 上分配给 GPU 的默认内存量约为 1 GB 中的 76 MB。在 2 GB 和 4 GB 型号中,由此获得的内存量可以忽略不计,但对于 1 GB 型号来说仍然值得。
如果您输入该命令,free
您将看到您的 Raspberry Pi 在“总计”列下缺少此内存。我们可以通过将 GPU 内存分割设置为 16 MB 来回收大部分内存。如果您计划将来安装 GUI,则不应进行此更改。
此选项在 config.txt 文件中设置。它与 Raspbian 使用的文件完全相同,但位于/boot/firmware/config.txt
而不是/boot/config.txt
。使用以下命令打开 config.txt:
sudo nano /boot/firmware/config.txt
我们将在 config.txt 的底部添加以下行:
gpu_mem=16
按 Ctrl + X 并输入yes
以保存文件。现在通过输入以下内容重新启动 Pi:
sudo reboot
重启完成后free
再次输入,您将看到您的总可用内存已增加,现在可以由系统和应用程序使用。
答案2
你不能:
RPi4 具有较新的 CPU,与较旧的 2/3 CPU 不兼容。因此,您需要等待与 RPi4 兼容的版本。
答案3
Raspberry Pi 预装的 Ubuntu 20.10 桌面版和预装的 Ubuntu 20.10 服务器版映像可从以下位置获取:ubuntu.com. 预安装的图像允许您将预安装的 Ubuntu 版本解压到目标设备上。
安装 Ubuntu Server
我们将引导您完成在 Raspberry Pi 2、3 或 4 上刷入 Ubuntu Server 的步骤。在此过程结束时,您将拥有一个成熟的开发或生产环境。
最低要求
- Raspberry Pi 2、3 或 4
- microSD 卡
- Ubuntu 服务器映像
- 带有 HDMI 接口的显示器
- HDMI 电缆
- USB 键盘
安装说明
下载 Ubuntu 服务器镜像:
Ubuntu 19.10 Raspberry Pi 32 位和 64 位预装映像 (raspi3) 现在开箱即用地支持 Raspberry Pi 2、4 和 4 平台。以下链接将在 20.04 正式发布时更新。
适用于 Raspberry Pi 2、3 和 4 的 64 位版本
您可以使用以下方式验证文件的完整性SHA256SUM和SHA256SUM.gpg文件。
刷新 microSD 卡
按照以下步骤将 Ubuntu 映像复制到 microSD 卡上安装媒体说明。
安装 Ubuntu Server
将显示器和键盘连接到主板上。您也可以使用串行电缆。
插入 microSD 卡并将电源适配器插入主板。登录
当提示登录时,请使用“ubuntu”作为用户名和密码。登录后,系统会要求您更改此默认密码。
首次启动提示
如果你愿意,可以安装桌面环境。以下是一些流行的桌面环境:
sudo apt install xubuntu-desktop
sudo apt install lubuntu-desktop
sudo apt install kubuntu-desktop
sudo apt install ubuntu-mate-desktop^ # full desktop + applications
sudo apt install mate-desktop-environment-core # very basic set of programs that are necessary to start a MATE desktop environment session
有关此映像中包含的 Raspberry Pi 特定软件包以及进一步自定义(例如加速视频驱动程序和可选软件包存储库)的更多详细信息,您可以参考RaspberryPi 维基百科。
来源:修订自:在 Raspberry Pi 2、3 或 4 上安装 Ubuntu 服务器
Ubuntu Desktop 安装替代方法
打开终端并输入:
sudo snap install rpi-imager
完成后,启动 Imager 并打开选择操作系统菜单。
向下滚动菜单点击其他通用操作系统。
在这里,您可以选择 Ubuntu 并查看下载选项列表。对于本教程,我们建议您选择 Ubuntu 20.04 下载。注意:上面操作系统菜单中显示的一些操作系统下载选项可能已过时,因为这些下载选项已停用。如图像仪所示,这将适用于 Raspberry Pi 2、3、3+ 和任何 4。
选择图像并打开SD卡菜单。选择您插入的 microSD 卡。最后,点击写然后等待奇迹发生。这可能需要几分钟。
现在您有了 Ubuntu SD 卡。在继续之前,请确保您的 Pi 已关闭并插入此 SD 卡。这是 Pi 用来加载您将要使用的所有软件的。
现在,在插入并打开 Raspberry Pi 电源之前,请确保已插入 HDMI 屏幕和 USB 键盘。您将能够在屏幕上看到启动过程,并最终看到 Ubuntu 安装程序的首次运行向导。Ubuntu 安装程序将指导您完成 Ubuntu Desktop 的安装,包括设置 Ubuntu 的语言、键盘布局、时区和密码。
答案4
观看此视频https://www.youtube.com/watch?v=HMo9C7LCzE0它向你展示如何使用桌面安装 Ubuntu 服务器 19.10