首页 > 评测 > Fedora 26为多种ARM平台开发板提供单一“统一”操作系统映像

Fedora 26为多种ARM平台开发板提供单一“统一”操作系统映像

Fedora 26   ARM   操作系统   映像   .iso   
  • 作者:rocky
  • 来源:21ic
  • [导读]
  • 几年前Linus Torvalds抱怨说,Linux在ARM上是一团糟,因此决定要在Linux中使用使用设备树,最终目标是为所有硬件提供统一的ARM内核。arch / arm / mach-xxx /中的大多数特定于机器的板文件现在已经从Linux内核中移除,被设备树文件替代。在许多情况下,您只需要将操作系统中的DTB(设备树二进制)文件替换为在不同的硬件平台上运行。然而,这并不总是那么容易,因为U-boot在板/设备之间经常不同,所以每个板分配不同的固件/ OS映像是非常频繁的。Fedora采取了另一种方法,让开发人员将分发单个Fedora 26 OS ARMv7映像以及安装脚本。

 几年前Linus Torvalds抱怨说,Linux在ARM上是一团糟,因此决定要在Linux中使用使用设备树,最终目标是为所有硬件提供统一的ARM内核。arch / arm / mach-xxx /中的大多数特定于机器的板文件现在已经从Linux内核中移除,被设备树文件替代。在许多情况下,您只需要将操作系统中的DTB(设备树二进制)文件替换为在不同的硬件平台上运行。然而,这并不总是那么容易,因为U-boot在板/设备之间经常不同,所以每个板分配不同的固件/ OS映像是非常频繁的。Fedora采取了另一种方法,让开发人员将分发单个Fedora 26 OS ARMv7映像以及安装脚本。

Fedora-ARM.jpg

64位ARM(Aarch64)的图像有所不同,因为它们是针对符合SBSA标准的服务器而设计的,所以单个映像将在使用硬件上的UEFI / ACPI实现的任何服务器上工作。下面是对维基中解释的ARMv7硬浮点图像的具体描述。

https://fedoraproject.org/wiki/Architectures/ARM/Installation

您需要在下载Fedora 26映像之后安装Fedora Arm安装程序(https://arm.fedoraproject.org/)。这需要一个Fedora机器,而且由于我运行Ubuntu 16.04,并且不想在Virtualbox中设置一个Fedora虚拟机,所以我在Ubuntu中使用了docker,因为它要快得多:

sudo apt install docker

sudo docker pull fedora

sudo umount /dev/sdd*

sudo docker run -i -t -v /media/hdd:/mnt --device==/dev/sdd --device=/dev/sdd3 fedora:latest /bin/bash

最后一行需要一些解释。 / media / hdd是主机上的存储设备的挂载点,我下载Fedora映像,可以通过/ mnt在docker中访问,/ dev / sdd是我的micro SD卡设备,而/ dev / sdd3将是rootfs分区。请注意,我花了一段时间才能获得正确的权限,并且我不确定它适用于所有目标(还需要其他/ dev / sddx),因此使用实际的Fedora 26安装将更容易。下面的其他说明不是泊坞窗特定的。

然后我可以安装Fedora ARM安装程序和所需的xz和文件包...

dnf install fedora-arm-installer xz file

...并检查用法:

---

[root@f2a5f32ac868 /]# fedora-arm-image-installer

Usage: fedora-arm-image-installer

--image=IMAGE - xz compressed image file name

--target=TARGET - target board

--media=DEVICE - media device file (/dev/[sdX|mmcblkX])

--norootpass - Remove the root password

-y - Assumes yes, will not wait for confirmation

--version - Display version and exit

--resizefs - Resize root filesystem to fill media device

--addconsole - Add system console to extlinux.conf

--addkey= - /path/to/ssh-public-key

--supported-boards

Example: fedora-arm-image-installer --image=Fedora-Rawhide.xz --target=Bananapi --media=/dev/mmcblk0

For list of supported boards please check SUPPORTED-BOARDS file.

---

让我们看看/ usr / share / doc / fedora-arm-installer / SUPPORTED-BOARDS文件中支持多少板?

AllWinner Devices:

A10-OLinuXino-Lime A10s-OLinuXino-M A13-OLinuXino A13-OLinuXinoM

A20-OLinuXino-Lime A20-OLinuXino-Lime2 A20-OLinuXino_MICRO

A20-Olimex-SOM-EVB Ampe_A76 Auxtek-T003 Auxtek-T004 Bananapi Bananapro CHIP

CSQ_CS908 Chuwi_V7_CW0825 Colombus Cubieboard Cubieboard2 Cubietruck

Cubietruck_plus Hummingbird_A31 Hyundai_A7HD Itead_Ibox_A20 Lamobo_R1

Linksprite_pcDuino Linksprite_pcDuino3 Linksprite_pcDuino3_Nano MK808C

MSI_Primo73 MSI_Primo81 Marsboard_A10 Mele_A1000 Mele_A1000G_quad Mele_I7

Mele_M3 Mele_M5 Mele_M9 Mini-X Orangepi Orangepi_mini Sinlinx_SinA31s

UTOO_P66 Wexler_TAB7200 Wits_Pro_A20_DKT Yones_Toptech_BS1078_V2 ba10_tv_box

colorfly_e708_q1 difrnce_dit4350 dserve_dsrv9703c i12-tvbox iNet_86VS

icnova-a20-swac inet86dz jesurun_q5 mk802 mk802_a10s mk802ii orangepi_2

orangepi_lite orangepi_pc orangepi_plus polaroid_mid2809pxe04

pov_protab2_ips9 q8_a13_tablet q8_a23_tablet_800x480 q8_a33_tablet_1024x600

q8_a33_tablet_800x480 r7-tv-dongle sunxi_Gemei_G9

MX6 Devices:

cm_fx6 mx6cuboxi novena riotboard wandboard

OMAP Devices:

am335x_boneblack am57xx_evm kc1 omap3_beagle omap4_panda omap5_uevm

MVEBU Devices:

clearfog

ST Devices:

stih410-b2260

Other Devices:

jetson-tk1 rpi2 rpi3 trimslice

所以我们有一个可供选择的设备列表。例如,如果要将Fedora 26服务器安装在Raspberry Pi 3的micro SD卡中,您可以运行以下操作:

fedora-arm-image-installer --image=/mnt/Downloads/Fedora-Server-armhfp-26-1.5-sda.raw.xz --target=rpi3 --media=/dev/sdd –resizefs

然后你会被要求确认:

=====================================================

= Selected Image:

= /mnt/Downloads/Fedora-Server-armhfp-26-1.5-sda.raw.xz

= Selected Media : /dev/sdd

= U-Boot Target : rpi3

= Root partition will be resized

=====================================================

*****************************************************

*****************************************************

******** WARNING! ALL DATA WILL BE DESTROYED ********

*****************************************************

*****************************************************

Type 'YES' to proceed, anything else to exit now

= Proceed? YES

完整的过程将需要几分钟,最后你会得到“_ /”rootfs分区,“_ / boot”分区和一个“30 MB卷”与u-boot,配置等...

Fedora-Raspberry-Pi-3.png

我没有在Raspberry Pi 3板上尝试微型SD卡,因为Geek Till It Hertz已经在RPi 3和Banana Pi板上成功完成了,如下图所示。

他还表示板上运行Linux 4.11.8版本,但是可以通过dnf更新升级到Linux 4.11.11,就像在Fedora 26上安装的x86-64计算机一样。

  • 本文系21ic原创,未经许可禁止转载!

网友评论