From Fedora Project Wiki
Cog.png
This page needs some love
This page should be revised or reconstructed to be more helpful. Problems may include being out of step with current team or project status or process.
Note.png
We need more hands on board!
We need more folks to improve the distribution process. We need YOU!

How To Make a Fedora Image on an ARM Host(Arndale)

ARM host Hardware Requirements

 RAM >= 2GB
 SSD (for swap and storage)

So we will use Arndale board(running F17) and ADATA SP900 128G SSD to make F18 image in this Wiki.


Deloying a Fedora 17 on Arndale

[17 image for Arndale Board].

Decompression the file and Flash the image to SD card:

 $ sudo dd if=F17-arndale-201304221157.img of=${DEV}

Flash u-boot to SD card:

 $ wget http://tekkamanninja.fedorapeople.org/boards/arndale/u-boot/arndale-bl1.bin
 $ wget http://tekkamanninja.fedorapeople.org/boards/arndale/u-boot/smdk5250-spl.bin
 $ wget http://tekkamanninja.fedorapeople.org/boards/arndale/u-boot/u-boot.bin
 $ sudo dd if=arndale-bl1.bin  of=${DEV} bs=512 seek=1
 $ sudo dd if=smdk5250-spl.bin of=${DEV} bs=512 seek=17
 $ sudo dd if=u-boot.bin of=${DEV} bs=512 seek=49
 $ sync

where ${DEV} can be /dev/mmcblkN or /dev/sdN.

Then insert the SD card into the Arndale and boot.

Attach a SSD to ARM host

We need a SSD for bigger swap and storage.

Format SSD into two partitions like below :

 [root@arndale-f17-v7hl fuwei]# fdisk -l /dev/sda
 
 Disk /dev/sda: 128.0 GB, 128035676160 bytes
 255 heads, 63 sectors/track, 15566 cylinders, total 250069680 sectors
 Units = sectors of 1 * 512 = 512 bytes
 Sector size (logical/physical): 512 bytes / 512 bytes
 I/O size (minimum/optimal): 512 bytes / 512 bytes
 Disk identifier: 0x6fea5476
 
    Device Boot      Start         End      Blocks   Id  System
 /dev/sda1            2048     8390655     4194304   83  Linux
 /dev/sda2         8390656   250069679   120839512   83  Linux

format 4GB swap partition and mount it

 # mkswap /dev/sda1
 # swapon /dev/sda1
 # swapoff /dev/mmcblk1p2 
 # free
              total       used       free     shared    buffers     cached
 Mem:       2062708      73120    1989588          0       3180      21252
 -/+ buffers/cache:      48688    2014020
 Swap:      4194300          0    4194300

format another partition and mount it as Extended Storage(ES)

 # mkfs.ext4 -L "es" /dev/sda2
 # mount /dev/sda2 /es/

make directory structure on Extended Storage(ES)

 [root@arndale-f17-v7hl /]# tree /es/
 /es/
 ├── lost+found
 └── scratch
     └── fuwei
         ├── arndale
         │   ├── F18
         │   │   ├── images
         │   │   └── kickstarts
         │   └── u-boot
         └── scripts


Install anaconda and lorax

For making image on ARM host, we need to install the 'patched' versions of anaconda and lorax from xpfa.

 # yum --nogpgcheck install http://dmarlin.fedorapeople.org/packages/FedoraArm/RPMS/noarch/xpfa-17-1.2.noarch.rpm
 # yum --enablerepo=xpfa install anaconda lorax

Get a kickstart file

You can download a example kickstart file from [Fedora 17 kickstart file for Arndale Board]

This kickstart file can make a F18 image in F17 ARM host for Arndale Board.

Put it to /es/scratch/fuwei/arndale/F18/kickstarts/

Building image using livemedia-creator

The shell script for making image is below:

 #!/bin/sh
 BUILD_TIME=date +%Y%m%d%H%M
 
 	livemedia-creator \
 	--no-virt --make-disk \
 	--armplatform=None \
 	--tmp=/es/scratch/fuwei/arndale/F18/images/ \
 	--image-name=F18-arndale-${BUILD_TIME}.img \
 	--ks=/es/scratch/fuwei/arndale/F18/kickstarts/F18-arndale-console_in_f17.ks

Put it into /es/scratch/fuwei/scripts, add execute permission and execute it.

Note: If you met any error in build procedure. you had better to reboot the board and execute "anaconda-cleanup", then try again.