How to install Arch Linux on the Cubox

Here’s a good way to install Arch Linux on the Cubox -i Pro. It is referred to as the mini-installer and is basically a bare bones linux install which well fetch and install your distribution. Pretty cool. There is a README file in the root directory and while it is technically correct it is missing some nuances that a first timer or noobie might find hard to follow.

First of all download the mini-installer.

You can find it here. Download the files busybox.tar.xz and the README.

Now go to this link. The README files are different and this is the better of the two. Anyway give these a brief read.

What you’ll need is a micro SD card (4gig minimum, Class 4 minimum)
A Cubox -i
Another computer to run these commands on.
And you’ll need WIRED ethernet. No wireless yet.

First take your SD card to another computer. The link has directions for Linux (which I couldn’t get to work) and I have a Mac so I’ll tell you how I did it. This should also work on Linux.

Insert SD card and make sure it is blank. SD cards come with a FAT file system on them. This is okay. Now open a terminal and type:

diskutil list

Take note of your SD card. Mine is called /dev/disk1

Screen Shot 2014-02-19 at 5.43.55 AM

Pay no attention to the partitions. This card already has Arch installed. Your card layout will be different.

Now type this, but first PLEASE be sure you have the right disk number selected. CHOOSE THE WRONG ONE AND YOU’LL WRITE THIS TO YOUR HARD DRIVE ON YOUR COMPUTER. You’ve been warned.

sudo dd if=//Users/hagensieker/Downloads/busybox.img of=/dev/disk1 bs=1m

Screen Shot 2014-02-19 at 5.51.30 AM

Now the cool thing about Mac is that all I need to do is type sudo dd if=

and then I can drag the file into the terminal and it completes the whole path for you. Beats typing out a long command line. Just takes a second after you hit enter.

Eject the disk and then plug it into your Cubox -i.

Now startup and it should boot to a prompt telling you to “Hit Enter to Enter the Console” or something like that. Hit enter. You’ll see a prompt like this. #

Then it will ask you if you want to enable your ethernet. Answer
y and hit enter.

Now type

cd /root


less /root/README
(optional if you already have the readme).

Now type:

./arch-fetch

The instructions say to type arch-fetch but that didn’t work for me. You need the period and the forward slash first.

It will download some stuff and then drop back to a prompt. Now type

./arch-extract

This extracts the files. Once that is done we need to partition the disk. This is for an installed SD card only.

Before you do this type

fdisk -l

Make note of where the partition you have starts and ends. Mine starts with 2 and ends with 12. TWELWE is the magic number, remember this.

fdisk /dev/mmcblk0

Now this is the part they got me on. The instructions assume you know how to use fdisk. I haven’t used it in years.

at your prompt type

m

and it lists your fdisk options.

We want to make a new partition. so type

n

now it asks you if you want it to be logical or primary. Hit primary by typing

p

then it will ask the partition number.
2

then it will ask you where to start. Remember I said TWELVE was the magic number? Tell it to start at 13, then it will ask where to end and assumes the end of the disk. I opted for the default.


Now I could have had you delete the first partition and then install just one partition and I tried that and it didn’t work. Probably I left something out as I was still in the early stages of playing around. But what I’m doing in these instructions worked.

Anyway now you should have a partition. Time to move on.

/root/arch-chroot armv7h-root mkfs.ext4 -L arch-root /dev/mmcblk0p2 (make sure it is 2 as you are now on the second partition).

Now

mount -t ext4 /dev/mmcblk0p2 armv7h-root/mnt

Finally

/root/arch-install base linux-imx6-cubox

And this will get your Arch distro and install it.

Looking good.

Now install-boot

./install-boot /dev/mmcblk0

Once done reboot. During the boot hit any key before the 5 second timeout and you’ll see this prompt.

Cubox-i U-boot>

At that prompt type this:

setevn bootpart 2

Now enter

save

and then boot or reboot

Now Arch is booting! Bad news. You won’t be able to do anything because it is a read only filesystem.

Once booted enter

root

as the username and there is no password, it just takes you to roots prompt.

At the prompt type

mount -o remount,rw /dev/mmcblk0p2


Now type

nano /etc/fstab

and add this entry.

/dev/mmcblk0p2 / ext4 defaults,noatime 0 1

When done hit Control Key + X and it will ask you if you want to save. Press Y and then hit enter it asks if you want to write to file. Hit enter.

now enable ethernet

systemctl enable dhcpcd@.service

now reboot. Now you have ethernet and you can access the filesystem.

if you want to install X and a desktop such as LXDE (my favorite) then do

pacman -Sy
pacman -Su
pacman -S lxde xf86-video-fbdev xorg-xinit

now start LXDE by typing

xinit /usr/bin/lxsession

So okay. Now you have a functioning Arch system with ethernet and a Window Manager. To move on you can go to my
other page for basic Arch Configuration and please refer to the Arch Wiki and Cubox Wiki pages. They will always be more reliable than my pages.

And finally I was having issues with slow wifi so I connected an airport express router close to the computer and am running off ethernet. To take wifi down

ip link set wlan0 down