Installera Arch Linux på RAID och LVM: Difference between revisions

From Peters wiki
Jump to navigation Jump to search
mNo edit summary
 
(17 intermediate revisions by 2 users not shown)
Line 1: Line 1:
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.
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.


Notera: Arch Linux 2009.08 stödjer LVM under installationen. Det verkar dock som det finns lite problem som kan få installationsprogrammet att avslutas.
{{Note|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 ==
== Förberedelser före installationen ==
Line 7: Line 7:


=== Skapa partitioner ===
=== Skapa partitioner ===
{{Warning|Var noga med att ange rätt diskenheter! Annars kan du förlora viktigt data!}}
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.
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:
Att testa:
Detta kommando borde kunna användas för att kopiera en partitionstabell för att få 3 st identiska diskar:
Detta kommando borde kunna användas för att kopiera en partitionstabell för att få 3 st identiska diskar:
{{Box Kod|Kopiera partitionstabellen från sda till sdb|
{{RootCmd|<nowiki>sfdisk -d /dev/sda | sfdisk /dev/sdb</nowiki>}}
<pre>
# sfdisk -d /dev/sda | sfdisk /dev/sdb
</pre>
}}


Kontrollera att alla diskar blev likadana:
Kontrollera att alla diskar blev likadana:
{{Box Kod|Lista diskarnas partitionstabeller|
{{RootCmd|fdisk -l /dev/sda /dev/sdb /dev/sdc}}
<pre>
# fdisk -l /dev/sda /dev/sdb /dev/sdc
</pre>
}}


=== Skapa raid för /boot (RAID1) och LVM (RAID5) ===
=== Skapa raid för /boot (RAID1) och LVM (RAID5) ===
Ladda in nödvändiga raid moduler i kärnan:
Ladda in nödvändiga raid moduler i kärnan:
{{Box Kod|Ladda in modulerna för raid1 och raid4, 5 & 6|
{{RootCmd|modprobe raid1|modprobe raid456}}
<pre>
 
# modprobe raid1
# modprobe raid456
</pre>
}}
Skapa RAID1 arrayen för /boot:
Skapa RAID1 arrayen för /boot:
{{Box Kod|Skapa RAID1 array av de tre partitionerna sda1, sdb1 och sdc1, ingen spare device|
{{RootCmd|<nowiki>mdadm -C /dev/md0 --level=1 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1</nowiki>}}
<pre>
# mdadm -C /dev/md0 --level=1 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1
</pre>
}}
Skapa RAID5 arrayen för LVM:
Skapa RAID5 arrayen för LVM:
{{Box Kod|Skapa RAID5 array av de tre partitionerna sda2, sdb2 och sdc2, ingen spare device|
{{RootCmd|<nowiki>mdadm -C /dev/md1 --level=5 --raid-devices=3 /dev/sda2 /dev/sdb2 /dev/sdc2</nowiki>}}
<pre>
# mdadm -C /dev/md1 --level=5 --raid-devices=3 /dev/sda2 /dev/sdb2 /dev/sdc2
</pre>
}}
Raiden börjar nu synkas. Den behöver inte gå klart innan man fortsätter med installationen eller bootar systemet.
Raiden börjar nu synkas. Den behöver inte gå klart innan man fortsätter med installationen eller bootar systemet.


=== Skapa logiska volymer ===
=== Skapa logiska volymer ===
Ladda modulen för LVM:
Ladda modulen för LVM:
{{Box Kod|Ladda device mapper modulen|
{{RootCmd|modprobe dm-mod}}
<pre>
# modprobe dm-mod
</pre>
}}
Initiera /dev/md1 för LVM:
Initiera /dev/md1 för LVM:
{{Box Kod|Initiera /dev/md1 för LVM|
{{RootCmd|pvcreate /dev/md1}}
<pre>
# pvcreate /dev/md1
</pre>
}}
och skapa en logisk volymgrupp som vi kallar vg:
och skapa en logisk volymgrupp som vi kallar vg:
{{Box Kod|Lägg till /dev/md1 till volymgruppen vg|
{{RootCmd|vgcreate vg /dev/md1}}
<pre>
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:
# vgcreate vg /dev/md1
{{RootCmd|lvcreate --size 2G --name swap vg|lvcreate --size 20G --name root vg}}
</pre>
}}
Skapa en logisk volym för swap som vi döper till swap, och en för / som vi döper till root:
{{Box Kod|Skapa en 2GB swap och en 20GB / partition|
<pre>
# lvcreate --size 2G --name swap vg
# lvcreate --size 20G --name root vg
</pre>
}}


== Installera Arch Linux ==
== 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:
Arch Linux installationsprogram skapar en initrd genom att använda /etc/mdadm.conf, så denna fil behöver uppdateras innan vi startar installationen:
{{Box Kod|Uppdatera mdadm.conf|
{{RootCmd|mdadm -D --scan > /etc/mdadm.conf}}
<pre>
# mdadm –D –-scan > /etc/mdadm.conf
</pre>
}}
Starta installationen av Arch Linux:
Starta installationen av Arch Linux:
{{Box Kod||
{{RootCmd|/arch/setup}}
<pre>
# /arch/setup
</pre>
}}
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.
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.


Line 91: Line 50:
=== Chroot:a till din Arch installation ===
=== Chroot:a till din Arch installation ===
Kopiera GRUB filer:
Kopiera GRUB filer:
{{Box Kod|Kopiera GRUB filer till din blivande /boot partition|
{{RootCmd|cp -a /mnt/usr/lib/grub/i386-pc/* /mnt/boot/grub && sync}}
<pre>
# cp -a /mnt/usr/lib/grub/i386-pc/* /mnt/boot/grub && sync
</pre>
}}
chroot:a till din nya miljö för att installera GRUB:
chroot:a till din nya miljö för att installera GRUB:
{{Box Kod|Montera /dev, /proc och chroot:a till din Arch installation|
{{RootCmd|mount -o bind /dev /mnt/dev|mount -t proc none /mnt/proc|chroot /mnt /bin/bash}}
<pre>
# mount -o bind /dev /mnt/dev
# mount -t proc none /mnt/proc
# chroot /mnt /bin/bash
</pre>
}}


=== Installera GRUB på alla diskar som har boot-partition ===
=== Installera GRUB på alla diskar som har boot-partition ===
Installera GRUB på alla 3 diskar:
Installera GRUB på alla 3 diskar:
{{Box Kod|Lägg till --no-floppy om du inte har någon floppy enhet|
{{RootCmd|grub [--no-floppy]|output=grub> device (hd0) /dev/sda<br>
<pre>
grub> root (hd0,0)<br>
# grub [–no-floppy]
grub> setup (hd0)<br>
grub> device (hd0) /dev/sda
(Repetera detta för sdb och sdc)<br>
grub> root (hd0,0)
grub> quit<br>
grub> setup (hd0)
(Repetera detta för sdb och sdc)
grub> quit
</pre>
}}
}}


Lägg till eller ändra följande bootoptions i menu.lst:
Lägg till eller ändra följande bootoptions i /boot/grub/menu.lst:
{{Box Fil|/boot/grub/menu.1st|
{{bc|1=
<pre>
# (0) Arch Linux                                                                 
# (0) Arch Linux                                                                 
title  Arch Linux
title  Arch Linux (hd0)
root  (hd0,0)
root  (hd0,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
Line 128: Line 72:


# (1) Arch Linux                                                                 
# (1) Arch Linux                                                                 
title  Arch Linux (hd1)
root  (hd1,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
initrd /kernel26.img
# (2) Arch Linux                                                               
title  Arch Linux (hd2)
root  (hd2,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
initrd /kernel26.img
# (3) Arch Linux                                                               
title  Arch Linux Fallback
title  Arch Linux Fallback
root  (hd0,0)
root  (hd0,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
initrd /kernel26-fallback.img
initrd /kernel26-fallback.img
</pre>
}}
}}
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 ===
=== 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.
Detta kan nog göras efter reboot, men vi fixar till den direkt, nu när vi ändå är inne i chroot miljön.
{{Box Kod|Uppdatera /etc/mdadm.conf med rätt raid info|
{{RootCmd|mdadm -D --scan >> /etc/mdadm.conf}}
<pre>
# mdadm -D --scan >> /etc/mdadm.conf
</pre>
}}
Nu är allt klart och systemet kan bootas om:
Nu är allt klart och systemet kan bootas om:
{{Box Kod|Avsluta chroot och boota om|
{{RootCmd|exit|reboot}}
<pre>
 
# exit
== Starta om en installation ==
# reboot
Ibland behöver man kanske starta om en installation och för att slippa radera allt på diskarna, kör dessa kommandon:
</pre>
{{RootCmd|modprobe raid1|modprobe raid456}}
}}
{{RootCmd|mdadm -A /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1|mdadm -A /dev/md1 /dev/sda2 /dev/sdb2 /dev/sdc2}}
{{RootCmd|modprobe dm-mod|vgscan|vgchange -ay}}


[[Category:Arch Linux]]
[[Category:GammalGuide]]

Latest revision as of 18:49, 24 October 2015

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

Varning: Var noga med att ange rätt diskenheter! Annars kan du förlora viktigt data!


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 /boot/grub/menu.lst:

# (0) Arch Linux                                                                
title  Arch Linux (hd0)
root   (hd0,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
initrd /kernel26.img

# (1) Arch Linux                                                                
title  Arch Linux (hd1)
root   (hd1,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
initrd /kernel26.img

# (2) Arch Linux                                                                
title  Arch Linux (hd2)
root   (hd2,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
initrd /kernel26.img

# (3) Arch Linux                                                                
title  Arch Linux Fallback
root   (hd0,0)
kernel /vmlinuz26 root=/dev/mapper/vg-root ro
initrd /kernel26-fallback.img

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.

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

Nu är allt klart och systemet kan bootas om:

root # exit
root #
reboot

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:

root # modprobe raid1
root #
modprobe raid456
root # mdadm -A /dev/md0 /dev/sda1 /dev/sdb1 /dev/sdc1
root #
mdadm -A /dev/md1 /dev/sda2 /dev/sdb2 /dev/sdc2
root # modprobe dm-mod
root #
vgscan
root #
vgchange -ay