RAID, lvm και άλλα δαιμόνια

Alexandros Kosiaris alex at noc.ntua.gr
Tue Nov 11 22:38:52 EET 2008


Harris Kosmidhs wrote:
> Λοιπόν μετά τα όσα είπαμε περι RAID και έκατσα και έκανα στον υπολογιστή 
> μου έχω ακόμα μια ερώτηση-διευκρίνηση.
> 
> Το σύστημά μου αυτή τη στιγμή έχει:
> /dev/sda
>     sda1 windows
>     sda2 linux
>     sda3 ntfs
> /dev/sdb
>     sdb1 ext3
>     sdb2 raid me 3 lvm
>     sdb3 swap
> /dev/sdc
>     sdc1    ext3
> /dev/sdd
>     sdd1 ext3
>     sdd2 raid me 3 lvm
>     sdd3  swap
> 
> Bootάρω προς το παρόν στον sda2 και το grub είναι προφανώς εγκατεστημένο 
> στο MBR του sda. Το menu.lst είναι:
> ------------------------------------------------------------
> title        Ubuntu 8.04, kernel 2.6.27-7-generic
> root        (hd0,1)
> kernel        /boot/vmlinuz-2.6.27-7-generic 
> root=UUID=199397e7-d9ec-42f1-b077
> -750828740bcc ro quiet splash
> initrd        /boot/initrd.img-2.6.27-7-generic
> quiet
> 
> title        Ubuntu 8.04, kernel 2.6.27-7-generic (recovery mode)
> root        (hd0,1)
> kernel        /boot/vmlinuz-2.6.27-7-generic 
> root=UUID=199397e7-d9ec-42f1-b077
> -750828740bcc ro  single
> initrd        /boot/initrd.img-2.6.27-7-generic
> 
> title        Microsoft Windows XP Professional
> root        (hd0,0)
> savedefault
> makeactive
> chainloader    +1
> ------------------------------------------------------------
> 
> Επίσης έχω κάνει ένα /dev/md0 με τα sdb2+sdd2 και εκεί πάνω 3 lvm (για 
> το /, /home, /opt).
> Το ζήτημα είναι να μεταφέρω το σύστημα πάνω στο RAID και να bootαρει απο 
> το /dev/sdb ή sdd.
> 
> Έκανα mount τα sdb1, sdd1 στα /mnt/boot1 , /mnt/boot2. Αντέγραψα εκεί τo 
> υπάρχον /boot (και στο boot1 & boot2). Επίσης με rsync -ax αντέγραψα το 
> / στο /dev/raid/root (που έχω κάνει mount στο /mnt/root).
> 
> Τώρα όπως καταλαβαίνω πρέπει να γίνουν τα παρακάτω:
> 
> 1) Απο το /mnt/root διαγραφή του /boot (αφού θα γίνεται mount to /dev/sdb1)

Μόνο τα περιεχόμενα όμως. Οχι το ίδιο το directory. Το ξέρω ότι είναι αυτονόητο 
αλλά απλά το λέω να σε προφυλάξω από ένα rm -rf /boot και λίγο χαμένο χρόνο.

> 
> 
> 2) Αλλαγή του /mnt/root/etc/fstab ώστε να αλλαγχούν τα /, /boot, /home πχ:
>     # /dev/sda2
>     /dev/raid/root / ext3 defaults,errors=remount-ro,relatime 0 1
>         /dev/sdb1 /boot ext3    defaults 0       1
>     /dev/raid/home /home ext3 defaults 0       1
> 
> δεν ξέρω αν πρέπει ή όχι να χρησιμοποιήσω UUIDs. Αν πχ κάποια στιγμή 
> θέλω να μεγαλώσω το /dev/raid/root το UUID παραμένει σταθερό; έχω 
> καταλάβει ότι για δίσκους ή partitions αυτό δεν αλλάζει. Τι γίνεται όμως 
> με lvms;

Να χρησιμοποιήσεις παντού UUIDs. Μένουν σταθερά και σε σώζουν από πολλούς μπελάδες.

> 
> 
> 3) Αλλαγή του /mnt/boot1/grub/menu.lst. Εδώ είναι τα δύσκολα. αν επιλέξω 
> απο το BIOS boot device το /dev/sdb τοτε η σειρά που βάζει το linux τα 
> ονόματα των δίσκων (sda, sdb, sdc , ktl) αλλάζει;

Κανονικά όχι. Ο λόγος είναι ότι το grub κάνει scan όταν ξεκινάει και βρίσκει ένα 
ένα τα drives οπότε ότι και εάν έχεις βάλει ως boot στο BIOS δεν θα αλλάξει την 
ονοματολογία για τo GRUB.

> Και τι πρέπει να βάλω;
> ΠΧ για το win μπορώ να το διατηρήσω (δεδομένου ότι δεν αλλάζουν σειρά τα 
> devices)
> 
> title        Microsoft Windows XP Professional
> root        (hd0,0)
> savedefault
> makeactive
> chainloader    +1
> 
> για το ubuntu:
> title        Ubuntu 8.04, kernel 2.6.27-7-generic
> root        (hd1,0)
> kernel        /boot/vmlinuz-2.6.27-7-generic root=UUID=<toUUID tou 
> /dev/raid/root> ro quiet splash
> initrd        /boot/initrd.img-2.6.27-7-generic
> quiet

Στο περίπου. Βλέπεις το root(hd1,0) του λέει που να πάει να ψάξει τα αρχεία 
vmlinuz,initrd τα οποία δεν θα βρίσκονται πλέον κάτω από κάποιο directory /boot 
οπότε αυτό το /boot είναι λάθος στην αρχή. Μπορείς να το δεις αυτό live με ένα

# grub
grub> root(hd1,0)
grub> find /<tab>

Που θα σου πει ένα αντίστοιχο του:
  Possible files are: initrd.gz grub diag1.img System.map config vmlinuz 
initrd-generic.2.6.24.2.gz κτλ κτλ κτλ

Οπότε τα θες έτσι:

kernel        /vmlinuz-2.6.27-7-generic root=UUID=<toUUID tou
initrd        /initrd.img-2.6.27-7-generic

Τα αρχικά / χρειάζονται σίγουρα στον grub-0.97-2 που έχω εγώ. Δεν παίζει χωρίς αυτά.

Εφόσον δεν αλλάξεις σειρά στους δίσκους ή αφαιρέσεις κανέναν και δεν μπλεχτεί το 
numbering στο GRUB όλα μία χαρά.

Απλά να προτείνω ακόμη μία εγγραφή με root(hd3,0)(αυτό πρέπει να είναι το sdd) 
για το ubuntu ώστε να έχεις ακόμη μία εγγραφή που να χρησιμοποιεί το /boot του 
/dev/sdd για backup.

>     
> Στέκουν αυτά που γράφω; Και μετά πως κάνω install το grub στο /dev/sdb 
> (και στο /dev/sdd αν γίνεται);

grub> root(hd1,0)
grub> setup(hd1) # Μόλις τον έβαλες στον /dev/sdb
grub> root(hd3,0)
grub> setup(hd3) # Και στον /dev/sdd αντίστοιχα


-- 
Alexandros Kosiaris     Network Management Center , NTUA
e-mail : alex at noc.ntua.gr
Public Key Fingerprint :
D6B1 0634 BE65 719C 6C95  7492 8201 4B46 C478 F074




More information about the Linux-greek-users mailing list