Installing Arch Linux
This article describes how to go about installing Arch Linux on a BitFolk VPS.
Overview
Arch Linux (or Arch) is a Linux-based operating system for i686 and x86-64 computers. It is composed predominantly of free and open source software, and supports community involvement.
- – Arch Linux at Wikipedia
Unlike other Linux distributions such as Debian or CentOS, Arch Linux doesn't have a bootable installer as such. Instead it is normally installed by booting a live environment and then running scripts to configure a chroot. Therefore instead of booting an installer image from the Xen Shell, the procedure for installing Arch is easier initiated from the rescue VPS.
The rescue VPS is a fully-functional Linux environment in its own right, although its storage is somewhat limited. Nevertheless, the base Arch Linux install quite easily fits within the capacity of the smallest VPS package's swap disk (typically xvdb1), so this can be used for initial storage while installing onto the main disk (typically xvda1).
Support status
Arch Linux isn't listed amongst the Linux distributions that BitFolk typically supports because we lack experience of running it on a day-to-day basis.
When customers encounter problems with their VPSes it can often help if BitFolk support can offer advice and reassurance that whatever problem they are encountering is not related to the virtualization technology in use.
Despite the fact that BitFolk VPSes are unmanaged — meaning that they are only suitable for experienced Linux administrators (or those willing to put the time in to gain experience) — without this in-depth understanding of how Arch Linux works we feel we cannot promise the usual level of support and advice.
We do not believe that there is any reason why an experienced administrator of Arch Linux cannot use Arch on BitFolk just as well as any other Linux distribution, however.
That also means that this article is just a first attempt, by someone who is not an experienced Arch Linux admin, to do an install. It may not be the best way to achieve the goal. Improvements are welcomed.
Preparation
Before proceeding you should check that you are able to:
- Connect to your xen shell.
- Boot into the rescue environment
You should also be ready to completely overwrite your existing VPS install.
As long as all of the above is the case then you should be able to install Arch Linux without requiring any assistance from support.
Installation procedure
Partitioning
The default disk layout for a BitFolk VPS is two disks (xvda and xvdb), the first of which will be the size of the requested disk space and the second of which will be equal to the size of the memory of the VPS.
Both disks will have a single partition spanning the whole disk.
The first partition of the first disk (xvda1) will be used for the root file system and the corresponding first partition on the second disk (xvdb1) will be used for swap.
At the moment booting must take place from an ext3 file system so the default at BitFolk is to have xvda1 be ext3.
If other file systems are desired then it is best to create (in the xen shell) one disk per file system and then use xvda1 as /boot and ext3. The other disks can be any other file system that your kernel supports.
This guide will focus on the usual case of just having a single disk formatted as ext3.
So, having logged in to the rescue environment, firstly partition your xvda and format the new file system:
user@rescue:~$ sudo -s
root@rescue:/home/user# fdisk -c /dev/xvda
Command (m for help): p
Disk /dev/xvda: 10.7 GB, 10737418240 bytes
107 heads, 17 sectors/track, 11529 cylinders, total 20971520 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: 0x000764fe
Device Boot Start End Blocks Id System
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-20971519, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519):
Using default value 20971519
Command (m for help): p
Disk /dev/xvda: 10.7 GB, 10737418240 bytes
107 heads, 17 sectors/track, 11529 cylinders, total 20971520 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: 0x000764fe
Device Boot Start End Blocks Id System
/dev/xvda1 2048 20971519 10484736 83 Linux
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
[ 134.218058] xvda: xvda1
[ 134.218767] blkfront: barrier: empty write xvda op failed
[ 134.218774] blkfront: xvda: barrier or flush: disabled
Syncing disks.
It is normal to see the barrier write fail. Not all layers of the storage stack support file system barriers. We will disable them for our install.
root@rescue:/home/user# mkfs.ext3 -L root /dev/xvda1
mke2fs 1.42.5 (29-Jul-2012)
Filesystem label=root
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
655360 inodes, 2621184 blocks
131059 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=2684354560
80 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632
Allocating group tables: done
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
We will abuse what is normally the swap device for a bit of extra storage in which to temporarily place the Arch Linux installation environment. It only uses about 300MiB of disk space.
root@rescue:/home/user# fdisk -c /dev/xvdb
Command (m for help): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-983039, default 2048):
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-983039, default 983039):
Using default value 983039
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
[ 444.489674] xvdb: xvdb1
[ 444.490446] blkfront: barrier: empty write xvdb op failed
[ 444.490462] blkfront: xvdb: barrier or flush: disabled
Syncing disks.
root@rescue:/home/user# mkfs.ext3 /dev/xvdb1
mke2fs 1.42.5 (29-Jul-2012)
Filesystem label=
OS type: Linux
Block size=1024 (log=0)
Fragment size=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
122880 inodes, 490496 blocks
24524 blocks (5.00%) reserved for the super user
First data block=1
Maximum filesystem blocks=67633152
60 block groups
8192 blocks per group, 8192 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185, 401409
Allocating group tables: done
Writing inode tables: done
Creating journal (8192 blocks): done
Writing superblocks and filesystem accounting information: done
Now mount the installer space onto /mnt:
root@rescue:/home/user# mount -obarrier=0 /dev/xvdb1 /mnt
[ 562.247940] EXT3-fs: barriers not enabled
[ 562.255785] kjournald starting. Commit interval 5 seconds
[ 562.268406] EXT3-fs (xvdb1): using internal journal
[ 562.268418] EXT3-fs (xvdb1): mounted filesystem with ordered data mode
Unpack the bootstrap
Arch Linux provides a bootstrap archive that contains everything needed to run the install tools. You can download it from an Arch Linux mirror and unpack it to your install space:
root@rescue:/home/user# wget -O - http://www.mirrorservice.org/sites/ftp.archlinux.org/iso/2013.08.01/archlinux-bootstrap-2013.08.01-x86_64.tar.gz | tar -C /mnt -zxf -
--2013-09-01 02:13:26-- http://www.mirrorservice.org/sites/ftp.archlinux.org/iso/2013.08.01/archlinux-bootstrap-2013.08.01-x86_64.tar.gz
Resolving www.mirrorservice.org (www.mirrorservice.org)... 212.219.56.184
Connecting to www.mirrorservice.org (www.mirrorservice.org)|212.219.56.184|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 89968015 (86M) [application/x-gzip]
Saving to: `STDOUT'
100%[======================================>] 89,968,015 4.36M/s in 17s
2013-09-01 02:13:43 (5.13 MB/s) - written to stdout [89968015/89968015]
The above command line used wget to download the bootstrap archive and pipe it to a tar command which directly unpacked it to our install space.
root@rescue:/home/user# df -h /mnt
Filesystem Size Used Avail Use% Mounted on
/dev/xvdb1 464M 260M 181M 60% /mnt
root@rescue:/home/user# ls -la /mnt
total 14
drwxr-xr-x 4 root root 1024 Sep 1 02:13 .
drwxr-xr-x 30 root root 220 Sep 1 01:58 ..
drwx------ 2 root root 12288 Sep 1 02:06 lost+found
drwxr-xr-x 16 root root 1024 Aug 1 08:20 root.x86_64
Edit the mirrorlist
The /mnt/root.x86_64/etc/pacman.d/mirrorlist file will have every mirror commented out. Edit it and uncomment a sensible UK mirror such as:
## United Kingdom
Server = http://www.mirrorservice.org/sites/ftp.archlinux.org/$repo/os/$arch
Obtain some entropy
One of the first things that the bootstrap script is going to do is use pacman-key to initialize the keyring, essential for verifying the integrity of the packages it will download. This requires entropy.
The rescue environment, being a virtual machine running from a RAM disk, doesn't have access to much entropy. We will need to provide it with some, otherwise pacman-key may never actually complete (I waited half an hour).
haveged is a convenient tool to inject some entropy into the system, so we'll install that in the rescue environment and run it.
root@rescue:/home/user# apt-get install haveged
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
haveged
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 29.5 kB of archives.
After this operation, 105 kB of additional disk space will be used.
Get:1 http://apt-cacher.lon.bitfolk.com/debian/ftp.uk.debian.org/debian/ wheezy/main haveged amd64 1.4-4 [29.5 kB]
Fetched 29.5 kB in 0s (281 kB/s)
Selecting previously unselected package haveged.
(Reading database ... 24410 files and directories currently installed.)
Unpacking haveged (from .../haveged_1.4-4_amd64.deb) ...
Processing triggers for man-db ...
Setting up haveged (1.4-4) ...
root@rescue:/home/user# haveged -w 1024
Run the bootstrap script
As per the upstream instructions the bootstrap script can now be run.
root@rescue:/home/user# /mnt/root.x86_64/bin/arch-chroot /mnt/root.x86_64/
sh-4.2# pacman-key --init
gpg: /etc/pacman.d/gnupg/trustdb.gpg: trustdb created
gpg: no ultimately trusted keys found
gpg: Generating pacman keyring master key...
gpg: key 8782D021 marked as ultimately trusted
gpg: Done
==> Updating trust database...
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
sh-4.2# pacman-key --populate archlinux
==> Appending keys from archlinux.gpg...
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
==> Locally signing trusted keys in keyring...
-> Locally signing key 0E8B644079F599DFC1DDC3973348882F6AC6A4C2...
-> Locally signing key 684148BB25B49E986A4944C55184252D824B18E8...
-> Locally signing key 44D4A033AC140143927397D47EFD567D4C7EA887...
-> Locally signing key 27FFC4769E19F096D41D9265A04F9397CDFD6BB0...
-> Locally signing key AB19265E5D7D20687D303246BA1DFB64FFF979E7...
==> Importing owner trust values...
gpg: inserting ownertrust of 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
gpg: setting ownertrust to 4
==> Disabling revoked keys in keyring...
-> Disabling key BC1FBE4D2826A0B51E47ED62E2539214C6C11350...
==> Updating trust database...
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 5 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: depth: 1 valid: 5 signed: 64 trust: 0-, 0q, 0n, 5m, 0f, 0u
gpg: depth: 2 valid: 63 signed: 3 trust: 63-, 0q, 0n, 0m, 0f, 0u
gpg: next trustdb check due at 2014-01-22
Mount your target disk
At this point you're inside a chroot system based off of the rescue environment's /mnt. There's a /mnt directory inside this chroot and that's where you need to mount your target disk that your actual Arch Linux install will be written to.
sh-4.2# mount -obarrier=0 /dev/xvda1 /mnt
[ 3432.877133] EXT3-fs: barriers not enabled
[ 3432.888424] kjournald starting. Commit interval 5 seconds
[ 3432.906229] EXT3-fs (xvda1): using internal journal
[ 3432.906239] EXT3-fs (xvda1): mounted filesystem with ordered data mode
If you had a more complicated file system layout in mind then it would be at this point that you would mount it all in the correct places under /mnt.
Create /run/shm
On recent Debian-based systems the default RAM disk can be found at /run/shm as opposed to /dev/shm, and a symlink to /run/shm is used. At the time of writing the Arch Linux pacstrap expects it to be at /dev/shm.
This is simple to work around:
sh-4.2# mkdir /run/shm
Follow the upstream install instructions
The rest of the procedure is as described in the Arch Linux documentation:
https://wiki.archlinux.org/index.php/Installation_Guide#Install_the_base_system
Every step will be reproduced here, but the exact procedure may change over time. Please study the above link for an explanation of what is being done at each step.
sh-4.2# pacstrap /mnt base
==> Creating install root at /mnt
==> Installing packages to /mnt
:: Synchronizing package databases...
core 104.3 KiB 10.2M/s 00:00 [######################] 100%
extra 1448.4 KiB 8.37M/s 00:00 [######################] 100%
community 2025.5 KiB 16.5M/s 00:00 [######################] 100%
:: There are 51 members in group base:
:: Repository core
1) bash 2) bzip2 3) coreutils 4) cronie 5) cryptsetup 6) device-mapper
7) dhcpcd 8) diffutils 9) e2fsprogs 10) file 11) filesystem
12) findutils 13) gawk 14) gcc-libs 15) gettext 16) glibc 17) grep
18) gzip 19) heirloom-mailx 20) inetutils 21) iproute2 22) iputils
23) jfsutils 24) less 25) licenses 26) linux 27) logrotate 28) lvm2
29) man-db 30) man-pages 31) mdadm 32) nano 33) netctl 34) pacman
35) pciutils 36) pcmciautils 37) perl 38) procps-ng 39) psmisc
40) reiserfsprogs 41) sed 42) shadow 43) sysfsutils
44) systemd-sysvcompat 45) tar 46) texinfo 47) usbutils 48) util-linux
49) vi 50) which 51) xfsprogs
Enter a selection (default=all):
resolving dependencies...
looking for inter-conflicts...
Packages (111): acl-2.2.52-1 archlinux-keyring-20130818-1 attr-2.4.47-1
ca-certificates-20130610-1 cracklib-2.9.0-1 curl-7.32.0-1
db-5.3.21-1 dbus-1.6.12-1 dirmngr-1.1.1-1 expat-2.1.0-2
gdbm-1.10-1 glib2-2.36.4-1 gmp-5.1.2-1 gnupg-2.0.21-1
gpgme-1.4.3-1 groff-1.22.2-5 hwids-20130607-1
iana-etc-2.30-3 iptables-1.4.19.1-1 kbd-2.0.0-1
keyutils-1.5.5-5 kmod-15-1 krb5-1.11.3-1 libarchive-3.1.2-2
libassuan-2.1.1-1 libcap-2.22-5 libffi-3.0.13-3
libgcrypt-1.5.3-1 libgpg-error-1.12-1 libgssglue-0.4-1
libksba-1.3.0-1 libldap-2.4.35-4 libpipeline-1.2.4-1
libsasl-2.1.26-4 libssh2-1.4.3-1 libtirpc-0.2.3-1
libusbx-1.0.16-2 linux-api-headers-3.10.6-1
linux-firmware-20130725-1 lzo2-2.06-1 mkinitcpio-0.15.0-1
mkinitcpio-busybox-1.21.1-2 mpfr-3.1.2-1 ncurses-5.9-5
openresolv-3.5.6-1 openssl-1.0.1.e-3
pacman-mirrorlist-20130830-1 pam-1.1.6-4 pambase-20130113-1
pcre-8.33-1 pinentry-0.8.3-1 popt-1.16-6 pth-2.0.7-4
readline-6.2.004-1 run-parts-4.4-1 systemd-204-3
sysvinit-tools-2.88-11 tzdata-2013d-1 xz-5.0.5-1
zlib-1.2.8-1 bash-4.2.045-5 bzip2-1.0.6-4 coreutils-8.21-2
cronie-1.4.9-5 cryptsetup-1.6.2-1 device-mapper-2.02.100-1
dhcpcd-6.0.5-1 diffutils-3.3-1 e2fsprogs-1.42.8-1
file-5.14-1 filesystem-2013.05-2 findutils-4.4.2-5
gawk-4.1.0-1 gcc-libs-4.8.1-3 gettext-0.18.3.1-1
glibc-2.18-3 grep-2.14-2 gzip-1.6-1 heirloom-mailx-12.5-3
inetutils-1.9.1-6 iproute2-3.10.0-1 iputils-20121221-3
jfsutils-1.1.15-4 less-458-1 licenses-20130203-1
linux-3.10.10-1 logrotate-3.8.6-1 lvm2-2.02.100-1
man-db-2.6.5-1 man-pages-3.53-1 mdadm-3.2.6-4 nano-2.2.6-2
netctl-1.3-1 pacman-4.1.2-1 pciutils-3.2.0-3
pcmciautils-018-7 perl-5.18.1-1 procps-ng-3.3.8-2
psmisc-22.20-1 reiserfsprogs-3.6.24-1 sed-4.2.2-3
shadow-4.1.5.1-6 sysfsutils-2.1.0-8 systemd-sysvcompat-204-3
tar-1.26-4 texinfo-5.1-1 usbutils-007-1 util-linux-2.23.2-1
vi-1:050325-3 which-2.20-6 xfsprogs-3.1.11-1
Total Download Size: 133.07 MiB
Total Installed Size: 427.57 MiB
:: Proceed with installation? [Y/n]
:: Retrieving packages ...
linux-api-headers-3... 690.2 KiB 8.99M/s 00:00 [######################] 100%
tzdata-2013d-1-any 251.5 KiB 11.2M/s 00:00 [######################] 100%
iana-etc-2.30-3-any 319.8 KiB 9.76M/s 00:00 [######################] 100%
filesystem-2013.05-... 8.4 KiB 0.00B/s 00:00 [######################] 100%
glibc-2.18-3-x86_64 8.2 MiB 11.5M/s 00:01 [######################] 100%
ncurses-5.9-5-x86_64 965.4 KiB 9.24M/s 00:00 [######################] 100%
readline-6.2.004-1-... 295.0 KiB 8.73M/s 00:00 [######################] 100%
bash-4.2.045-5-x86_64 792.5 KiB 8.60M/s 00:00 [######################] 100%
bzip2-1.0.6-4-x86_64 54.7 KiB 17.8M/s 00:00 [######################] 100%
gcc-libs-4.8.1-3-x86_64 930.5 KiB 8.91M/s 00:00 [######################] 100%
db-5.3.21-1-x86_64 1139.3 KiB 9.12M/s 00:00 [######################] 100%
zlib-1.2.8-1-x86_64 80.0 KiB 13.0M/s 00:00 [######################] 100%
cracklib-2.9.0-1-x86_64 244.3 KiB 11.4M/s 00:00 [######################] 100%
libgssglue-0.4-1-x86_64 29.4 KiB 0.00B/s 00:00 [######################] 100%
libtirpc-0.2.3-1-x86_64 176.6 KiB 12.3M/s 00:00 [######################] 100%
pambase-20130113-1-any 1032.0 B 0.00B/s 00:00 [######################] 100%
pam-1.1.6-4-x86_64 662.9 KiB 11.4M/s 00:00 [######################] 100%
attr-2.4.47-1-x86_64 69.2 KiB 13.5M/s 00:00 [######################] 100%
acl-2.2.52-1-x86_64 139.0 KiB 17.0M/s 00:00 [######################] 100%
gmp-5.1.2-1-x86_64 450.8 KiB 1587K/s 00:00 [######################] 100%
libcap-2.22-5-x86_64 36.3 KiB 2.73M/s 00:00 [######################] 100%
coreutils-8.21-2-x86_64 2.1 MiB 19.0M/s 00:00 [######################] 100%
run-parts-4.4-1-x86_64 24.6 KiB 0.00B/s 00:00 [######################] 100%
cronie-1.4.9-5-x86_64 59.8 KiB 0.00B/s 00:00 [######################] 100%
expat-2.1.0-2-x86_64 103.5 KiB 0.00B/s 00:00 [######################] 100%
dbus-1.6.12-1-x86_64 420.7 KiB 41.1M/s 00:00 [######################] 100%
pcre-8.33-1-x86_64 1031.9 KiB 17.4M/s 00:00 [######################] 100%
libffi-3.0.13-3-x86_64 28.9 KiB 0.00B/s 00:00 [######################] 100%
glib2-2.36.4-1-x86_64 1990.7 KiB 22.3M/s 00:00 [######################] 100%
kbd-2.0.0-1-x86_64 1077.3 KiB 15.7M/s 00:00 [######################] 100%
kmod-15-1-x86_64 103.2 KiB 20.1M/s 00:00 [######################] 100%
hwids-20130607-1-any 289.7 KiB 18.9M/s 00:00 [######################] 100%
libgpg-error-1.12-1... 63.9 KiB 31.2M/s 00:00 [######################] 100%
libgcrypt-1.5.3-1-x... 308.9 KiB 15.1M/s 00:00 [######################] 100%
shadow-4.1.5.1-6-x86_64 1049.7 KiB 10.1M/s 00:00 [######################] 100%
util-linux-2.23.2-1... 1739.1 KiB 14.0M/s 00:00 [######################] 100%
xz-5.0.5-1-x86_64 226.4 KiB 18.4M/s 00:00 [######################] 100%
systemd-204-3-x86_64 2.2 MiB 12.6M/s 00:00 [######################] 100%
device-mapper-2.02.... 163.2 KiB 9.96M/s 00:00 [######################] 100%
popt-1.16-6-x86_64 53.7 KiB 17.5M/s 00:00 [######################] 100%
cryptsetup-1.6.2-1-... 182.5 KiB 12.7M/s 00:00 [######################] 100%
dhcpcd-6.0.5-1-x86_64 96.0 KiB 18.7M/s 00:00 [######################] 100%
diffutils-3.3-1-x86_64 173.7 KiB 12.1M/s 00:00 [######################] 100%
e2fsprogs-1.42.8-1-... 725.2 KiB 10.4M/s 00:00 [######################] 100%
file-5.14-1-x86_64 190.5 KiB 7.44M/s 00:00 [######################] 100%
findutils-4.4.2-5-x... 370.8 KiB 7.24M/s 00:00 [######################] 100%
mpfr-3.1.2-1-x86_64 342.7 KiB 7.44M/s 00:00 [######################] 100%
gawk-4.1.0-1-x86_64 891.4 KiB 7.32M/s 00:00 [######################] 100%
gettext-0.18.3.1-1-... 2.1 MiB 8.83M/s 00:00 [######################] 100%
grep-2.14-2-x86_64 194.1 KiB 11.8M/s 00:00 [######################] 100%
less-458-1-x86_64 90.2 KiB 17.6M/s 00:00 [######################] 100%
gzip-1.6-1-x86_64 77.4 KiB 15.1M/s 00:00 [######################] 100%
gdbm-1.10-1-x86_64 81.4 KiB 13.2M/s 00:00 [######################] 100%
perl-5.18.1-1-x86_64 12.9 MiB 12.2M/s 00:01 [######################] 100%
openssl-1.0.1.e-3-x... 2.5 MiB 12.5M/s 00:00 [######################] 100%
libsasl-2.1.26-4-x86_64 134.7 KiB 16.4M/s 00:00 [######################] 100%
libldap-2.4.35-4-x86_64 394.5 KiB 13.8M/s 00:00 [######################] 100%
keyutils-1.5.5-5-x86_64 57.6 KiB 4.33M/s 00:00 [######################] 100%
krb5-1.11.3-1-x86_64 1074.1 KiB 10.9M/s 00:00 [######################] 100%
heirloom-mailx-12.5... 205.3 KiB 12.5M/s 00:00 [######################] 100%
inetutils-1.9.1-6-x... 247.2 KiB 14.2M/s 00:00 [######################] 100%
iptables-1.4.19.1-1... 247.5 KiB 14.2M/s 00:00 [######################] 100%
iproute2-3.10.0-1-x... 467.4 KiB 12.7M/s 00:00 [######################] 100%
sysfsutils-2.1.0-8-... 28.9 KiB 0.00B/s 00:00 [######################] 100%
iputils-20121221-3-... 73.8 KiB 24.0M/s 00:00 [######################] 100%
jfsutils-1.1.15-4-x... 167.5 KiB 14.9M/s 00:00 [######################] 100%
licenses-20130203-1-any 59.4 KiB 29.0M/s 00:00 [######################] 100%
linux-firmware-2013... 18.3 MiB 11.6M/s 00:02 [######################] 100%
mkinitcpio-busybox-... 150.6 KiB 16.3M/s 00:00 [######################] 100%
lzo2-2.06-1-x86_64 73.5 KiB 35.9M/s 00:00 [######################] 100%
libarchive-3.1.2-2-... 621.8 KiB 12.4M/s 00:00 [######################] 100%
mkinitcpio-0.15.0-1-any 35.2 KiB 17.2M/s 00:00 [######################] 100%
linux-3.10.10-1-x86_64 46.3 MiB 10.4M/s 00:04 [######################] 100%
logrotate-3.8.6-1-x... 31.8 KiB 15.5M/s 00:00 [######################] 100%
lvm2-2.02.100-1-x86_64 737.0 KiB 10.3M/s 00:00 [######################] 100%
groff-1.22.2-5-x86_64 1757.9 KiB 11.7M/s 00:00 [######################] 100%
libpipeline-1.2.4-1... 35.0 KiB 0.00B/s 00:00 [######################] 100%
man-db-2.6.5-1-x86_64 364.4 KiB 16.2M/s 00:00 [######################] 100%
man-pages-3.53-1-any 4.7 MiB 14.1M/s 00:00 [######################] 100%
mdadm-3.2.6-4-x86_64 272.2 KiB 15.6M/s 00:00 [######################] 100%
nano-2.2.6-2-x86_64 300.0 KiB 17.2M/s 00:00 [######################] 100%
openresolv-3.5.6-1-any 15.6 KiB 0.00B/s 00:00 [######################] 100%
netctl-1.3-1-any 32.2 KiB 0.00B/s 00:00 [######################] 100%
sed-4.2.2-3-x86_64 123.2 KiB 20.1M/s 00:00 [######################] 100%
ca-certificates-201... 145.4 KiB 17.7M/s 00:00 [######################] 100%
libssh2-1.4.3-1-x86_64 186.0 KiB 11.3M/s 00:00 [######################] 100%
curl-7.32.0-1-x86_64 524.4 KiB 11.1M/s 00:00 [######################] 100%
pth-2.0.7-4-x86_64 75.9 KiB 14.8M/s 00:00 [######################] 100%
libksba-1.3.0-1-x86_64 111.3 KiB 13.6M/s 00:00 [######################] 100%
libassuan-2.1.1-1-x... 78.4 KiB 15.3M/s 00:00 [######################] 100%
pinentry-0.8.3-1-x86_64 96.2 KiB 15.7M/s 00:00 [######################] 100%
dirmngr-1.1.1-1-x86_64 169.0 KiB 11.8M/s 00:00 [######################] 100%
gnupg-2.0.21-1-x86_64 1518.9 KiB 9.04M/s 00:00 [######################] 100%
gpgme-1.4.3-1-x86_64 205.4 KiB 8.02M/s 00:00 [######################] 100%
pacman-mirrorlist-2... 2.8 KiB 0.00B/s 00:00 [######################] 100%
archlinux-keyring-2... 396.0 KiB 6.91M/s 00:00 [######################] 100%
pacman-4.1.2-1-x86_64 626.0 KiB 7.37M/s 00:00 [######################] 100%
pciutils-3.2.0-3-x86_64 83.5 KiB 16.3M/s 00:00 [######################] 100%
pcmciautils-018-7-x... 19.7 KiB 0.00B/s 00:00 [######################] 100%
procps-ng-3.3.8-2-x... 213.2 KiB 9.46M/s 00:00 [######################] 100%
psmisc-22.20-1-x86_64 90.3 KiB 11.0M/s 00:00 [######################] 100%
reiserfsprogs-3.6.2... 203.7 KiB 7.37M/s 00:00 [######################] 100%
sysvinit-tools-2.88... 25.8 KiB 0.00B/s 00:00 [######################] 100%
systemd-sysvcompat-... 5.7 KiB 0.00B/s 00:00 [######################] 100%
tar-1.26-4-x86_64 565.0 KiB 12.8M/s 00:00 [######################] 100%
texinfo-5.1-1-x86_64 1105.3 KiB 23.0M/s 00:00 [######################] 100%
libusbx-1.0.16-2-x86_64 49.2 KiB 0.00B/s 00:00 [######################] 100%
usbutils-007-1-x86_64 51.9 KiB 0.00B/s 00:00 [######################] 100%
vi-1:050325-3-x86_64 141.4 KiB 46.0M/s 00:00 [######################] 100%
which-2.20-6-x86_64 13.8 KiB 0.00B/s 00:00 [######################] 100%
xfsprogs-3.1.11-1-x... 621.9 KiB 21.7M/s 00:00 [######################] 100%
(111/111) checking keys in keyring [######################] 100%
(111/111) checking package integrity [######################] 100%
(111/111) loading package files [######################] 100%
(111/111) checking for file conflicts [######################] 100%
(111/111) checking available disk space [######################] 100%
( 1/111) installing linux-api-headers [######################] 100%
( 2/111) installing tzdata [######################] 100%
( 3/111) installing iana-etc [######################] 100%
( 4/111) installing filesystem [######################] 100%
warning: directory permissions differ on /mnt/sys/
filesystem: 755 package: 555
( 5/111) installing glibc [######################] 100%
( 6/111) installing ncurses [######################] 100%
( 7/111) installing readline [######################] 100%
( 8/111) installing bash [######################] 100%
( 9/111) installing bzip2 [######################] 100%
( 10/111) installing gcc-libs [######################] 100%
( 11/111) installing db [######################] 100%
( 12/111) installing zlib [######################] 100%
( 13/111) installing cracklib [######################] 100%
( 14/111) installing libgssglue [######################] 100%
( 15/111) installing libtirpc [######################] 100%
( 16/111) installing pambase [######################] 100%
( 17/111) installing pam [######################] 100%
( 18/111) installing attr [######################] 100%
( 19/111) installing acl [######################] 100%
( 20/111) installing gmp [######################] 100%
( 21/111) installing libcap [######################] 100%
( 22/111) installing coreutils [######################] 100%
( 23/111) installing run-parts [######################] 100%
( 24/111) installing cronie [######################] 100%
Optional dependencies for cronie
pm-utils: defer anacron on battery power
smtp-server: send job output via email
smtp-forwarder: forward job output to email server
( 25/111) installing expat [######################] 100%
( 26/111) installing dbus [######################] 100%
Optional dependencies for dbus
libx11: dbus-launch support
( 27/111) installing pcre [######################] 100%
( 28/111) installing libffi [######################] 100%
( 29/111) installing glib2 [######################] 100%
Optional dependencies for glib2
python2: for gdbus-codegen and gtester-report
elfutils: gresource inspection tool
( 30/111) installing kbd [######################] 100%
( 31/111) installing kmod [######################] 100%
( 32/111) installing hwids [######################] 100%
( 33/111) installing libgpg-error [######################] 100%
( 34/111) installing libgcrypt [######################] 100%
( 35/111) installing shadow [######################] 100%
( 36/111) installing util-linux [######################] 100%
( 37/111) installing xz [######################] 100%
( 38/111) installing systemd [######################] 100%
Initializing machine ID from random generator.
ln -s '/usr/lib/systemd/system/getty@.service' '/etc/systemd/system/getty.target
.wants/getty@tty1.service'
:: Append 'init=/usr/lib/systemd/systemd' to your kernel command line in your
bootloader to replace sysvinit with systemd, or install systemd-sysvcompat
Optional dependencies for systemd
cryptsetup: required for encrypted block devices [pending]
libmicrohttpd: systemd-journal-gatewayd
quota-tools: kernel-level quota management
python: systemd library bindings
systemd-sysvcompat: symlink package to provide sysvinit binaries [pending]
( 39/111) installing device-mapper [######################] 100%
( 40/111) installing popt [######################] 100%
( 41/111) installing cryptsetup [######################] 100%
( 42/111) installing dhcpcd [######################] 100%
( 43/111) installing diffutils [######################] 100%
( 44/111) installing e2fsprogs [######################] 100%
( 45/111) installing file [######################] 100%
( 46/111) installing findutils [######################] 100%
( 47/111) installing mpfr [######################] 100%
( 48/111) installing gawk [######################] 100%
( 49/111) installing gettext [######################] 100%
Optional dependencies for gettext
cvs: for autopoint tool
( 50/111) installing grep [######################] 100%
( 51/111) installing less [######################] 100%
( 52/111) installing gzip [######################] 100%
( 53/111) installing gdbm [######################] 100%
( 54/111) installing perl [######################] 100%
( 55/111) installing openssl [######################] 100%
Optional dependencies for openssl
ca-certificates [pending]
( 56/111) installing libsasl [######################] 100%
( 57/111) installing libldap [######################] 100%
( 58/111) installing keyutils [######################] 100%
( 59/111) installing krb5 [######################] 100%
( 60/111) installing heirloom-mailx [######################] 100%
Optional dependencies for heirloom-mailx
smtp-forwarder: for sending mail
( 61/111) installing inetutils [######################] 100%
( 62/111) installing iptables [######################] 100%
( 63/111) installing iproute2 [######################] 100%
Optional dependencies for iproute2
linux-atm: ATM support
( 64/111) installing sysfsutils [######################] 100%
( 65/111) installing iputils [######################] 100%
Optional dependencies for iputils
xinetd: for tftpd
( 66/111) installing jfsutils [######################] 100%
( 67/111) installing licenses [######################] 100%
( 68/111) installing linux-firmware [######################] 100%
( 69/111) installing mkinitcpio-busybox [######################] 100%
( 70/111) installing lzo2 [######################] 100%
( 71/111) installing libarchive [######################] 100%
( 72/111) installing mkinitcpio [######################] 100%
Optional dependencies for mkinitcpio
xz: Use lzma or xz compression for the initramfs image [pending]
bzip2: Use bzip2 compression for the initramfs image [pending]
lzop: Use lzo compression for the initramfs image
mkinitcpio-nfs-utils: Support for root filesystem on NFS
( 73/111) installing linux [######################] 100%
>>> Updating module dependencies. Please wait ...
>>> Generating initial ramdisk, using mkinitcpio. Please wait...
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 3.10.10-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [autodetect]
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 3.10.10-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [modconf]
-> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: bfa
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: smsmdtv
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux-fallback.img
==> Image generation successful
Optional dependencies for linux
crda: to set the correct wireless channels of your country
( 74/111) installing logrotate [######################] 100%
Optional dependencies for logrotate
cron: scheduled log rotation
( 75/111) installing lvm2 [######################] 100%
( 76/111) installing groff [######################] 100%
Optional dependencies for groff
netpbm: for use together with man -H command interaction in browsers
psutils: for use together with man -H command interaction in browsers
libxaw: for gxditview
( 77/111) installing libpipeline [######################] 100%
( 78/111) installing man-db [######################] 100%
it's recommended to create an initial
database running as root:
"/usr/bin/mandb --quiet"
Optional dependencies for man-db
gzip [pending]
( 79/111) installing man-pages [######################] 100%
( 80/111) installing mdadm [######################] 100%
( 81/111) installing nano [######################] 100%
( 82/111) installing openresolv [######################] 100%
( 83/111) installing netctl [######################] 100%
Optional dependencies for netctl
dialog: for the menu based wifi assistant
dhclient: for DHCP support (or dhcpcd)
dhcpcd: for DHCP support (or dhclient) [pending]
wpa_supplicant: for wireless networking support
ifplugd: for automatic wired connections through netctl-ifplugd
wpa_actiond: for automatic wireless connections through netctl-auto
ifenslave: for bond connections
ppp: for pppoe connections
( 84/111) installing sed [######################] 100%
( 85/111) installing ca-certificates [######################] 100%
( 86/111) installing libssh2 [######################] 100%
( 87/111) installing curl [######################] 100%
( 88/111) installing pth [######################] 100%
( 89/111) installing libksba [######################] 100%
( 90/111) installing libassuan [######################] 100%
( 91/111) installing pinentry [######################] 100%
Optional dependencies for pinentry
gtk2: for gtk2 backend
qt4: for qt4 backend
( 92/111) installing dirmngr [######################] 100%
( 93/111) installing gnupg [######################] 100%
Optional dependencies for gnupg
curl: gpg2keys_curl [pending]
libldap: gpg2keys_ldap [pending]
libusb-compat: scdaemon
( 94/111) installing gpgme [######################] 100%
( 95/111) installing pacman-mirrorlist [######################] 100%
( 96/111) installing archlinux-keyring [######################] 100%
( 97/111) installing pacman [######################] 100%
>>> Run `pacman-key --init; pacman-key --populate archlinux`
>>> to import the data required by pacman for package verification.
>>> See: https://www.archlinux.org/news/having-pacman-verify-packages
Optional dependencies for pacman
fakeroot: for makepkg usage as normal user
( 98/111) installing pciutils [######################] 100%
( 99/111) installing pcmciautils [######################] 100%
(100/111) installing procps-ng [######################] 100%
(101/111) installing psmisc [######################] 100%
(102/111) installing reiserfsprogs [######################] 100%
(103/111) installing sysvinit-tools [######################] 100%
(104/111) installing systemd-sysvcompat [######################] 100%
(105/111) installing tar [######################] 100%
(106/111) installing texinfo [######################] 100%
(107/111) installing libusbx [######################] 100%
(108/111) installing usbutils [######################] 100%
Optional dependencies for usbutils
python2: for lsusb.py usage
coreutils: for lsusb.py usage [pending]
(109/111) installing vi [######################] 100%
Optional dependencies for vi
heirloom-mailx: used by the preserve command for notification [pending]
(110/111) installing which [######################] 100%
(111/111) installing xfsprogs [######################] 100%
sh-4.2# genfstab /mnt >> /mnt/etc/fstab
sh-4.2# arch-chroot /mnt
sh-4.2# echo 'archtest1' > /etc/hostname
sh-4.2# ln -s /usr/share/zoneinfo/UTC /etc/localtime
sh-4.2# sed -i -e 's/^#en_GB.UTF-8/en_GB.UTF-8/' /etc/locale.gen
sh-4.2# locale-gen
Generating locales...
en_GB.UTF-8... done
Generation complete.
sh-4.2# mkinitcpio -p linux
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 3.10.10-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [autodetect]
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 3.10.10-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [modconf]
-> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: bfa
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: smsmdtv
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux-fallback.img
==> Image generation successful
sh-4.2# passwd root
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Configure the network
We will configure the network as a simple static ethernet configuration. You can obtain the address information either from the rescue environment or from your Panel account.
The following example details will be used in this guide:
IPv4 address | 85.119.82.225 |
---|---|
IPv4 netmask | 255.255.248.0 (/21) |
IPv4 gateway | 85.119.80.1 |
IPv6 address | 2001:ba8:1f1:f1d7::2/64 |
IPv6 gateway | 2001:ba8:1f1:f1d7::1 |
Name servers |
|
sh-4.2# cat > /etc/netctl/bitfolk
Description='BitFolk static Ethernet'
Interface=eth0
Connection=ethernet
IP=static
Address=('85.119.82.225/21')
Gateway='85.119.80.1'
DNS=('85.119.80.232' '85.119.80.233')
IP6=static
Address6=('2001:ba8:1f1:f1d7::2/64')
Gateway6='2001:ba8:1f1:f1d7::1'
Hit Ctrl+d.
sh-4.2# netctl enable bitfolk
ln -s '/etc/systemd/system/netctl@bitfolk.service' '/etc/systemd/system/multi-user.target.wants/netctl@bitfolk.service'
Running in chroot, ignoring request.
Boot loader
No actual boot loader package is needed, but a dummy /boot/grub/menu.lst file is necessary so that the VPS can be booted by Xen.
sh-4.2# mkdir -vp /boot/grub
mkdir: created directory '/boot/grub'
sh-4.2# cat > /boot/grub/menu.lst
title Arch Linux [/boot/vmlinuz-linux]
root (hd0,0)
kernel /boot/vmlinuz-linux root=/dev/xvda1 ro
initrd /boot/initramfs-linux.img
Hit Ctrl+d.
Exit
Exit out of the several layers of chroot.
sh-4.2# exit
sh-4.2# exit
umount: /mnt/root.x86_64: device is busy.
(In some cases useful info about processes that use
the device is found by lsof(8) or fuser(1))
Halt and boot Arch Linux
root@rescue:/home/user# halt
Broadcast message from root@rescue (hvc0) (Sun Sep 1 03:47:39 2013):
The system is going down for system halt NOW!
INIT: Switching to runlevel: 0
INIT: Sending processes the TERM signal
[info] Using makefile-style concurrent boot in runlevel 0.
[ ok ] Stopping the Winbind daemon: winbind.
[ ok ] Asking all remaining processes to terminate...done.
[ ok ] All processes ended within 2 seconds...done.
[ ok ] Stopping enhanced syslogd: rsyslogd.
[ ok ] Deconfiguring network interfaces...done.
[ ok ] Deactivating swap...done.
[ ok ] Unmounting local filesystems...done.
[info] Will now halt.
[ 6541.328014] xenbus_dev_shutdown: device/console/0: Initialising != Connected, skipping
[ 6541.679129] System halted.
xen-shell> boot
pyGRUB version 0.6
┌────────────────────────────────────────────────────────────────────────┐
│ Arch Linux [/boot/vmlinuz-linux] │
│ │
│ │
│ │
│ │
│ │
│ │
│ │
└────────────────────────────────────────────────────────────────────────┘
Use the ^ and v keys to select which entry is highlighted.
Press enter to boot the selected OS. 'e' to edit the
commands before booting, 'a' to modify the kernel arguments
before booting, or 'c' for a command line.
Started domain archtest1
[ 1.115662] i8042: No controller found
[ 1.176610] drivers/rtc/hctosys.c: unable to open rtc device (rtc0)
:: running early hook [udev]
:: running hook [udev]
:: Triggering uevents...
:: performing fsck on '/dev/xvda1'
root: clean, 29156/655360 files, 242597/2621184 blocks
********************** WARNING **********************
* *
* The root device is not configured to be mounted *
* read-write! It may be fsck'd again later. *
* *
*****************************************************
:: mounting '/dev/xvda1' on real root
:: running cleanup hook [udev]
Welcome to Arch Linux!
Expecting device dev-hvc0.device...
Expecting device sys-subsystem-net-devices-eth0.device...
[ OK ] Reached target Remote File Systems.
[ OK ] Listening on /dev/initctl Compatibility Named Pipe.
[ OK ] Listening on LVM2 metadata daemon socket.
[ OK ] Listening on Device-mapper event daemon FIFOs.
[ OK ] Listening on Delayed Shutdown Socket.
[ OK ] Set up automount Arbitrary Executable File Formats F...utomount Point.
[ OK ] Listening on Journal Socket.
Starting Journal Service...
[ OK ] Started Journal Service.
[ OK ] Reached target Paths.
Mounting POSIX Message Queue File System...
Starting Setup Virtual Console...
Starting Create static device nodes in /dev...
Starting Apply Kernel Variables...
Mounting Configuration File System...
[ OK ] Reached target Encrypted Volumes.
Mounting Huge Pages File System...
[ OK ] Listening on udev Kernel Socket.
[ OK ] Listening on udev Control Socket.
Starting udev Coldplug all Devices...
Mounting Debug File System...
[ OK ] Reached target Swap.
Starting File System Check on Root Device...
Mounting Temporary Directory...
[ OK ] Started Setup Virtual Console.
[ OK ] Mounted POSIX Message Queue File System.
[ OK ] Started Apply Kernel Variables.
[ OK ] Mounted Configuration File System.
[ OK ] Mounted Huge Pages File System.
[ OK ] Mounted Debug File System.
[ OK ] Mounted Temporary Directory.
[ OK ] Started udev Coldplug all Devices.
[ OK ] Started Create static device nodes in /dev.
Starting udev Kernel Device Manager...
[ OK ] Started udev Kernel Device Manager.
systemd-fsck[84]: root: clean, 29165/655360 files, 243592/2621184 blocks
[ OK ] Started File System Check on Root Device.
Starting Remount Root and Kernel File Systems...
[ OK ] Started Remount Root and Kernel File Systems.
[ OK ] Reached target Local File Systems (Pre).
[ OK ] Reached target Local File Systems.
Starting Recreate Volatile Files and Directories...
Starting Trigger Flushing of Journal to Persistent Storage...
Starting Load Random Seed...
[ OK ] Found device /dev/hvc0.
[ OK ] Started Recreate Volatile Files and Directories.
Starting Update UTMP about System Reboot/Shutdown...
[ OK ] Started Trigger Flushing of Journal to Persistent Storage.
[ OK ] Started Update UTMP about System Reboot/Shutdown.
[ OK ] Started Load Random Seed.
[ OK ] Reached target System Initialization.
[ OK ] Reached target Timers.
[ OK ] Listening on D-Bus System Message Bus Socket.
[ OK ] Reached target Sockets.
[ OK ] Reached target Basic System.
Starting Permit User Sessions...
Starting Login Service...
Starting D-Bus System Message Bus...
[ OK ] Started D-Bus System Message Bus.
[ OK ] Started Permit User Sessions.
Starting Getty on tty1...
[ OK ] Started Getty on tty1.
Starting Serial Getty on hvc0...
[ OK ] Started Serial Getty on hvc0.
[ OK ] Reached target Login Prompts.
[ OK ] Found device /sys/subsystem/net/devices/eth0.
Starting BitFolk static Ethernet...
[ OK ] Started Login Service.
[ OK ] Started BitFolk static Ethernet.
[ OK ] Reached target Multi-User System.
[ OK ] Reached target Graphical Interface.
Arch Linux 3.10.10-1-ARCH (hvc0)
archtest1 login: root
Password:
[root@archtest1 ~]#