(15 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{autolang|base=yes}} | {{autolang|base=yes}} | ||
[[Category:Fedora | |||
[[Category:Fedora ARMv7]][[Category:Fedora 26]] | |||
=Fedora 26 for ARM= | =Fedora 26 for ARM= | ||
Today the Fedora Project is pleased to announce the general release of Fedora | Today the Fedora Project is pleased to announce the general release of Fedora 26. Download it now from our Get Fedora site: | ||
* https://arm.fedoraproject.org/ | * https://arm.fedoraproject.org/ | ||
Line 12: | Line 12: | ||
====Overview of Hardware Support Status==== | ====Overview of Hardware Support Status==== | ||
* [[Architectures/ARM/ | * [[Architectures/ARM/F26/Installation/Hardware_Status|Hardware Support Status]] | ||
===== Raspberry Pi 2/3 ===== | ===== Raspberry Pi 2/3 ===== | ||
Fedora | Fedora 26 includes support for the Raspberry Pi 2/3! For full details and installation instructions, please visit: | ||
* https://fedoraproject.org/wiki/Raspberry_Pi | * https://fedoraproject.org/wiki/Raspberry_Pi | ||
Line 24: | Line 24: | ||
== Make Fedora Even Better == | == Make Fedora Even Better == | ||
If you want to take an active hand in making Fedora even better, there are many ways you can contribute. There are many roles that you can participate. Visit http://whatcanidoforfedora.org/ for more information! While this is a general release, there is always a chance you may encounter bugs or missing features. To report issues encountered during testing, contact the Fedora QA team via the mailing list or in <code>#fedora-qa</code> on Freenode IRC. As testing progresses, common issues are tracked on the Common | If you want to take an active hand in making Fedora even better, there are many ways you can contribute. There are many roles that you can participate. Visit http://whatcanidoforfedora.org/ for more information! While this is a general release, there is always a chance you may encounter bugs or missing features. To report issues encountered during testing, contact the Fedora QA team via the mailing list or in <code>#fedora-qa</code> on Freenode IRC. As testing progresses, common issues are tracked on the Common F26 Bugs page. | ||
* https://fedoraproject.org/wiki/ | * https://fedoraproject.org/wiki/Common_F26_bugs | ||
For tips on reporting a bug effectively, read "how to file a bug report." | For tips on reporting a bug effectively, read "how to file a bug report." | ||
Line 37: | Line 37: | ||
into a "host" system (e.g. an ARM or x86_64 PC class desktop, laptop, etc.) and | into a "host" system (e.g. an ARM or x86_64 PC class desktop, laptop, etc.) and | ||
performing a few simple commands to write this image onto the media. This media | performing a few simple commands to write this image onto the media. This media | ||
is then used by the ARM "target" system to boot the Fedora | is then used by the ARM "target" system to boot the Fedora 26 environment. | ||
After writing the image and correct U-boot file(s), insert the media into the target platform and boot. | After writing the image and correct U-boot file(s), insert the media into the target platform and boot. | ||
* http://download.fedoraproject.org/pub/fedora/linux/releases/ | * http://download.fedoraproject.org/pub/fedora/linux/releases/26/Spins/armhfp/images/ | ||
== Fedora Arm Installer == | == Fedora Arm Installer == | ||
Line 61: | Line 61: | ||
--target=TARGET - target board | --target=TARGET - target board | ||
--media=DEVICE - media device file (/dev/[sdX|mmcblkX]) | --media=DEVICE - media device file (/dev/[sdX|mmcblkX]) | ||
--norootpass - Remove the root password | --norootpass - Remove the root password | ||
-y - Assumes yes, will not wait for confirmation | -y - Assumes yes, will not wait for confirmation | ||
Line 67: | Line 66: | ||
--resizefs - Resize root filesystem to fill media device | --resizefs - Resize root filesystem to fill media device | ||
--addconsole - Add system console to extlinux.conf | --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 | Example: fedora-arm-image-installer --image=Fedora-Rawhide.xz --target=Bananapi --media=/dev/mmcblk0 | ||
</pre> | </pre> | ||
Line 109: | Line 78: | ||
=== Using an Existing Disk Image === | === Using an Existing Disk Image === | ||
Choose a disk image. | Choose a disk image. | ||
http://download.fedoraproject.org/pub/fedora/linux/releases/ | http://download.fedoraproject.org/pub/fedora/linux/releases/26/Spins/armhfp/images/ | ||
Extract the image: | Extract the image: | ||
<pre> | <pre> | ||
TYPE= # Type of image used. (eg Minimal, KDE, Xfce, SoaS, MATE) | TYPE= # Type of image used. (eg Minimal, KDE, Xfce, SoaS, MATE) | ||
unxz Fedora-$TYPE-armhfp- | unxz Fedora-$TYPE-armhfp-26-1.5-sda.raw.xz | ||
</pre> | </pre> | ||
Install 'libguestfs-tools' to use virt-builder: | Install 'libguestfs-tools' to use virt-builder: | ||
Line 119: | Line 88: | ||
Extract the kernel and initramfs for use with booting. | Extract the kernel and initramfs for use with booting. | ||
<pre> | <pre> | ||
virt-builder --get-kernel Fedora-$TYPE-armhfp- | virt-builder --get-kernel Fedora-$TYPE-armhfp-26-1.5-sda.raw | ||
</pre> | </pre> | ||
Move the files to the default libvirt image location: | Move the files to the default libvirt image location: | ||
sudo mv Fedora-$TYPE-armhfp- | sudo mv Fedora-$TYPE-armhfp-26-1.5-sda.raw vmlinuz-4.11.8-300.fc26.armv7hl initramfs-4.11.8-300.fc26.armv7hl.img /var/lib/libvirt/images/ | ||
==== Using Virt-Manager (Graphical ) ==== | ==== Using Virt-Manager (Graphical ) ==== | ||
Line 138: | Line 107: | ||
<pre> | <pre> | ||
sudo virt-install \ | sudo virt-install \ | ||
--name Fedora-$TYPE-armhfp- | --name Fedora-$TYPE-armhfp-26 --ram 2048 --arch armv7l --import --os-variant fedora22 \ | ||
--disk /var/lib/libvirt/images/Fedora-$TYPE-armhfp- | --disk /var/lib/libvirt/images/Fedora-$TYPE-armhfp-26-1.5-sda.raw \ | ||
--boot kernel=/var/lib/libvirt/images/vmlinuz-4.8 | --boot kernel=/var/lib/libvirt/images/vmlinuz-4.11.8-300.fc26.armv7hl,initrd=/var/lib/libvirt/images/initramfs-4.11.8-300.fc26.armv7hl.img,kernel_args="console=ttyAMA0 rw root=LABEL=_/ rootwait" | ||
</pre> | </pre> | ||
Line 147: | Line 116: | ||
For example to increase the image size by 10GB you can issue: | For example to increase the image size by 10GB you can issue: | ||
qemu-img resize Fedora-$TYPE-armhfp- | qemu-img resize Fedora-$TYPE-armhfp-26-1.5-sda.raw +10G | ||
=== Interactive Network Installation === | === Interactive Network Installation === | ||
Line 153: | Line 122: | ||
<pre> | <pre> | ||
sudo virt-install \ | sudo virt-install \ | ||
--name | --name f26-armhfp --ram 2048 --arch armv7l --os-variant fedora22\ | ||
--disk /var/lib/libvirt/images/ | --disk /var/lib/libvirt/images/f26-armhfp.raw,bus=virtio,format=raw,size=8 \ | ||
--location=http://dl.fedoraproject.org/pub/fedora/linux/releases/ | --location=http://dl.fedoraproject.org/pub/fedora/linux/releases/26/Everything/armhfp/os/ \ | ||
--extra-args="console=ttyAMA0 rw" | --extra-args="console=ttyAMA0 rw" | ||
</pre> | </pre> | ||
Line 165: | Line 134: | ||
* Use virt-cat to get the appropriate kernel args. | * Use virt-cat to get the appropriate kernel args. | ||
<pre> | <pre> | ||
sudo virt-cat -a /var/lib/libvirt/images/ | sudo virt-cat -a /var/lib/libvirt/images/f26-armhfp.raw /boot/extlinux/extlinux.conf | ||
</pre> | </pre> | ||
Line 177: | Line 146: | ||
= Upgrade using DNF = | = Upgrade using DNF = | ||
It is also possible to upgrade to Fedora | It is also possible to upgrade to Fedora 26 from an existing Fedora 23 installation (NOTE: This is not well tested prior to, and may not work for all hardware. Tested on Calxeda Highbank. Previous releases may also work but have not been tested). | ||
<pre> | <pre> | ||
# fully update the system | # fully update the system | ||
Line 184: | Line 153: | ||
sudo dnf install dnf-plugin-system-upgrade | sudo dnf install dnf-plugin-system-upgrade | ||
# upgrade | # upgrade | ||
sudo dnf system-upgrade download --releasever= | sudo dnf system-upgrade download --releasever=26 | ||
</pre> | </pre> | ||
= Known Issues & Usage Tips= | = Known Issues & Usage Tips= | ||
* Display is not currently working in vexpress emulation. | * Display is not currently working in vexpress emulation. | ||
* | * Pandaboard and Beaglebone variants require the use of an earlier U-Boot, prior to booting use the tool 'update-uboot' to install the Fedora 25 version. EG 'sudo update-uboot --media=/dev/sdX --target=am335x_boneblack --tag=f25' | ||
* | * Some boards will 'data abort' when attempting to use the network in U-Boot. This is being worked on upstream and a fix will be available as an update as soon as possible. If you require network in U-Boot, please use an earlier version. | ||
For a list of all common bugs please visit - http://fedoraproject.org/wiki/ | For a list of all common bugs please visit - http://fedoraproject.org/wiki/Common_F26_bugs . | ||
= FAQ = | = FAQ = | ||
Line 213: | Line 182: | ||
* <b>How do I enable hardware virtualization on the Jetson TK1?</b> | * <b>How do I enable hardware virtualization on the Jetson TK1?</b> | ||
** At a U-Boot prompt enter 'setenv bootm_boot_mode nonsec; saveenv'. Then boot using an LPAE kernel. | ** At a U-Boot prompt enter 'setenv bootm_boot_mode nonsec; saveenv'. Then boot using an LPAE kernel. This needs to be repeated when you upgrade U-Boot. | ||
* <b>How do I enlarge the root partition?</b> | * <b>How do I enlarge the root partition?</b> | ||
** The images include cloud-utils-growpart to enlarge the root partition, then resize2fs to use that newly available space. | ** The images include cloud-utils-growpart to enlarge the root partition, then resize2fs/xfs_growfs to use that newly available space. | ||
<pre> | <pre> | ||
# enlarge the 4th partition (this example uses mmcblk0) | # STEP 1: enlarge the 4th partition (this example uses mmcblk0) | ||
growpart /dev/mmcblk0 4 | growpart /dev/mmcblk0 4 | ||
# grow the fileystem to fill the available space | # STEP 2: grow the fileystem to fill the available space (all images except Server) | ||
resize2fs /dev/mmcblk0p4 | resize2fs /dev/mmcblk0p4 | ||
# for the server image (which uses xfs) | # OR STEP 2: for the server image (which uses xfs) | ||
xfs_growfs /dev/mmcblk0p4 | xfs_growfs /dev/mmcblk0p4 | ||
</pre> | </pre> |
Latest revision as of 14:03, 14 July 2017
Fedora 26 for ARM
Today the Fedora Project is pleased to announce the general release of Fedora 26. Download it now from our Get Fedora site:
Overview of Hardware Support Status
Raspberry Pi 2/3
Fedora 26 includes support for the Raspberry Pi 2/3! For full details and installation instructions, please visit:
Make Fedora Even Better
If you want to take an active hand in making Fedora even better, there are many ways you can contribute. There are many roles that you can participate. Visit http://whatcanidoforfedora.org/ for more information! While this is a general release, there is always a chance you may encounter bugs or missing features. To report issues encountered during testing, contact the Fedora QA team via the mailing list or in #fedora-qa
on Freenode IRC. As testing progresses, common issues are tracked on the Common F26 Bugs page.
For tips on reporting a bug effectively, read "how to file a bug report."
Download the Disk Image & Copy to Media
The image-based installation process involves downloading an image file (depending upon desktop/non-desktop option desired), inserting removable media into a "host" system (e.g. an ARM or x86_64 PC class desktop, laptop, etc.) and performing a few simple commands to write this image onto the media. This media is then used by the ARM "target" system to boot the Fedora 26 environment.
After writing the image and correct U-boot file(s), insert the media into the target platform and boot.
Fedora Arm Installer
Execute the following script as a user with sudo privileges. It will copy the selected disk image and write the appropriate U-Boot for the target hardware platform. Optionally you can also enable and disable SE Linux and remove the root password requirement (allowing log in without completing initial setup). To add a board not listed, simply create a bash scriptlet with the commands needed to copy U-Boot to media and add to the 'boards.d' directory.
sudo dnf install fedora-arm-installer
Usage: fedora-arm-image-installer <options> --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 Versatile Express Emulation with QEMU
No ARM hardware? No problem! Even without hardware, it is possible to run the Fedora for ARM images using the QEMU emulator program. Any image can be used, and you can choose a scr ipt method or manual depending on your preference.
Using an Existing Disk Image
Choose a disk image.
http://download.fedoraproject.org/pub/fedora/linux/releases/26/Spins/armhfp/images/
Extract the image:
TYPE= # Type of image used. (eg Minimal, KDE, Xfce, SoaS, MATE) unxz Fedora-$TYPE-armhfp-26-1.5-sda.raw.xz
Install 'libguestfs-tools' to use virt-builder:
sudo dnf install -y libguestfs-tools
Extract the kernel and initramfs for use with booting.
virt-builder --get-kernel Fedora-$TYPE-armhfp-26-1.5-sda.raw
Move the files to the default libvirt image location:
sudo mv Fedora-$TYPE-armhfp-26-1.5-sda.raw vmlinuz-4.11.8-300.fc26.armv7hl initramfs-4.11.8-300.fc26.armv7hl.img /var/lib/libvirt/images/
Using Virt-Manager (Graphical )
- Start virt-manager, connect to 'QEMU', click the 'New VM' icon
- On the first page, under 'Architecture Options' select 'arm'. The 'virt' machine type should be selected automatically
- Select the 'Import install' option, go to the next page
- Browse to the disk image, kernel, and initrd we moved in the previous step.
- Set kernel args as: console=ttyAMA0 rw root=LABEL=_/ rootwait
- Set the OS as Fedora 22.
- Continue with the OS defaults, complete the install.
The guest should shortly start booting, and you should see text console output. After a bit of a wait, it should hit a text mode 'initial setup' where you can set a root password. To boot (you will need to determine the kernel version used in the disk image):
Using 'virt-install' (command line)
sudo virt-install \ --name Fedora-$TYPE-armhfp-26 --ram 2048 --arch armv7l --import --os-variant fedora22 \ --disk /var/lib/libvirt/images/Fedora-$TYPE-armhfp-26-1.5-sda.raw \ --boot kernel=/var/lib/libvirt/images/vmlinuz-4.11.8-300.fc26.armv7hl,initrd=/var/lib/libvirt/images/initramfs-4.11.8-300.fc26.armv7hl.img,kernel_args="console=ttyAMA0 rw root=LABEL=_/ rootwait"
Expanding the Disk Image
You can easily expand the root partition of the disk image using qemu-img
.
For example to increase the image size by 10GB you can issue:
qemu-img resize Fedora-$TYPE-armhfp-26-1.5-sda.raw +10G
Interactive Network Installation
This example will create an 8Gb disk image in the libvirt images directory.
sudo virt-install \ --name f26-armhfp --ram 2048 --arch armv7l --os-variant fedora22\ --disk /var/lib/libvirt/images/f26-armhfp.raw,bus=virtio,format=raw,size=8 \ --location=http://dl.fedoraproject.org/pub/fedora/linux/releases/26/Everything/armhfp/os/ \ --extra-args="console=ttyAMA0 rw"
Complete a Text or VNC Installation choosing a software packge and partitioning scheme. The system will attempt to reboot but fail until the next step is completed.
Virt-Manager
- Open Virt-Manager and select the image created above. Click on "Edit-> Virtual Machine Details -> View -> Details"
- Under "Boot Options", add the kernel, initramfs
- Use virt-cat to get the appropriate kernel args.
sudo virt-cat -a /var/lib/libvirt/images/f26-armhfp.raw /boot/extlinux/extlinux.conf
Booting for the First Time
Initial-setup
- During the first boot the system will launch the 'initial-setup' utility. For graphical images this will occur on the display, for minimal images this will occur on the serial console. Failure to complete the initial-setup will prevent logging into the system. To log in to the root account without completing the initial-setup you will need to minimally edit '/etc/passwd' file and remove the 'x' from the line beginning with 'root' (this will allow you to log into the root account without entering a password).
- NOTE - currently there is a timing issue with initial-setup, even though a display is connected, it may be run as text on the serial console. This is often resolved by rebooting the system.
Resize the Root Filesystem
To resize the root partition use 'gparted' on a Fedora host. For command line see the FAQ below.
Upgrade using DNF
It is also possible to upgrade to Fedora 26 from an existing Fedora 23 installation (NOTE: This is not well tested prior to, and may not work for all hardware. Tested on Calxeda Highbank. Previous releases may also work but have not been tested).
# fully update the system sudo dnf update -y # install the upgrade plugin sudo dnf install dnf-plugin-system-upgrade # upgrade sudo dnf system-upgrade download --releasever=26
Known Issues & Usage Tips
- Display is not currently working in vexpress emulation.
- Pandaboard and Beaglebone variants require the use of an earlier U-Boot, prior to booting use the tool 'update-uboot' to install the Fedora 25 version. EG 'sudo update-uboot --media=/dev/sdX --target=am335x_boneblack --tag=f25'
- Some boards will 'data abort' when attempting to use the network in U-Boot. This is being worked on upstream and a fix will be available as an update as soon as possible. If you require network in U-Boot, please use an earlier version.
For a list of all common bugs please visit - http://fedoraproject.org/wiki/Common_F26_bugs .
FAQ
- How do I use Fedora ARM when I have no serial cable or display?
- Though not recommended it is possible to use Fedora ARM without a serial cable or display. When doing so you may want to limit updates to reduce the possibility of not being able to boot. (This example is from a Fedora 22 system, you may need to adjust the mounts used).
USER= # your user account sudo rm /run/media/$USER/__/etc/systemd/system/graphical.target.wants/initial-setup-graphical.service #only needed for Desktop images sudo rm /run/media/$USER/__/etc/systemd/system/multi-user.target.wants/initial-setup.service sudo mkdir /run/media/$USER/__/root/.ssh/ cat /home/$USER/.ssh/id_rsa.pub | sudo tee -a /run/media/$USER/__/root/.ssh/authorized_keys sudo chmod -R u=rwX,o=,g= /run/media/$USER/__/root/.ssh/
Give the system a few minutes to boot, when it obtains an IP you should be able to ssh to the root account.
- Why does 'yum update' fail? :
- The system time might be incorrect, please ensure it is correct.
- How do I enable hardware virtualization on the Jetson TK1?
- At a U-Boot prompt enter 'setenv bootm_boot_mode nonsec; saveenv'. Then boot using an LPAE kernel. This needs to be repeated when you upgrade U-Boot.
- How do I enlarge the root partition?
- The images include cloud-utils-growpart to enlarge the root partition, then resize2fs/xfs_growfs to use that newly available space.
# STEP 1: enlarge the 4th partition (this example uses mmcblk0) growpart /dev/mmcblk0 4 # STEP 2: grow the fileystem to fill the available space (all images except Server) resize2fs /dev/mmcblk0p4 # OR STEP 2: for the server image (which uses xfs) xfs_growfs /dev/mmcblk0p4
Copying Fedora U-Boot to eMMC on the Beaglebone Black
To Copy the Fedora U-Boot to the eMMC on the Beaglebone Black execute the following steps:
# mount emmc boot partition mkdir /tmp/emmc; mount /dev/mmcblk1p1 /tmp/emmc # optionally back up original U-Boot mkdir /tmp/emmc/orig-uboot; cp /tmp/emmc/{MLO,u-boot.img} /tmp/emmc/orig-uboot/ # copy Fedora U-Boot cp /usr/share/uboot/am335x_boneblack/{MLO,u-boot.img} /tmp/emmc/
Once completed you will no longer need to press the "User Boot" button to select the Fedora U-Boot.