Difference between revisions of "HowTo Install Arch Linux"
(→Flavor) |
|||
(31 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
− | == | + | == Installation Media == |
+ | * Get the latest Arch install disk from https://www.archlinux.org/download/ | ||
+ | * Boot from it | ||
− | Install GPT (Guid Partition Table) on the disk` | + | == Initializing the Disk == |
+ | |||
+ | Install/reinitialize GPT (Guid Partition Table) on the disk` | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | sgdisk - | + | sgdisk --zap /dev/vda |
</syntaxhighlight> | </syntaxhighlight> | ||
− | Create partition | + | Create partition 1, leave 2048 sectors blank for the syslinux bootloader, and don't specify an end size, so that it takes the rest of the drive. |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | sgdisk - | + | sgdisk --new 1:2048: /dev/vda |
</syntaxhighlight> | </syntaxhighlight> | ||
Line 16: | Line 20: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Now that you have a partition, it will show as /dev/vda1. | + | Now that you have a partition, it will show as /dev/vda1. Format The partition as ext4 |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
mkfs.ext4 /dev/vda1 -F | mkfs.ext4 /dev/vda1 -F | ||
Line 28: | Line 32: | ||
== Install Arch == | == Install Arch == | ||
− | + | Install Arch to /mnt | |
− | |||
− | |||
− | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | pacstrap /mnt base | + | pacstrap /mnt base |
</syntaxhighlight> | </syntaxhighlight> | ||
Line 39: | Line 40: | ||
Now that arch is isntalled, build a partition to mount point table, and write it to /mnt/etc/fstab | Now that arch is isntalled, build a partition to mount point table, and write it to /mnt/etc/fstab | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | genfstab | + | genfstab /mnt >> /mnt/etc/fstab |
</syntaxhighlight> | </syntaxhighlight> | ||
− | == | + | == Change Root (chroot) to Arch == |
Switch into the arch installtion. | Switch into the arch installtion. | ||
Line 49: | Line 50: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Set time Timezone | |
− | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | |||
ln -s /usr/share/zoneinfo/America/Chicago /etc/localtime | ln -s /usr/share/zoneinfo/America/Chicago /etc/localtime | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | == Prepraring to Boot == | ||
− | + | Create your initial ramdisk - The initial file system before the real one boots | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | mkinitcpio -p linux | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Install syslinux | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | pacman -S syslinux | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | == | + | Install syslinux's GPT MBR (Master Boot Record) to the root of MBR. This will sit in the 2048 of reserved space from when we partitioned the drive. |
+ | <syntaxhighlight lang="bash"> | ||
+ | dd if=/usr/lib/syslinux/bios/gptmbr.bin of=/dev/vda | ||
+ | </syntaxhighlight> | ||
− | + | Prepare the /boot folder with syslinux's modules. The .c32 files that ship with syslinux are for systems that use a bios to boot. Symlink the bios modules into syslinux's boot folder. | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | ln -s /usr/lib/syslinux/bios/*.c32 /boot/syslinux/ | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Run the syslinux extlinux installer. | |
+ | * extlinux is the filesystem variant of syslinux | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | |||
extlinux --install /boot/syslinux | extlinux --install /boot/syslinux | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | By default, syslinux tries to boot /dev/sda3. Change it to boot /dev/vda1 | |
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | sed -i 's#/dev/sda3#/dev/vda1#' /boot/syslinux/syslinux.cfg | |
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | == Reboot == | |
+ | |||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | exit | |
+ | reboot | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | == | + | === When Something Goes Wrong === |
+ | |||
+ | If something goes wrong with rebooting and you end up back on the live cd, you don't need to start over. | ||
+ | Running the following 2 commands will bring you back to your Arch Linux Environment | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | mount /dev/vda1 /mnt | |
− | + | arch-chroot /mnt | |
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
− | + | Once you are back in the Arch environment, Check the following: | |
+ | * You set the bootable flag on the partions | ||
+ | * You setup the syslinux boot loader correctly. | ||
− | + | == PS:One Flavor == | |
+ | === Salt === | ||
+ | Some settings common to most of the computers at PS:One can be applied by running the following commands: | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | pacman -S salt-zmq | ||
+ | systemctl start salt-minion | ||
+ | salt-call state.highstate | ||
+ | </syntaxhighlight> | ||
− | == | + | === Network Logins === |
− | + | Enable Network logins by joining the domain server. | |
− | + | After this command is run, the machine will support network authentication. | |
+ | <syntaxhighlight lang="bash"> | ||
+ | net ads join -U <your user name> | ||
+ | </syntaxhighlight> |
Latest revision as of 03:54, 6 September 2015
Installation Media
- Get the latest Arch install disk from https://www.archlinux.org/download/
- Boot from it
Initializing the Disk
Install/reinitialize GPT (Guid Partition Table) on the disk`
sgdisk --zap /dev/vda
Create partition 1, leave 2048 sectors blank for the syslinux bootloader, and don't specify an end size, so that it takes the rest of the drive.
sgdisk --new 1:2048: /dev/vda
For Partition 1, set the bootable flag, (flag 2)
sgdisk --attributes=1:set:2 /dev/vda
Now that you have a partition, it will show as /dev/vda1. Format The partition as ext4
mkfs.ext4 /dev/vda1 -F
Mount The partiton, so that we can install arch onto it.
mount /dev/vda1 /mnt
Install Arch
Install Arch to /mnt
pacstrap /mnt base
Now that arch is isntalled, build a partition to mount point table, and write it to /mnt/etc/fstab
genfstab /mnt >> /mnt/etc/fstab
Change Root (chroot) to Arch
Switch into the arch installtion.
arch-chroot /mnt
Set time Timezone
ln -s /usr/share/zoneinfo/America/Chicago /etc/localtime
Prepraring to Boot
Create your initial ramdisk - The initial file system before the real one boots
mkinitcpio -p linux
Install syslinux
pacman -S syslinux
Install syslinux's GPT MBR (Master Boot Record) to the root of MBR. This will sit in the 2048 of reserved space from when we partitioned the drive.
dd if=/usr/lib/syslinux/bios/gptmbr.bin of=/dev/vda
Prepare the /boot folder with syslinux's modules. The .c32 files that ship with syslinux are for systems that use a bios to boot. Symlink the bios modules into syslinux's boot folder.
ln -s /usr/lib/syslinux/bios/*.c32 /boot/syslinux/
Run the syslinux extlinux installer.
- extlinux is the filesystem variant of syslinux
extlinux --install /boot/syslinux
By default, syslinux tries to boot /dev/sda3. Change it to boot /dev/vda1
sed -i 's#/dev/sda3#/dev/vda1#' /boot/syslinux/syslinux.cfg
Reboot
exit
reboot
When Something Goes Wrong
If something goes wrong with rebooting and you end up back on the live cd, you don't need to start over. Running the following 2 commands will bring you back to your Arch Linux Environment
mount /dev/vda1 /mnt
arch-chroot /mnt
Once you are back in the Arch environment, Check the following:
- You set the bootable flag on the partions
- You setup the syslinux boot loader correctly.
PS:One Flavor
Salt
Some settings common to most of the computers at PS:One can be applied by running the following commands:
pacman -S salt-zmq
systemctl start salt-minion
salt-call state.highstate
Network Logins
Enable Network logins by joining the domain server. After this command is run, the machine will support network authentication.
net ads join -U <your user name>