Development Stuff for hardware and software configurations
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.7 KiB

installing Arch on a VM

This is a basic set of instructions for installing Arch on a virtual machine.

starting steps

Boot up the latest Arch install disk from PXE or an iso file.

Find which disk partition you are installing on. For the purpose of this documentation, the disk is /dev/vda, but it may be different.


Run parted and make a partition. This is for MBR.

parted /dev/vda
(parted) mklabel msdos
(parted) mkpart p ext4 1M 100%
(parted) quit

Create the filesystem

mkfs.ext4 /dev/vda1

Mount the filesystem.

mount /dev/vda1 /mnt

Edit the mirrorlist

vim /etc/pacman.d/mirrorlist

Add the following line:

Server =$repo/os/$arch

Pacstrap the base system (base is base system, base-devel is gcc and some build tools, vim for editor, htop for stuff, git for aur, grub for bootloader, go for yay later)

pacstrap /mnt base base-devel vim htop git grub go


Stop waiting. Install fstab

genfstab -U /mnt > /mnt/etc/fstab


arch-chroot /mnt /bin/bash

Install grub.

grub-install /dev/vda
grub-mkconfig -o /boot/grub/grub.cfg
# notice, not /dev/vda1. This is the disk, not the partition.

Set password. Use the VMSSMP for COSI infrastructure.


Configure networking. Find the network interface. Something with NO CARRIER is probably not it. It may have an IPv6 global address and perhaps a COSI IPv4 address already.

ip -c a

Change to the netctl folder, copy static ethernet example.s

cd /etc/netctl
cp examples/ethernet-static ethernet

Edit the ethernet file.

vim ethernet

Typical contents

Description='A basic statc ethernet connection'

Enable that, document IP addresses if on COSI infrastructure.

netctl enable ethernet

Edit hostname

vim /etc/hostname

We're done. Exit and reboot. Remove bootable media if applicable.


If you screw up, feel free to reboot into the live media, and then you can chroot into the system to fix it after mounting it.

Don't forget to create the cslabadmin user. openssh server is also probably good - typically the only edits are to enable Listen and Port 13699.

Random commands useful to doing things:

# create user
useradd <username>
# create group
groupadd <group>
# add user to group
gpasswd -a <username> <groupname>
# set default editor to Vim
export EDITOR=vim
# add sudo group to sudoers
# get and install yay (AUR package manager)
git clone
cd yay
makepkg -i