Problemi in questa pagina? Segnalali in questa discussione
Introduzione
Questa pagina è dedicata alla creazione di un sistema RAID0 o RAID1 tramite l'impiego di controller integrati sulle schede madri e di programmi dedicati.
Preparativi
Per prima cosa impostare il controller RAID come attivo e avviabile dal BIOS, infine nella sezione relativa al boot impostare l'elenco delle periferiche secondo queste priorità:
- Floppy
- Lettore CD/DVD
- Controller RAID
Salvare ed uscire dal bios, all'avvio del computer appariranno una serie di informazioni relative allo stato delle periferiche collegate alla scheda madre tramite una nuova schermata. Seguire le istruzioni per configurare il RAID desiderato. All'uscita dal programma, il computer verrà riavviato. Fatte queste operazioni, si può iniziare l'installazione del sistema operativo.
Installazione
Avviare il CD alternate di Ubuntu.
Una volta avviato il cd premere «F2» in modo da selezionare la lingua italiana e scegliere «Installazione per sistemi Oem». Ultimata l'impostazione della scheda di rete comparirà il demone di partizionamento.
Abbandonare l'installazione e selezionare con il tasto «Tab» il pulsante «Indietro».
Comparirà una schermata in cui sono elencate le voci del progresso dell'installazione. Scegliere «Avvia Terminale» che avvierà un terminale di root.
Procedere con il partizionamento per vedere le partizioni presenti. Digitare nel terminale il seguente comando:
fdisk -l
Iniziare a partizionare il disco, digitando:
fdisk /dev/sda
sostituire la dicitura «sda» con il nome del disco trovato con il comando precedente, verranno visualizzate delle istruzioni simili:
The number of cylinders for this disk is set to 30515. There is nothing wrong with that, but this is larger than 1024, and could in certain setups cause problems with: 1) software that runs at boot time (e.g., old versions of LILO) 2) booting and partitioning software from other OSs (e.g., DOS FDISK, OS/2 FDISK) Command (m for help):
Creare una nuova partizione premendo il tasto «n»:
Command (m for help): n Command action e extended p primary partition (1-4)
Creare una partizione primaria quindi digitare «p», e dare il numero della partizione; la scelta sarà «1».
- Dare le dimensioni della prima partizione dal cilindro «1» a circa «30GB» di spazio, la partizione verrà contrassegnata come «sda1».
Editare l'ID della partizione e scrivere le modifiche della stessa; per fare questo digitare «t» e scegliere come ID «fs»:
Command (m for help): t Selected partition 1 Hex code (type L to list codes): L 0 Empty 1e Hidden W95 FAT1 80 Old Minix be Solaris boot 1 FAT12 24 NEC DOS 81 Minix / old Lin bf Solaris 2 XENIX root 39 Plan 9 82 Linux swap / So c1 DRDOS/sec (FAT- 3 XENIX usr 3c PartitionMagic 83 Linux c4 DRDOS/sec (FAT- 4 FAT16 <32M 40 Venix 80286 84 OS/2 hidden C: c6 DRDOS/sec (FAT- 5 Extended 41 PPC PReP Boot 85 Linux extended c7 Syrinx 6 FAT16 42 SFS 86 NTFS volume set da Non-FS data 7 HPFS/NTFS 4d QNX4.x 87 NTFS volume set db CP/M / CTOS / . 8 AIX 4e QNX4.x 2nd part 88 Linux plaintext de Dell Utility 9 AIX bootable 4f QNX4.x 3rd part 8e Linux LVM df BootIt a OS/2 Boot Manag 50 OnTrack DM 93 Amoeba e1 DOS access b W95 FAT32 51 OnTrack DM6 Aux 94 Amoeba BBT e3 DOS R/O c W95 FAT32 (LBA) 52 CP/M 9f BSD/OS e4 SpeedStor e W95 FAT16 (LBA) 53 OnTrack DM6 Aux a0 IBM Thinkpad hi eb BeOS fs f W95 Ext'd (LBA) 54 OnTrackDM6 a5 FreeBSD ee EFI GPT 10 OPUS 55 EZ-Drive a6 OpenBSD ef EFI (FAT-12/16/ 11 Hidden FAT12 56 Golden Bow a7 NeXTSTEP f0 Linux/PA-RISC b 12 Compaq diagnost 5c Priam Edisk a8 Darwin UFS f1 SpeedStor 14 Hidden FAT16 <3 61 SpeedStor a9 NetBSD f4 SpeedStor 16 Hidden FAT16 63 GNU HURD or Sys ab Darwin boot f2 DOS secondary 17 Hidden HPFS/NTF 64 Novell Netware b7 BSDI fs fd Linux raid auto 18 AST SmartSleep 65 Novell Netware b8 BSDI swap fe LANstep 1b Hidden W95 FAT3 70 DiskSecure Mult bb Boot Wizard hid ff BBT 1c Hidden W95 FAT3 75 PC/IX
Per ultimare le operazioni scrivere le modifiche sulla tabella partizioni con «w» e automaticamente fdisk uscirà a terminale. Le partizioni scelte per questo sistema sono le seguenti: sda1=31 GiB; sda2=200 GiB; sda3=900 MiB.
Per replicare le medesime partizioni sul disco sdb, digitare nel terminale il seguente comando:
sfdisk -d /dev/sda | sfdisk /dev/sdb
Creare i dischi virtuali per cui:
modprobe md
Tramite l'utility già presente nel cd alternate mdadm si possono creare le tre partizioni virtuali:
mdadm --create /dev/md0 --level=1 --raid-devices=2 /dev/sda1 /dev/sdb1 mdadm --create /dev/md1 --level=1 --raid-devices=2 /dev/sda2 /dev/sdb2 mdadm --create /dev/md2 --level=1 --raid-devices=2 /dev/sda3 /dev/sdb3
Opzione |
Descrizione |
--create /dev/mdX |
Viene creata una partizione denominata mdX |
--level=1 |
Per creare un RAID1 mirroring; per lo striping sostituire 1 con 0 |
--raid-devices=2 /dev/sdaX /dev/sdbX |
Identifica i dispositivi costituenti il RAID (in questo caso due) e come si chiamano all'interno della cartella /dev |
Per vedere lo stato di avanzamento della creazione del raid si può usare il comando:
cat /proc/mdstat
Per la creazione del raid su un sistema di 250 GiB son necessari circa 100 minuti.
La decisione di creare 3 partizioni è dato dal fatto di voler suddividere il sistema in una partizione di root /, una di home /home ed una di swap. Tutte queste tre partizioni devono esser duplicate su entrambi gli hard disk altrimenti si ha un inconsistenza a livello del sistema Raid1.
Una volta ultimata la sincronizzazione si può uscire dalla modalità terminale per poter riprendere l'installazione del sistema. Per uscire:
exit
- Ora come opzione si sceglierà; rilevamento dischi. Scegliere partizionamento manuale. Saranno presenti 9 Hard disk, sei dei quali sdaX, sdbX saranno volumi fisici per raid; gli altri tre, md0, md1, md2 non avranno ancora un filesystem.
. md0 si attribuirà la caratteristica di / e di boot all'avvio
. md1 si attribuirà la caratteristica di /home
- . md2 diventerà invece lo spazio di swap.
Ora si può continuare con l'installazione e di default verrà installato Ubuntu in versione server. Al riavvio del computer Ubuntu verrà eseguito in modalità terminale. Prima di installare l'eventuale desktop, è necessario configurare grub per poter avviare entrambi i dischi:
sudo vi /boot/grub/menu.lst
- Portarsi nella sezione di grub relativa al recovery mode;
[...] title Ubuntu 7.10, kernel x.x.xx.xx-xxx (recovery mode) root (hd0,0) kernel /vmlinuz-x.x.xx.xx-xxx root=/dev/md0 ro single initrd /initrd.img-x.x.xx.xx-xxx [...]
- Replicarla in modo da ottenere
[...] title Ubuntu 7.10, kernel x.x.xx.xx-xxx (recovery mode) root (hd0,0) kernel /vmlinuz-x.x.xx.xx-xxx root=/dev/md0 ro single initrd /initrd.img-x.x.xx.xx-xxx title Ubuntu 7.10, kernel x.x.xx.xx-xxx (recovery mode) root (hd1,1) kernel /vmlinuz-x.x.xx.xx-xxx root=/dev/md0 ro single initrd /initrd.img-x.x.xx.xx-xxx [...]
- In questa maniera, qualora uno dei due hard disk si danneggi, si può procedere all'avvio del sistema tramite quello funzionante. Aggiornare il sistema in modo che riconosca le modifiche effettuate:
sudo update-initramfs -u
- Riavviare il computer con il comando:
sudo reboot
Installare il pacchetto gnome-desktop, presente nel componente universe dei repository ufficiali. Se si preferisce KDE a GNOME, Installare il pacchetto kde-desktop.
Ripristino di un array
Lo scopo principale di un Array in Raid1 è poter sostituire l'hard disk eventualmente danneggiato con uno funzionante. Per far questo è sufficiente inserire una serie di comandi; nell'esempio dei due hard disk quello danneggiato è sdb.
Si procederà in questa maniera, digitare:
mdadm /dev/md0 --fail /dev/sdb1 --remove /dev/sdb1 mdadm /dev/md1 --fail /dev/sdb2 --remove /dev/sdb2 mdadm /dev/md2 --fail /dev/sdb3 --remove /dev/sdb3
Una volta sostituito il disco danneggiato è necessario partizionare il nuovo disco:
sfdisk -d /dev/sda | sfdisk /dev/sdb
Ricreare l'array:
mdadm /dev/md0 --add /dev/sdb1 mdadm /dev/md1 --add /dev/sdb2 mdadm /dev/md2 --add /dev/sdb3
Analogamente a come fatto sopra, controllare l'avanzamento della creazione dell'array con il seguente comando:
cat /proc/mdstat