首頁 > 評(píng)測(cè) > Fedora 26為多種ARM平臺(tái)開發(fā)板提供單一“統(tǒng)一”操作系統(tǒng)映像

Fedora 26為多種ARM平臺(tái)開發(fā)板提供單一“統(tǒng)一”操作系統(tǒng)映像

  • 作者:rocky
  • 來源:21ic
  • [導(dǎo)讀]
  • 幾年前Linus Torvalds抱怨說,Linux在ARM上是一團(tuán)糟,因此決定要在Linux中使用使用設(shè)備樹,最終目標(biāo)是為所有硬件提供統(tǒng)一的ARM內(nèi)核。arch / arm / mach-xxx /中的大多數(shù)特定于機(jī)器的板文件現(xiàn)在已經(jīng)從Linux內(nèi)核中移除,被設(shè)備樹文件替代。在許多情況下,您只需要將操作系統(tǒng)中的DTB(設(shè)備樹二進(jìn)制)文件替換為在不同的硬件平臺(tái)上運(yùn)行。然而,這并不總是那么容易,因?yàn)閁-boot在板/設(shè)備之間經(jīng)常不同,所以每個(gè)板分配不同的固件/ OS映像是非常頻繁的。Fedora采取了另一種方法,讓開發(fā)人員將分發(fā)單個(gè)Fedora 26 OS ARMv7映像以及安裝腳本。

 幾年前Linus Torvalds抱怨說,Linux在ARM上是一團(tuán)糟,因此決定要在Linux中使用使用設(shè)備樹,最終目標(biāo)是為所有硬件提供統(tǒng)一的ARM內(nèi)核。arch / arm / mach-xxx /中的大多數(shù)特定于機(jī)器的板文件現(xiàn)在已經(jīng)從Linux內(nèi)核中移除,被設(shè)備樹文件替代。在許多情況下,您只需要將操作系統(tǒng)中的DTB(設(shè)備樹二進(jìn)制)文件替換為在不同的硬件平臺(tái)上運(yùn)行。然而,這并不總是那么容易,因?yàn)閁-boot在板/設(shè)備之間經(jīng)常不同,所以每個(gè)板分配不同的固件/ OS映像是非常頻繁的。Fedora采取了另一種方法,讓開發(fā)人員將分發(fā)單個(gè)Fedora 26 OS ARMv7映像以及安裝腳本。

Fedora-ARM.jpg

64位ARM(Aarch64)的圖像有所不同,因?yàn)樗鼈兪轻槍?duì)符合SBSA標(biāo)準(zhǔn)的服務(wù)器而設(shè)計(jì)的,所以單個(gè)映像將在使用硬件上的UEFI / ACPI實(shí)現(xiàn)的任何服務(wù)器上工作。下面是對(duì)維基中解釋的ARMv7硬浮點(diǎn)圖像的具體描述。

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

您需要在下載Fedora 26映像之后安裝Fedora Arm安裝程序(https://arm.fedoraproject.org/)。這需要一個(gè)Fedora機(jī)器,而且由于我運(yùn)行Ubuntu 16.04,并且不想在Virtualbox中設(shè)置一個(gè)Fedora虛擬機(jī),所以我在Ubuntu中使用了docker,因?yàn)樗斓枚啵?/p>

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是主機(jī)上的存儲(chǔ)設(shè)備的掛載點(diǎn),我下載Fedora映像,可以通過/ mnt在docker中訪問,/ dev / sdd是我的micro SD卡設(shè)備,而/ dev / sdd3將是rootfs分區(qū)。請(qǐng)注意,我花了一段時(shí)間才能獲得正確的權(quán)限,并且我不確定它適用于所有目標(biāo)(還需要其他/ dev / sddx),因此使用實(shí)際的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

所以我們有一個(gè)可供選擇的設(shè)備列表。例如,如果要將Fedora 26服務(wù)器安裝在Raspberry Pi 3的micro SD卡中,您可以運(yùn)行以下操作:

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

然后你會(huì)被要求確認(rèn):

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

= 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

完整的過程將需要幾分鐘,最后你會(huì)得到“_ /”rootfs分區(qū),“_ / boot”分區(qū)和一個(gè)“30 MB卷”與u-boot,配置等...

Fedora-Raspberry-Pi-3.png

我沒有在Raspberry Pi 3板上嘗試微型SD卡,因?yàn)镚eek Till It Hertz已經(jīng)在RPi 3和Banana Pi板上成功完成了,如下圖所示。

他還表示板上運(yùn)行Linux 4.11.8版本,但是可以通過dnf更新升級(jí)到Linux 4.11.11,就像在Fedora 26上安裝的x86-64計(jì)算機(jī)一樣。

  • 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!

網(wǎng)友評(píng)論

  • 聯(lián)系人:巧克力娃娃
  • 郵箱:board@21ic.com
  • 我要投稿
  • 歡迎入駐,開放投稿

熱門標(biāo)簽
項(xiàng)目外包 more+