Installera Arch Linux på RAID och LVM

From Peters wiki
Jump to navigation Jump to search

Denna guide visar hur man installerar Arch Linux 2009.02 med mjukvaruraid och LVM. I guiden använder vi oss av 3 st SATA hårddiskar i RAID5. Men eftersom GRUB inte fixar varken RAID5 eller LVM så skapas en liten /boot partition på alla 3 diskar som sätts upp i en RAID1. De övriga partitionerna som swap och / skapas via LVM.


Notering: Arch Linux 2009.08 stödjer LVM under installationen. Det verkar dock som det finns lite problem som kan få installationsprogrammet att avslutas.


Förberedelser före installationen

Boota upp via installations CDn eller USB minnet som vanligt. Kör kommandot km för att ange rätt tangentbordslayout.

Skapa partitioner

Skapa partitionerna med t.ex. fdisk på hårddiskarna innan /arch/setup startas. I vårt exempel skapar vi en partition på 128MB först på varje hårddisk. Markera denna som bootbar och sätt typen till 0xfd. Skapa sedan en partition av resten av disken. Sätt typen på denna även till 0xfd. Gör likadant på alla 3 diskar.

Att testa: Detta kommando borde kunna användas för att kopiera en partitionstabell för att få 3 st identiska diskar:

root # sfdisk -d /dev/sda | sfdisk /dev/sdb

Kontrollera att alla diskar blev likadana:

root # fdisk -l /dev/sda /dev/sdb /dev/sdc

Skapa raid för /boot (RAID1) och LVM (RAID5)

Ladda in nödvändiga raid moduler i kärnan:

root # modprobe raid1
root #
modprobe raid456

Skapa RAID1 arrayen för /boot:

root # mdadm -C /dev/md0 --level=1 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1

Skapa RAID5 arrayen för LVM:

root # mdadm -C /dev/md1 --level=5 --raid-devices=3 /dev/sda2 /dev/sdb2 /dev/sdc2

Raiden börjar nu synkas. Den behöver inte gå klart innan man fortsätter med installationen eller bootar systemet.

Skapa logiska volymer

Ladda modulen för LVM:

root # modprobe dm-mod

Initiera /dev/md1 för LVM:

root # pvcreate /dev/md1

och skapa en logisk volymgrupp som vi kallar vg:

root # vgcreate vg /dev/md1

Skapa en logisk volym för swap på 2GB som vi döper till swap, och en för / på 20GB som vi döper till root:

root # lvcreate --size 2G --name swap vg
root #
lvcreate --size 20G --name root vg

Installera Arch Linux

Arch Linux installationsprogram skapar en initrd genom att använda /etc/mdadm.conf, så denna fil behöver uppdateras innan vi startar installationen:

root # mdadm -D --scan > /etc/mdadm.conf

Starta installationen av Arch Linux:

root # /arch/setup

Kör steg 0 och 1 som vanligt. Under steg 2: Prepare the harddrive, hoppa till del steg 3 direkt: Set Filesystem Mountpoints. Välj /dev/mapper/vg-swap som swap partition, /dev/mapper/vg-root som / och montera /dev/md0 under /boot. Formatera alla dessa 3 partitioner (välj lämpligast ext2 för /boot). Fortsätt med steg 3 och 4 som vanligt. Under steg 5, Ändra USELVM till "yes" i rc.conf. I mkinitcpio.conf filen, lägg till modulerna raid1, raid456 till MODULES och lägg till mdadm och lvm2 i HOOKS före filesystems. Skippa steg 6 och avsluta installationsprogrammet.

Installera GRUB och uppdatera mdadm.conf

Chroot:a till din Arch installation

Kopiera GRUB filer:

root # cp -a /mnt/usr/lib/grub/i386-pc/* /mnt/boot/grub && sync

chroot:a till din nya miljö för att installera GRUB:

root # mount -o bind /dev /mnt/dev
root #
mount -t proc none /mnt/proc
root #
chroot /mnt /bin/bash

Installera GRUB på alla diskar som har boot-partition

Installera GRUB på alla 3 diskar:

root # grub [--no-floppy]
grub> device (hd0) /dev/sda

grub> root (hd0,0)
grub> setup (hd0)
(Repetera detta för sdb och sdc)

grub> quit

Lägg till eller ändra följande bootoptions i menu.lst: Template:Box Fil

Nu får man en boot option per hårddisk. Så skulle någon disk gå sönder, bör man kunna välja en av de övriga och boota ifrån den.

Uppdatera mdadm.conf

Detta kan nog göras efter reboot, men vi fixar till den direkt, nu när vi ändå är inne i chroot miljön. Template:Box Kod Nu är allt klart och systemet kan bootas om: Template:Box Kod

Starta om en installation

Ibland behöver man kanske starta om en installation och för att slippa radera allt på diskarna, kör dessa kommandon: Template:Box Kod