Skip to content

Instantly share code, notes, and snippets.

@emachado
Last active January 17, 2018 09:50
Show Gist options
  • Save emachado/9b083ef0e2f495fa4e8877c4de9d209e to your computer and use it in GitHub Desktop.
Save emachado/9b083ef0e2f495fa4e8877c4de9d209e to your computer and use it in GitHub Desktop.
Fedora 25 ARM Pandaboard install
Source
https://fedoraproject.org/wiki/Architectures/ARM/F23/Installation#Manual
Choose a disk image.
Fedora 23:
http://download.fedoraproject.org/pub/fedora/linux/releases/23/Images/armhfp/
Fedora 25:
http://fedora.c3sl.ufpr.br/linux/releases/25/Spins/armhfp/images/Fedora-Xfce-armhfp-25-1.3-sda.raw.xz
Fedora 27:
https://download.fedoraproject.org/pub/fedora/linux/releases/27/Spins/armhfp/images/Fedora-Minimal-armhfp-27-1.6-sda.raw.xz
Write the image to your media
TYPE= # options include KDE, LXDE, XFCE, SoaS, Mate and Minimal
MEDIA= #/dev/<location-of-your-media>
# for example /dev/sdc, /dev/sdg, ...
# read /var/log/messages to learn which device was assigned to your media
xzcat Fedora-$TYPE-armhfp-*.raw.xz | sudo dd of=$MEDIA; sync
After writing the image, read the new partition table and mount the root partition
# partprobe $MEDIA
PART= #/dev/<location-of-your-media><partition-number>
# this needs to be the root partition on the written media
# for example /dev/sdc3, /dev/sdg3, /dev/mmcblk0p3, ...
mkdir /tmp/root; sudo mount $PART /tmp/root
Copy the appropriate U-Boot files for your target hardware listed below.
For the Pandaboard
MEDIA= #/dev/<location-of-your-media>
# for example /dev/sdc, /dev/sdg, ...
# read /var/log/messages to learn which device was assigned to your media
sudo dd if=/tmp/root/usr/share/uboot/omap4_panda/MLO of=$MEDIA count=1 seek=1 conv=notrunc bs=128k
sudo dd if=/tmp/root/usr/share/uboot/omap4_panda/u-boot.img of=$MEDIA count=2 seek=1 conv=notrunc bs=384k
https://fedoraproject.org/wiki/Architectures/ARM/F25/Installation#Known_Issues_.26_Usage_Tips
Pandaboard requires 'cpuidle.off=1' on the kernel args. Please edit the extlinux.conf and add this or the system will not boot.
On Fedora 27, the installation/setup should be finished at the first boot (config language, timezone, network, password, user creation). For ssh access, see more instructions below.
* How do I enlarge the root partition?
The images include cloud-utils-growpart to enlarge the root partition, then resize2fs to use that newly available space.
# enlarge the 4th partition (this example uses mmcblk0)
sudo growpart /dev/mmcblk0 4
# grow the fileystem to fill the available space
sudo resize2fs /dev/mmcblk0p4
* Moving Fedora ARM from SSD/MMC card to USB harddrive
https://fedoraproject.org/wiki/Architectures/ARM/Migration_from_SSD_to_USB
original
/dev/mmcblk0: PTUUID="384b184b" PTTYPE="dos"
/dev/mmcblk0p1: SEC_TYPE="msdos" UUID="A9FE-A9FB" TYPE="vfat" PARTUUID="384b184b-01"
/dev/mmcblk0p2: LABEL="_/boot" UUID="f88f5f89-26b0-4a26-9219-a15c213b32c1" TYPE="ext4" PARTUUID="384b184b-02"
/dev/mmcblk0p3: LABEL="_swap" UUID="baf89903-4688-4715-b6c2-0eae50bbf1e2" TYPE="swap" PARTUUID="384b184b-03"
/dev/mmcblk0p4: LABEL="_/" UUID="eca45483-d548-4444-892d-0754f1d401bc" TYPE="ext4" PARTUUID="384b184b-04"
/dev/sdb1: UUID="FC4EC23A4EC1ED88" TYPE="ntfs" PARTUUID="acdd9b22-01"
/dev/sdb2: LABEL="backup" UUID="5281ea6b-4852-49d1-8213-7ce2403bdb2e" TYPE="reiserfs" PARTUUID="acdd9b22-02"
/dev/sdb3: LABEL="_/" UUID="d1e20395-0b44-4a0e-8fd1-dbe82f92e161" TYPE="ext4" PARTUUID="acdd9b22-03"
/dev/sdb4: LABEL="_swap" UUID="6a1aa1b9-8c17-4705-9fdb-5f19c8ad4c0d" TYPE="swap" PARTUUID="acdd9b22-04"
sudo tune2fs /dev/sdb4 -U baf89903-4688-4715-b6c2-0eae50bbf1e2
sudo mkswap -U baf89903-4688-4715-b6c2-0eae50bbf1e2 -L _swap /dev/sdb4
sudo tune2fs /dev/mmcblk0p4 -U d1e20395-0b44-4a0e-8fd1-dbe82f92e161
sudo mkswap -U 6a1aa1b9-8c17-4705-9fdb-5f19c8ad4c0d -L _swap /dev/mmcblk0p3
new:
/dev/sdb1: UUID="FC4EC23A4EC1ED88" TYPE="ntfs" PARTUUID="acdd9b22-01"
/dev/sdb2: LABEL="backup" UUID="5281ea6b-4852-49d1-8213-7ce2403bdb2e" TYPE="reiserfs" PARTUUID="acdd9b22-02"
/dev/sdb3: LABEL="_/" UUID="eca45483-d548-4444-892d-0754f1d401bc" TYPE="ext4" PARTUUID="acdd9b22-03"
/dev/sdb4: LABEL="_swap" UUID="baf89903-4688-4715-b6c2-0eae50bbf1e2" TYPE="swap" PARTUUID="acdd9b22-04"
/dev/mmcblk0p1: SEC_TYPE="msdos" UUID="A9FE-A9FB" TYPE="vfat" PARTUUID="384b184b-01"
/dev/mmcblk0p2: LABEL="_/boot" UUID="f88f5f89-26b0-4a26-9219-a15c213b32c1" TYPE="ext4" PARTUUID="384b184b-02"
/dev/mmcblk0p3: LABEL="_swap" UUID="6a1aa1b9-8c17-4705-9fdb-5f19c8ad4c0d" TYPE="swap" PARTUUID="384b184b-03"
/dev/mmcblk0p4: LABEL="_/" UUID="d1e20395-0b44-4a0e-8fd1-dbe82f92e161" TYPE="ext4" PARTUUID="384b184b-04"
/dev/mmcblk0: PTUUID="384b184b" PTTYPE="dos"
* 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.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment