÷ƒ’À;è TeX output 2003.11.26:1336‹ÿÿÿÿ Û_2 ý ~? ÕÁ ýZݺóþÖëI½q½qecss2074»Soft–ÿwmw“a“re-RAID‘fÑHO“WTOŽ¤ ®„ØcÕÁGŽŽ¡ó 1ê± ecrm1000¹Jak¸èob–U €Østergaard“(“ó½HЃ ecti1000¼jakob@ostenfeld.dk“¹)’¶,âv.‘q€0.90.7“19“gennaio“2000Ž¡Ÿ&°óŒ6 ecss1000½Questo–Ù‡HOš¸èWTO‘Ùespiega“come“usa˜re“il“Soft˜w˜a˜re“RAID‘Ùecon“Linux.‘þ´Esso“si“riferisce“ad“una“spGecica“versione“delŽ¡Soft•¸èw“a“re›ŸbRAID‘Ÿ4la“y“er,‘üovvero˜lo˜0.90˜RAID‘Ÿ4la“y“er˜scritto˜da˜Ingo˜Molna“r˜e˜altri.‘4ìQuesto˜€è˜il˜la“y“er˜RAID‘Ÿ4che˜diventer€àŽ¡standaš¸èrd–lin“Linux-2.4“ed“€è“anche“la“versione“usata“dai“k˜ernel-2.2“in“alcune“distribuzioni.‘^DIl“suppGo˜rto“al“RAID‘^0.90Ž¡€è–.³dispGonibile“sotto“fo¸èrma“di“patch“a“Linux-2.0“e“Linux-2.2“ed“€è“da“molti“considerato“molto“pi€ù“stabile“del“vecchioŽ¡suppGoš¸èrto–U RAID“p˜resente“in“questi“k˜ernel.ŽŸ(Àœó&Lt$ffffecbx1440¿Con•cten“tsŽ©Øó]fŒ ecbx1000À1Ž‘ÿIn®>troQÂduzione’€Ó2ŽŽ¤ؼ‘ÿ¹1.1Ž‘%ý¡LibGeratoria‘Š‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘ÿ1.2Ž‘%ý¡Nota–U alla“v¸èersione“italiana‘Ås‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï3ŽŽ¡‘ÿ1.3Ž‘%ý¡Cosa–U €è“necessario‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï4ŽŽ¦À2Ž‘ÿP•®>erc“h€é–Õil“RAID“?’i6I4ŽŽ¡‘ÿ¹2.1Ž‘%ý¡AspGetti‘U T‘ÿ*¸ecnici‘uo‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï4ŽŽ¡‘ÿ2.2Ž‘%ý¡T‘ÿ*¸ermini‘—Ë‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï4ŽŽ¡‘ÿ2.3Ž‘%ý¡I–U liv¸èelli“RAID‘fÿ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï4ŽŽ¡‘%ý¡2.3.1Ž‘EûŸSpare‘U disks‘'½‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï6ŽŽ¡‘ÿ2.4Ž‘%ý¡F‘ÿ*¸are–U lo“Sw¸èap“su“RAID‘/‡‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï6ŽŽ¦À3Ž‘ÿQuestioni‘Õhardw®>are’^­³7ŽŽ¡‘ÿ¹3.1Ž‘%ý¡Congurazione‘U IDE ›‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï7ŽŽ¡‘ÿ3.2Ž‘%ý¡Sostituzione–U di“discš¸èhi“"al“v˜olo"“(Hot“Sw˜ap)‘¤w‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï8ŽŽ¡‘%ý¡3.2.1Ž‘EûŸSostituzione–U "al“vš¸èolo"“(Hot-sw˜apping)“dei“disc˜hi“IDE‘Šá‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï8ŽŽ¡‘%ý¡3.2.2Ž‘EûŸSostituzione–U "al“vš¸èolo"“(Hot-sw˜apping)“di“disc˜hi“SCSI‘‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï8ŽŽ¡‘%ý¡3.2.3Ž‘EûŸSostituzione–U "al“vš¸èolo"“(Hot-sw˜apping)“con“SCA‘ßY‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï9ŽŽ¦À4Ž‘ÿRAID‘Õsetup’ƒ¢€9ŽŽ¡‘ÿ¹4.1Ž‘%ý¡General‘U setup‘j‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï9ŽŽ¡‘ÿ4.2Ž‘%ý¡Linear‘U moGdeu‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘wï9ŽŽ¡‘ÿ4.3Ž‘%ý¡RAID-0‘WÏ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?10ŽŽ¡‘ÿ4.4Ž‘%ý¡RAID-1‘WÏ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?11ŽŽ¡‘ÿ4.5Ž‘%ý¡RAID-4‘WÏ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?12ŽŽ¡‘ÿ4.6Ž‘%ý¡RAID-5‘WÏ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?12ŽŽ¡‘ÿ4.7Ž‘%ý¡Il›U P•¸èersisten“t˜Sup•Gerblo“c¸èk‘S;‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?14ŽŽ¡‘ÿ4.8Ž‘%ý¡Ch¸èunk‘U size‘‚ç‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?14ŽŽŽŽŒ‹* Û_2 ý ~?Ÿ„€ÕÁGŽÀ1.‘ñ8In®>troQÂduzione’~¯œ¹2ŽŽ ÕÁ ýV¯‘%ý¡4.8.1Ž‘EûŸRAID-0‘uq‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?15ŽŽ¤ؼ‘%ý¡4.8.2Ž‘EûŸRAID-1‘uq‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?15ŽŽ¡‘%ý¡4.8.3Ž‘EûŸRAID-4‘uq‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?15ŽŽ¡‘%ý¡4.8.4Ž‘EûŸRAID-5‘uq‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?15ŽŽ¡‘ÿ4.9Ž‘%ý¡Opzioni–U pGer“mk¸èe2fs‘ï ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?15ŽŽ¡‘ÿ4.10Ž‘%ý¡Autorilev‘ÿqÐamen¸èto‘U (AutoGdetection)‘ÔË‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?16ŽŽ¡‘ÿ4.11Ž‘%ý¡F‘ÿ*¸are–U il“b•Go“ot–U su“RAID‘¯g‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?17ŽŽ¡‘ÿ4.12Ž‘%ý¡RoGot–U lesystem“su“un“RAID‘)c‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?17ŽŽ¡‘%ý¡4.12.1Ž‘EûŸMetoGdo‘U 1‘é‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?18ŽŽ¡‘%ý¡4.12.2Ž‘EûŸMetoGdo‘U 2‘é‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?18ŽŽ¡‘ÿ4.13Ž‘%ý¡Do•¸èvreste›U a“v“er˜otten“uto˜un˜sistema˜c“he˜fa˜il˜b•Go“ot˜da˜un˜"non-degraded"˜RAID.‘ñ/‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?19ŽŽ¡‘%ý¡4.13.1Ž‘EûŸF‘ÿ*¸are–U il“b•Go“ot–U con“il“RAID“come“moGdulo‘Ϲ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?19ŽŽ¡‘ÿ4.14Ž‘%ý¡T‘ÿ*¸rab•Go“cc¸èhetti‘ŠK‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?20ŽŽ©ØÀ5Ž‘ÿF‘ÿ ºare–Õil“test’„—Æ20ŽŽ¡‘ÿ¹5.1Ž‘%ý¡Simš¸èulare–U il“malfunzionamen˜to“di“un“disco‘‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?20ŽŽ¡‘ÿ5.2Ž‘%ý¡Simš¸èulare–U il“danneggiamen˜to“dei“dati‘q“‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?21ŽŽ¦À6Ž‘ÿRicostruzione’v¿À21ŽŽ¡‘ÿ¹6.1Ž‘%ý¡RecupGero–U dal“malfunzionamenš¸èto“di“pi€ù“disc˜hi‘$בü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?21ŽŽ¦À7Ž‘ÿPrestazioni’ƒ+k22ŽŽ¡‘ÿ¹7.1Ž‘%ý¡RAID-0‘WÏ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?23ŽŽ¡‘ÿ7.2Ž‘%ý¡RAID-0–U con“TCQY‡‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?23ŽŽ¡‘ÿ7.3Ž‘%ý¡RAID-5‘WÏ‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?23ŽŽ¡‘ÿ7.4Ž‘%ý¡RAID-10X‘ü.ŽŽ–Æè‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ“‘ü.ŽŽ‘x?24ŽŽ¦À8Ž‘ÿCon®>tributi’†M[24ŽŽŸ(Àœ¿1Ž‘ÁInctropœduzioneŽŸ¿:¹Pš¸èer–®duna“descrizione“del“v˜ecc˜hio“la˜y˜er“RAI,“quello“c˜he“€è“standard“nei“k˜ernel“2.0“e“2.2,‘µdate“un“oGcc˜hiataŽ¤ ®all'eccellen•¸ète›ŠÀHO“WTO‘ŠŒdi˜Linas˜V‘ÿ*¸epstas˜(˜¼linas@linas.or‘ÿ}/g˜¹)˜dispGonibile˜presso˜il˜Lin“ux˜DoGcumen“tation˜Pro‘Ž0jectŽ¡a›U ¼linuxdo–ÿ}/c.or“g˜¹.Ž©ؼIl–Éñsito“principale“pGer“questo“HOš¸èWTO‘É̀蓼http://ostenfeld.dk/jakob/Softwar‘ÿ}/e-RAID.HO¾˜WTO/“¹,‘åÇdo˜v˜e“sarannoŽ¡pubblicate–Fole“vš¸èersioni“aggiornate.‘lšL'HO˜WTO‘Fk€è“scritto“da“Jak˜ob“€Østergaard“ed“€è“basato“su“un“gran“n˜umeroŽ¡di–¸Ôe-mail“scam¸èbiate“fra“l'autore“ed“Ingo“Molnar“¼(mingo@chiar‘ÿ}/a.csoma.elte.hu)“¹“uno“degli“sviluppatori“delŽ¡suppšGorto–U RAID“,“la“lin¸èux-raid“mailing“list“¼(linux-r–ÿ}/aid@vger.rutgers.e“du)–U ¹v‘ÿqÐarie“altre“p˜ersone.Ž¦La–CEragione“pGer“cui“questo“HOš¸èWTO‘C@€è“stato“scritto“€è“c˜he,‘F×sebbGene“un“Soft˜w˜are-RAID–C@HO˜WTO“esistesse‘CEgi€à,Ž¡il–`×precedenš¸ète“HO˜WTO‘`Ôdescriv˜e“il“v˜ecc˜hio“Soft˜w˜are“RAID‘`Ôc˜he“si“tro˜v‘ÿqÐa“nei“k˜ernel“2.0“e“2.2“standard.‘”¦QuestoŽŽŽŒ‹*  Û_2 ý ~?Ÿ„€ÕÁGŽÀ1.‘ñ8In®>troQÂduzione’~¯œ¹3ŽŽ ÕÁ ýV¯HO•¸èWTO‘¾vdescriv“e›¾œin“v“ece˜l'uso˜del˜n“uo“v“o˜RAID‘¾vc“he˜€è˜stato˜sviluppato˜recen“temen“te.‘?TIl˜n“uo“v“o˜RAID‘¾vha˜molteŽ¤ ®funzioni–U e“caratteristicš¸èhe“non“presen˜ti“nel“v˜ecc˜hio“RAID.Ž©ؼSe–]Hvš¸èolete“usare“il“n˜uo˜v˜o“RAID‘\€con“i“k˜ernel“2.0“e“2.2,‘Rdo˜vreste“prelev‘ÿqÐare“una“patc˜h“pGer“il“v˜ostroŽ¡kš¸èernel–óØda“¼ftp://ftp.[your-c–ÿ}/ountry-c“o“de].kernel.or“g/pub/linux/daemons/r“aid/alpha–óع,‘[†o“pi€ù“recen˜temen˜te“daŽ¡¼http://p–ÿ}/e“ople.r“e“dhat.c“om/mingo/–sÀ¹.‘Í_I‘s¸k¸èernel“2.2“standard“non“hanno“un“suppšGorto“diretto“p˜er“il“n•¸èuo“v“o‘sÀRAIDŽ¡descritto–­Õin“questo“HOš¸èWTO.“Queste“patc˜h“sono“quindi“necessarie.‘{ ¼Il–åLsupp›ÿ}/orto“al“ve˜c˜chio“RAID‘å7nei“kernelŽ¡2.0–me“2.2“standar›ÿ}/d“pr˜esenta“dei“bug“e“non“pr˜esenta“diverse“imp˜ortanti“c˜ar˜atteristiche“che“sono“inve˜c˜e“pr˜esentiŽ¡nel–“°nuovo“softwar‘ÿ}/e“RAID.Ž¦¹Nel–Q~momenš¸èto“in“cui“viene“scritto“questo“HO˜WTO,“il“suppGorto“al“n˜uo˜v˜o“RAID‘Q}€è“stato“inserito“nell'albGero“diŽ¡sviluppGo–§Rdei“kš¸èernel“2.3“e“quindi“sar€à“(molto“probabilmen˜te)“presen˜te“nei“Lin˜ux“k˜ernel“2.4,‘»Þquando“sarannoŽ¡dispGonibili.‘q€Fino–U ad“allora“ai“kš¸èernel“stabili“dev˜ono“essere“applicate“le“patc˜h“man˜ualmen˜te.Ž¦Pš¸èotreste–Ë¢usare“i“óqLË ectt1000Á-ac“¹rilasciati“da“Alan“Co˜x,‘ç"pšGer“il“supp˜orto“RAID‘Ënei“kš¸èernel“2.2.‘C¬¼A¾˜lcuni‘Ðk¹di“questi“con˜tengonoŽ¡il–U suppšGorto“al“n•¸èuo“v“o–U RAID“e“questo“vi“p˜ermetter€à“di“non“do•¸èv“ere–U applicare“le“patcš¸èh“al“k˜ernel“da“soli.Ž¦Alcune–óÉdelle“informazioni“in“questo“HOš¸èWTO‘ó pGossono“sem˜brare“banali,‘sse“conoscete“gi€à“bGene“il“RAID.“InŽ¡questo–U caso“pGotete“saltare“alcune“parti.ŽŸ#Ãó¥!¢N ecbx1200Ã1.1Ž‘¾Lib_úeratoriaŽŸMª¹La–U libGeratoria“obbligatoria:Ž¦SebbšGene–CGil“RAID‘CBsem¸èbri“stabile“a“me“e“a“molte“altro“p˜ersone,‘FÙesso“p˜otrebb˜e“non“funzionare“nel“v¸èostro“caso.Ž¡Se–Ì¿pGerdete“tutti“i“vš¸èostri“dati,‘ê§il“v˜ostro“la˜v˜oro,‘ê§v˜enite“in˜v˜estiti“da“un“camion“o“qualunque“altra“cosa,‘ê§non“€èŽ¡colpa–íun€é“mia“n€é“degli“sviluppatori.‘NòAš¸èttenzione,‘0state“usando“il“soft˜w˜are“RAID‘íZe“queste“informazioni“a“v˜ostroŽ¡riscš¸èhio!‘\bNon–Äc'€è“nessun“tipGo“di“garanzia“c˜he“il“soft˜w˜are“o“queste“informazioni“siano“corrette,‘"pn€é“adatte“ad“unŽ¡qualunque–§uso.‘hœF‘ÿ*¸ate“il“salv‘ÿqÐataggio“(bacš¸èk“up)“di“tutti“i“v˜ostri“dati“prima“di“fare“espGerimen˜ti.‘hœMeglio“essereŽ¡sicuri–U c¸èhe“dispiaciuti.Ž¦Detto–ZÇquesto,‘\1devš¸èo“dire“c˜he“non“ho“mai“a˜vuto“nessun“problema“di“stabilit€à“con“il“Soft˜w˜are“RAID,“lo“uso“suŽ¡alcune–Ç×maccš¸èhine“senza“alcun“problema“e“non“ho“ancora“visto“altra“gen˜te“con“problemi“di“crolli“casuali“delŽ¡sistema–U o“instabilit€à“causata“dal“RAID.ŽŸ#ÃÃ1.2Ž‘¾Nota–¸alla“v ersione“italianaŽŸMª¹Un–!pšGo'“di“temp˜o“fa“sono“stato“un“"utenš¸ète"“di“questo“HO˜WTO,“c˜he“ho“tro˜v‘ÿqÐato“particolarmen˜te“utile“e“c˜hiaroŽ¡nello–3¿spiegare“come“costruire“un“RAID‘3·arraš¸èy‘ÿ*¸.‘f`Mi“sono“promesso“allora“di“orirne“la“v˜ersione“italiana“a“tuttiŽ¡coloro–óoc¸èhe“hanno“dicolt€à“a“"masticare"“l'inglese.‘PðIl“mio“inglese“€è“bšGen“lungi“dall'essere“p˜erfetto,‘ùma“sp˜ero“diŽ¡essere–ïriuscito“a“manš¸ètenere“la“c˜hiarezza“dell'originale,‘µÅpGer“fare“questo“a“v˜olte“mi“sono“do˜vuto“allon˜tanare“dallaŽ¡stretta–÷7traduzione“letterale,‘ ÿspšGero“di“a•¸èv“erlo–÷7fatto“nel“mo˜do“migliore.‘R3Ho“cercato“di“"italianizzare"“una“buonaŽ¡parte–tËdei“termini“tecnici,‘¡©ancš¸èhe“se“pGer“alcuni“ho“preferito“man˜tenere“l'originale“inglese,‘¡©pGerc˜h€é“i“corrispGonden˜tiŽ¡italiani–“risultaš¸èv‘ÿqÐano“essere“fuorvian˜ti“e“morfologicamen˜te“atroGci.‘‚ØP˜er“quel“c˜he“riguarda“i“plurali“inglesi,‘1¯hoŽ¡seguito–¼2la“con•¸èv“enzione–¼2adottata“fra“gli“altri“da“Um¸èbšGerto“Eco“e“cio˜€è“di“esprimerli“con“i“corrisp˜onden¸èti“singolariŽ¡quando–Üâinseriti“in“un“conš¸ètesto“in“italiano.‘IlSono“certo“c˜he“il“mio“la˜v˜oro“€è“di“gran“lunga“pGerfettibile,‘ôïsia“purc˜h€éŽ¡le–8mie“conoscenze“del“RAID‘7þsono“limitate“e“quindi“pšGosso“a•¸èv“er–8espresso“dei“concetti“in“mo˜do“con¸ètorto“se“nonŽ¡p•Go“co–À`corretto,‘Û/sia“pGercš¸èh€é“di“alcune“parti“ho“a˜vuto“serie“dicolt€à“di“traduzione“in“italiano.‘³?Ogni“ev˜en˜tualeŽ¡suggerimen¸èto–U risulter€à“gradito:‘q€¼alessio@ar–ÿ}/c“etri.astr“o.it–U ¹,“¼tonno@stud.unip‘ÿ}/g.it“¹.ŽŽŽŒ‹Qþ Û_2 ý ~?Ÿ„€ÕÁGŽÀ2.‘ñ8P•®>erc“h€é–Õil“RAID“?’gݹ4ŽŽ ÕÁ ýV¯Ã1.3Ž‘¾Cosa–¸€è“necessarioŽ©Mª¹Questo–BHoš¸èwto“assume“c˜he“stiate“usando“uno“degli“ultimi“k˜ernel“2.2.x“o“2.0.x“con“la“corrispGon-Ž¤ ®den•¸ète›þÓpatc“h˜raid0145˜e˜la˜v“ersione˜0.90˜dei˜raidtoGols,‘é?o˜c“he˜stiate˜usando˜uno˜degli˜ultimi˜k“er-Ž¡nel–ë2.3“(vš¸èersione“ó  b> cmmi10µ>“¹2.3.46)“o“ev˜en˜tualmen˜te“il“k˜ernel“2.4.‘3|Sia“le“patc˜h“c˜he“i“raidtošGols“p˜ossonoŽ¡essere–…stroš¸èv‘ÿqÐati“presso“¼ftp://ftp..kernel.or–ÿ}/g/pub/linux/daemons/r“aid/alpha–…s¹,‘Q‡ed“in“qualc˜he“caso“pressoŽ¡¼http://p–ÿ}/e“ople.r“e“dhat.c“om/mingo/–Ïé¹.‘áÛLe“patcš¸èh“RAID,“il“pacc˜hetto“raidtoGols“ed“il“k˜ernel“do˜vrebbGero“a˜v˜ereŽ¡v¸èersioni–n°il“pi€ù“pšGossibile“corrisp˜onden•¸èti.‘¾/A‘n©v“olte–n°pu€ò“essere“necessario“usare“dei“kš¸èernel“pi€ù“v˜ecc˜hi“se“le“patc˜hŽ¡raid–U non“sono“dispšGonibili“p˜er“l'ultimo“k¸èernel.ŽŸ(Àœ¿2Ž‘ÁP•cerc“h€é–G\il“RAID“?ŽŸ¿:¹Pš¸èossono–/¨esserci“molte“buone“ragioni“pGer“usare“il“RAID.“Alcune“sono:‘^Äla“capacit€à“di“com˜binare“div˜ersi“disc˜hiŽ¡"reali"–U in“un“dispGositivš¸èo“"virtuale"“pi€ù“grande,“l'aumen˜to“delle“prestazioni“e“la“ridondanza.ŽŸ#ÃÃ2.1Ž‘¾Asp_úetti‘¸T‘þàecniciŽ¦¹Il–²ÐRAID‘²upšGer“Lin¸èux“pu€ò“funzionare“sulla“maggior“parte“dei“disp˜ositivi“a“blo˜cc¸èhi.‘ŠNon“imp˜orta“se“usateŽ¡dispGositivi–ºÅSCSI›º«o“IDE˜o“una“loro“comš¸èbinazione.‘¢pAlcuni“hanno“usato“il“Net˜w˜ork“BloGc˜k“Device“(NBD)‘º«conŽ¡pi€ù–U o“meno“successo.Ž©ؼAssicuratevi–V•cš¸èhe“il“bus“(o“i“bus)“a“cui“sono“collegati“i“disc˜hi“siano“abbastanza“v˜eloGci.‘uàNon“do˜vreste“a˜v˜ere“14Ž¡dispGositivi–§UW-SCSI‘˜su“un“bus“UW,“se“ogni“disco“pu€ò“fornire“10“MB/s“e“il“bus“pu€ò“sostenere“solo“40“MB/s.Ž¡Inoltre,‘B)do•¸èvreste›=ka“v“ere˜solo˜un˜disco˜pGer˜ogni˜bus˜IDE.˜F‘ÿ*¸ar˜la“v“orare˜i˜disc“hi˜come˜master˜e˜sla“v“e˜€è˜tremendoŽ¡pšGer–¥Île“prestazioni.‘c‹L'IDE‘¥ºnon“la•¸èv“ora–¥Îb˜ene“quando“dev¸èe“accedere“a“pi€ù“di“un“disco“p˜er“bus.‘c‹Naturalmen¸ète,Ž¡tutte–·4le“scš¸èhede“madri“pi€ù“recen˜ti“hanno“due“bus“IDE,“cos€ì“c˜he“pGossiate“mon˜tare“due“disc˜hi“in“RAID‘·senzaŽ¡do•¸èv“er–U acquistare“degli“ulteriori“con¸ètroller.Ž¦Il›U‘la•¸èy“er˜(strato)˜RAID‘UOnon˜ha˜assolutamen“te˜n“ulla˜a˜c“he˜fare˜con˜il˜la“y“er˜del˜lesystem.‘rÓP“otete˜mettereŽ¡qualsiasi–U lesystem“su“un“dispšGositiv¸èo“RAID,“cos€ì“come“su“qualunque“altro“disp˜ositiv¸èo“a“blo˜cc¸èhi.ŽŸ#ÃÃ2.2Ž‘¾T‘þàerminiŽŸMª¹L'acronimo–'¹"RAID"“indica“il“"Linš¸èux“Soft˜w˜are“RAID".‘éKQuesto“HO˜WTO‘'ƒnon“copre“nessuno“degli“aspGettiŽ¡dell'Hardw¸èare‘U RAID.Ž¦Quando–Šósi“descrivš¸èono“i“setup,‘˜h€è“utile“fare“riferimen˜to“al“n˜umero“dei“disc˜hi“e“alle“loro“dimensioni.‘ùP˜er“tuttoŽ¡l'HOš¸èWTO–WXla“lettera“ÀN“¹€è“usata“pGer“iden˜ticare“il“n˜umero“di“disc˜hi“attivi“nell'arra˜y“(senza“con˜tare“gli“spare-Ž¡disk).‘7La–¥°lettera“ÀS‘¥„¹€è“la“dimensione“del“pi€ù“piccolo“disco“dell'arraš¸èy‘ÿ*¸,‘ÈÇse“non“div˜ersamen˜te“spGecicato.‘7La“letteraŽ¡ÀP‘ˆ ¹€è–ˆusata“come“indice“di“prestazione“di“un“disco“dell'arra¸èy‘ÿ*¸,›”×in“MB/s.‘ jDi“solito,˜si“assume“cš¸èhe“tutti“i“disc˜hiŽ¡dell'arraš¸èy–U siano“ugualmen˜te“v˜eloGci,“il“c˜he“pu€ò“non“essere“sempre“v˜ero.Ž¦Occorre–áÅnotare“cš¸èhe“le“parole“"dispGositiv˜o"“(device)“e“"disco"“(disk)“signicano“la“stessa“cosa.‘oDi“solitoŽ¡i–ÊÒdispšGositivi“usati“p˜er“costruire“un“disp˜ositivš¸èo“RAID‘Ê´sono“delle“partizioni“sui“disc˜hi“e“non“necessariamen˜teŽ¡in•¸èteri›2Õdisc“hi.‘ žCom“binare˜div“erse˜partizioni˜su˜un˜disco˜di˜solito˜non˜ha˜senso,‘jBcos€ì˜le˜parole˜dispGositivi˜eŽ¡discš¸èhi–U signicano“"partizioni“su“disc˜hi“div˜ersi".ŽŸ#ÃÃ2.3Ž‘¾I–¸liv elli“RAIDŽŸMª¹Viene–Î!qui“presenš¸ètato“brev˜emen˜te“ci€ò“c˜he“€è“suppGortato“nelle“Lin˜ux“RAID‘Îpatc˜h.‘܃Alcune“delle“informazioniŽ¡sono–UFdei“ragguagli“assolutamenš¸ète“basilari“sul“RAID.“Saltate“pure“questa“parte“se“conoscete“il“RAID.“P˜oteteŽŽŽŒ‹cÌ Û_2 ý ~?Ÿ„€ÕÁGŽÀ2.‘ñ8P•®>erc“h€é–Õil“RAID“?’gݹ5ŽŽ ÕÁ ýV¯sempre–U tornare“a“leggerla“se“do•¸èv“este›U a“v“ere˜dei˜problemi˜:).ŽŸؼLe–U patcš¸èh“RAID“attuali“pGer“Lin˜ux“suppGortano“i“seguen˜ti“liv˜elli:ŽŸؼ‘ó !",š cmsy10¸ŽŽŽ‘ÀLinear‘ÕmoQÂdeŽŸ®‘$@^ŽŽŽ‘/¹Due–±ío“pi€ù“discš¸èhi“sono“com˜binati“in“un“dispGositiv˜o“sico.‘‡èI‘±Õdisc˜hi“sono“"appšGesi"“(acco˜dati)“l'unoŽ¤ ®‘/all'altro,‘§9cos€ì––Ílo“scrivš¸èere“sul“dispGositiv˜o“RAID‘–¼riempir€à“prima“il“disco“0,‘§9pGoi“il“disco“1“e“cos€ì“via.Ž¡‘/Non–U €è“obbligatorio“cš¸èhe“i“disc˜hi“abbiano“la“stessa“dimensione.‘q€Infatti,“non“impGorta“aatto“:)Ž©®‘$@^ÀŽŽŽ‘/¹Non–¨c'€è“ridondanza“in“questo“livš¸èello.‘ZXSe“un“disco“si“danneggia,‘probabilmen˜te“tutti“i“dati“sarannoŽ¡‘/pGersi.‘t&P•¸èotreste›Vcom“unque˜essere˜fortunati˜e˜recup•Gerare˜alcuni˜dati,‘–;p“erc¸èh€é˜il˜lesysytem˜star€àŽ¡‘/pšGerdendo–U solo“un“grande“blo˜cco“consecutivš¸èo“("c˜h˜unk")“di“dati.Ž¦‘$@^ÀŽŽŽ‘/¹Le–©qprestazioni“in“lettura“e“scrittura“non“miglioreranno“pGer“delle“singole“letture/scritture.‘nrMa“seŽ¡‘/div•¸èersi›:èuten“ti˜utilizzano˜il˜dispšGositiv“o,‘tZp˜otreste–:èessere“fortunati“nel“caso“in“cui“un“uten¸ète“usi“ilŽ¡‘/primo–Ødisco“e“l'altro“stia“accedendo“a“dei“le“c¸èhe“stanno“sul“secondo“disco.‘€¨Se“succede“questo,Ž¡‘/doš¸èvreste–U accorgervi“di“un“incremen˜to“di“prestazioni.Ž¤®‘¸ŽŽŽ‘ÀRAID-0Ž¡‘$@^ŽŽŽ‘/¹Detto–¿Óanc¸èhe“mošGdalit€à“(mo˜de)“strip˜e.‘±šCome“il“linear“mo˜de,‘Ú€eccetto“c¸èhe“le“letture“e“le“scrittureŽ¤ ®‘/sono–ˆÔfatte“in“parallelo“sui“disc•¸èhi.‘ œI‘ˆ…disc“hi›ˆÔdo“vrebbGero˜essere˜approssimativ‘ÿqÐamen“te˜della˜stessaŽ¡‘/dimensione.‘ŸrSiccome–¹Ætutti“gli“accessi“sono“eettuati“in“parallelo,‘Òïi“discš¸èhi“si“do˜vrebbGero“riempireŽ¡‘/nella–ÐÏstessa“misura.‘äŒSe“un“disco“€è“pi€ù“grande“degli“altri,‘ï»lo“spazio“ecceden¸ète“€è“ancora“usato“nelŽ¡‘/dispGositivš¸èo–LRAID,“ma“l'accesso“a˜vv˜err€à“solo“sul“disco“pi€ù“grande“duran˜te“le“scritture“alla“ne“delŽ¡‘/dispGositivš¸èo–U RAID.“Questo“v‘ÿqÐa“naturalmen˜te“a“detrimen˜to“(deterioramen˜to??)‘q€delle“prestazioni.Ž¦‘$@^ÀŽŽŽ‘/¹Come–ÍdpšGer“il“linear“mo˜de,‘ëunon“c'€è“nessuna“ridondanza“in“questo“liv•¸èello.‘ÚMDiv“ersamen“te–Íddal“linearŽ¡‘/mošGde,‘ÆFnon–¢sar€à“p˜ossibile“recup˜erare“alcun“dato“se“un“disco“si“danneggia.‘5ûSe“un“disco“viene“rimossoŽ¡‘/da–ý•un“RAID-0,‘il“RAID‘ýnon“pšGerder€à“solo“un“grande“consecutiv¸èo“blo˜cco“di“dati,‘esso“sar€à“riempitoŽ¡‘/con–4‹piccoli“bucš¸èhi“lungo“tutto“il“dispGositiv˜o.‘f¤e2fsc˜k“non“sar€à“probabilmen˜te“in“grado“di“recupGerareŽ¡‘/molto–U da“questo“dispGositiv¸èo.Ž¦‘$@^ÀŽŽŽ‘/¹Le–¿4prestazioni“in“lettura“e“scrittura“cresceranno,‘Ý0pGoic¸èh€é“le“letture“e“scritture“sono“fatte“in“paralleloŽ¡‘/sui–_”discš¸èhi.‘§Questa“€è“solitamen˜te“la“ragione“pGer“cui“si“implemen˜ta“un“RAID-0.‘§Se“i“bus“c˜he“colleganoŽ¡‘/i–U discš¸èhi“sono“abbastanza“v˜eloGci,“si“do˜vrebbGe“ottenere“qualcosa“di“molto“vicino“a“N*P“MB/s.Ž¤®‘¸ŽŽŽ‘ÀRAID-1Ž¡‘$@^ŽŽŽ‘/¹Questa–æ €è“la“prima“moGdalit€à“cš¸èhe“presen˜ta“ridondanza.‘$erc“h€é–Õil“RAID“?’gݹ6ŽŽ ÕÁ ýV¯‘$@^ÀŽŽŽ‘/¹Questo–ö>livš¸èello“RAID‘önon“€è“usato“molto“spGesso.‘TÛPu€ò“essere“usato“su“tre“o“pi€ù“disc˜hi.‘TÛIn˜v˜ece“diŽ¤ ®‘/fare–jˆun“immagine“(mirror)“completa“delle“informazioni,‘oâesso“tiene“delle“informazioni“di“parit€à“suŽ¡‘/un–Tdisco“e“scrivš¸èe“i“dati“sugli“altri“disc˜hi“in“una“maniera“simile“al“RAID-0.‘¯Siccome“un“disco“€èŽ¡‘/riserv‘ÿqÐato–b|pGer“le“informazioni“di“parit€à,‘eÓla“dimensione“dell'arraš¸èy“sar€à“(N-1)*S,“do˜v˜e“S‘bxrappresen˜taŽ¡‘/la–¢dimensione“del“pi€ù“piccolo“disco“dell'arraš¸èy‘ÿ*¸.‘X]Cos€ì“come“nel“RAID-1,‘µQi“disc˜hi“do˜vrebbGero“essereŽ¡‘/della–4stessa“dimensione,‘:µaltrimenš¸èti“il“v‘ÿqÐalore“S‘4nella“form˜ula“preceden˜te“sar€à“la“dimensione“del“pi€ùŽ¡‘/piccolo–U disco“dell'arra¸èy‘ÿ*¸.Ž©IB‘$@^ÀŽŽŽ‘/¹Se–Q;un“disco“si“danneggia,‘Rle“informazioni“di“parit€à“pšGossono“essere“utilizzate“p˜er“ricostruire“tutti“iŽ¡‘/dati.‘q€Se–U si“danneggiano“due“disc¸èhi“tutti“i“dati“saranno“pGersi.Ž¦‘$@^ÀŽŽŽ‘/¹La–]Æragione“pšGer“cui“questo“liv¸èello“non“€è“usato“sp˜esso“€è“cš¸èhe“l'informazione“di“parit€à“€è“ten˜uta“su“unŽ¡‘/disco.‘µþQuindi–ÁJquesta“informazione“devš¸èe“essere“aggiornata“¼o‘ÿ}/gni‘ƹv˜olta“uno“degli“altri“disc˜hi“vieneŽ¡‘/scritto.‘gGQuindi,‘<—il–6udisco“cš¸èhe“con˜tiene“l'informazione“di“parit€à“div˜en˜ta“un“collo“di“bGottiglia,‘<—se“essoŽ¡‘/non–ß•€è“molto“pi€ù“vš¸èeloGce“degli“altri“disc˜hi.‘ÞCom˜unque,‘2se“vi“accade“di“a˜v˜ere“molti“disc˜hi“len˜ti“edŽ¡‘/uno–U molto“vš¸èeloGce,“questo“liv˜ello“RAID“pu€ò“essere“molto“utile.Ž¤IB‘¸ŽŽŽ‘ÀRAID-5Ž¡‘$@^ŽŽŽ‘/¹Questa–ËX€è“forse“la“pi€ù“utile“moGdalit€à“RAID‘Ë5quando“di“desidera“comš¸èbinare“un“gran“n˜umero“di“disc˜hiŽ¤ ®‘/e–ÿRmanš¸ètenere“ancora“una“certa“ridondanza.‘pIl“RAID-5“pu€ò“essere“usato“su“tre“o“pi€ù“disc˜hi,‘)ÞconŽ¡‘/zero–"úo“pi€ù“spare-disk.‘`ÉIl“dispGositivš¸èo“RAID-5“c˜he“viene“fuori“a˜vr€à“la“dimensione“(N-1)*S,“come“nelŽ¡‘/RAID-4.‘‡ÄLa–7grande“dierenza“fra“il“RAID-5“ed“il“RAID-4“€è“c¸èhe“le“informazioni“di“parit€à“sonoŽ¡‘/distribuite–D”in“mošGdo“uguale“fra“i“disc¸èhi“di“cui“€è“comp˜osto“l'arra¸èy‘ÿ*¸,‘Gãevitando“cos€ì“il“collo“di“b˜ottigliaŽ¡‘/cš¸èhe–U si“crea˜v‘ÿqÐa“nel“RAID-4.Ž¦‘$@^ÀŽŽŽ‘/¹Se–„Zuno“dei“discš¸èhi“si“danneggia,‘®tutti“i“dati“saranno“ancora“in˜tatti,‘®grazie“alle“informazioni“di“parit€à.Ž¡‘/Se–Á—degli“spare-disk“sono“dispšGonibili,‘ܵla“ricostruzione“inizier€à“immediatamen¸ète“dop˜o“il“guasto“delŽ¡‘/dispGositivš¸èo.‘Ä6Se–p²due“disc˜hi“si“danneggiano“sim˜ultaneamen˜te,‘w–tutti“i“dati“saranno“pGersi.‘Ä6Il“RAID-5Ž¡‘/pu€ò›U sopra•¸èvviv“ere˜al˜danneggiamen“to˜di˜un˜disco,˜ma˜non˜a˜quello˜di˜due˜o˜pi€ù.Ž¦‘$@^ÀŽŽŽ‘/¹Sia–U le“prestazioni“in“scrittura“cš¸èhe“in“lettura“migliorano,“ma“€è“dicile“predire“di“quan˜to.ŽŸ ª¯À2.3.1Ž‘#!\Spare‘ÕdisksŽŸMª¹Gli–Ý£spare“disks“sono“discš¸èhi“c˜he“non“fanno“parte“dell'arra˜y“RAID‘Ý€no“a“c˜he“uno“dei“disc˜hi“attivi“smette“diŽ¡funzionare.‘›ÈQuando– ãil“guasto“di“un“disco“viene“rilev‘ÿqÐato,‘<questo“dispGositivš¸èo“viene“marcato“come“"cattiv˜o"Ž¡(bad)–U e“la“ricostruzione“viene“immediatamen¸ète“iniziata“su“uno“degli“spare-disk“a“dispGosizione.Ž©ؼQuindi,‘$Sgli–spare-disk“aggiungono“un'utile“extra“sicurezza“spšGecialmen¸ète“ai“sistemi“RAID-5.‘]+Ci“si“pu€ò“p˜erme-Ž¡ttere–Ùdi“far“la•¸èv“orare–Ùil“sistema“pšGer“un“p˜o',‘Mcon“un“disp˜ositiv¸èo“guasto,‘Mp˜oic¸èh€é“tutta“la“ridondanza“€è“conserv‘ÿqÐataŽ¡pGer–U mezzo“degli“spare-disk.Ž¦Non–³°si“pu€ò“essere“sicuri“cš¸èhe“un“sistema“sopra˜vviv‘ÿqÐa“al“guasto“di“un“disco.‘0Il“RAID‘³˜la˜y˜er“do˜vrebbGe“gestire“iŽ¡guasti–›ñai“discš¸èhi“piuttosto“bGene,‘­¦ma“i“driv˜er“SCSI‘›ßp•Gotrebb“ero–›ñcrollare“sulla“gestione“degli“errori,‘­¦o“il“c˜hipsetŽ¡IDE›U p•Gotrebb“e˜blo“ccarsi,˜oppure˜una˜quan¸ètit€à˜di˜altre˜cose˜p“otrebb“e˜accadere.ŽŸ"ò]Ã2.4Ž‘¾F‘þàare–¸lo“Sw ap“su“RAIDŽŸMª¹Non–¸“c'€è“nessuna“ragione“nell'usare“il“RAID‘¸kpGer“questioni“di“prestazioni“dello“swš¸èap.‘=QIl“k˜ernel“stesso“pu€ò“creareŽ¡delle–U stripšGe“facendo“lo“sw¸èap“su“pi€ù“disp˜ositivi,“se“solo“gli“date“la“stessa“priorit€à“nel“le“fstab.Ž¦Un–U fstab“bGen“fatto“si“presen¸èta“cos€ì:ŽŸÁ/dev/sda2‘$½´swap‘9¼dswap‘þ°defaults,pri=1‘¿0‘?¬0Ž¡/dev/sdb2‘$½´swap‘9¼dswap‘þ°defaults,pri=1‘¿0‘?¬0ŽŽŽŒ‹†Â Û_2 ý ~?Ÿ„€ÕÁGŽÀ3.‘ñ8Questioni‘Õhardw®>are’\ŠG¹7ŽŽ ÕÁ ýV¯Á/dev/sdc2‘$½´swap‘9¼dswap‘þ°defaults,pri=1‘¿0‘?¬0Ž¤ ®/dev/sdd2‘$½´swap‘9¼dswap‘þ°defaults,pri=1‘¿0‘?¬0Ž¡/dev/sde2‘$½´swap‘9¼dswap‘þ°defaults,pri=1‘¿0‘?¬0Ž¡/dev/sdf2‘$½´swap‘9¼dswap‘þ°defaults,pri=1‘¿0‘?¬0Ž¡/dev/sdg2‘$½´swap‘9¼dswap‘þ°defaults,pri=1‘¿0‘?¬0ŽŸؼ¹Questa–Kîcongurazione“pGermette“alla“maccš¸èhina“di“fare“lo“sw˜ap“in“parallelo“su“sette“dispGositivi“SCSI.“Non“c'€èŽ¡nessuna–U necessit€à“del“RAID,“visto“cš¸èhe“questa“€è“da“sempre“una“caratteristica“in˜trinseca“del“k˜ernel.Ž©ؼUn'altra–(Jragione“pšGer“usare“il“RAID‘(p˜er“lo“sw¸èap“€è“l'elev‘ÿqÐata“disp˜onibilit€à.‘êýSe“p˜er“esempio“si“costruisce“unŽ¡sistema–§5cš¸èhe“fa“il“b•Go“ot–§5su“un“dispGositiv˜o“RAID-1,‘ûºil“sistema“do˜vrebbGe“essere“in“grado“di“sopra˜vviv˜ere“alŽ¡danneggiamenš¸èto–kEdi“un“disco.‘#Ma“se“il“sistema“sta˜v‘ÿqÐa“facendo“lo“sw˜ap“sul“dispGositiv˜o“guasto,‘š ci“sar€à“sicuramen˜teŽ¡un–U blošGcco.‘q€F‘ÿ*¸are“lo“sw¸èap“su“un“disp˜ositivš¸èo“RAID-1“risolv˜erebbGe“questo“problema.Ž¦Ci–oõsono“state“molte“discussioni“se“fare“lo“sw¸èap“fosse“stabile“sui“dispGositivi“RAID.“Questo“€è“un“dibattitoŽ¡con•¸ètin“uo,‘‚¹c“he–FgdipšGende“p˜er“la“maggior“parte“su“altri“asp˜etti“del“kš¸èernel.‘EVNel“momen˜to“in“cui“viene“scrittoŽ¡questo–ì°HOš¸èWTO,“sem˜bra“c˜he“fare“lo“sw˜ap“su“RAID‘ì•sia“pGerfettamen˜te“stabile,‘“¼e–ÿ}/c“c“etto‘Ž>¹quando–ì°l'arra˜y“€è“in“faseŽ¡di–æýricostruzione“(pšGer“esempio“dop˜o“cš¸èhe“un“n˜uo˜v˜o“disco“€è“stato“inserito“in“un“arra˜y“danneggiato).‘'QuandoŽ¡il–àkš¸èernel“2.4“sar€à“rilasciato,‘IÐquesta“€è“una“questione“c˜he“sar€à“sistemata“piuttosto“rapidamen˜te,‘IÐma“no“adŽ¡allora,‘p£doš¸èvreste–k#testare“profondamen˜te“il“sistema“da“soli“no“a“c˜he“sarete“sošGddisfatti“p˜er“la“stabilit€à“oppureŽ¡concluderete–U cš¸èhe“non“v˜olete“fare“lo“sw˜ap“su“RAID.Ž¦Pš¸èotete–#ácostruire“un“RAID‘#Õin“un“le“di“sw˜ap“su“un“lesystem“sul“v˜ostro“dispGositiv˜o“RAID,“o“pGotete“costruireŽ¡un–7IdispGositivš¸èo“RAID‘7Acome“una“partizione“di“sw˜ap,›=@come“preferite.‘gŽCome“sempre,˜il“dispGositiv¸èo“RAID‘7A€è“soloŽ¡un–U dispšGositiv¸èo“a“blo˜cc¸èhi.ŽŸ(Àœ¿3Ž‘ÁQuestioni‘G\hardwcareŽŸ¿:¹Questo–U paragrafo“tratta“alcune“delle“questioni“hardwš¸èare“implicate“duran˜te“il“la˜v˜oro“di“un“soft˜w˜are“RAID.ŽŸ#ÃÃ3.1Ž‘¾Congurazione‘¸IDEŽŸMª¹E'›rda•¸èvv“ero–rtegrit€à–×Pdei“dati:¹All'inizio,‘mÌl'IDE‘5pnon–5ªpšGotev‘ÿqÐa“in“alcun“mo˜do“assicurare“cš¸èhe“i“dati“in˜viati“sul“busŽ¡‘IDE‘LsarebbGero–~stati“gli“stessi“dati“scritti“sul“disco.‘¸›Questo“era“do¸èvuto“alla“totale“mancanza“di“par-Ž¡‘it€à,›û›con•¸ètrollo‘ÚO(c“hec“ksum),˜ecc.‘Con–ÚOlo“standard“Ultra-DMA,“i“discš¸èhi“IDE‘Ú-ora“compiono“un“con˜trolloŽ¡‘(c•¸èhec“ksum)–U sui“dati“cš¸èhe“ricev˜ono“e“quindi“div˜en˜ta“molto“pi€ù“dicile“a˜v˜ere“dei“dati“corrotti“.Ž¦‘¸ŽŽŽ‘ÀPrestazioni:‘q€¹Non–U ho“inš¸ètenzione“scriv˜ere“delle“prestazioni“dell'IDE.“La“v˜era“storia“in“brev˜e“€è:Ž¦‘$@^ÀŽŽŽ‘/¹I–U discš¸èhi“IDE“sono“v˜eloGci“(12“MB/s“and“oltre)ŽŽŽŒ‹˜v Û_2 ý ~?Ÿ„€ÕÁGŽÀ3.‘ñ8Questioni‘Õhardw®>are’\ŠG¹8ŽŽ ÕÁ ýV¯‘$@^ÀŽŽŽ‘/¹L'IDE–U carica“la“Cpu“pi€ù“dello“SCSI“(ma“c¸èhi“se“ne“impGorta?)ŽŸ—˜‘$@^ÀŽŽŽ‘/¹Usare–U soloÀun“¹disco“IDE“pGer“IDE“bus,“i“discš¸èhi“sla˜v˜e“deteriorano“le“prestazioniŽŸ—˜‘¸ŽŽŽ‘ÀSopra•®>vviv“enza–ÿ™ai“Guasti:‘x£¹I–Xndriv¸èer›X±IDE“in˜genere˜sopra•¸èvviv“ono˜al˜guasto˜di˜un˜dispGositiv“o˜IDE.Ž¤ ®‘Il›h5RAID‘gîla•¸èy“er˜marc“her€à˜il˜disco˜come˜guasto˜e˜se˜si˜sta˜la“v“orando˜su˜un˜sistema˜RAID‘gîliv“ello˜1˜oŽ¡‘supGeriore,‘?Öla–:„maccš¸èhina“do˜vrebbGe“la˜v˜orare“ancora“bGene“nc˜h€é“non“viene“arrestata“pGer“la“man˜utenzione.ŽŸ«ÅE'‘.·Àmolto›.ð¹impGortan•¸ète,‘ecc“he˜v“enga˜usato˜Àun˜¹solo˜disco˜IDE–.·pGer˜IDE“bus.‘þïNon˜solo˜due˜disc•¸èhi˜ro“vinano˜leŽ¡prestazioni,‘HÉma–E´il“guasto“di“un“disco“spšGesso“comp˜orta“il“blo˜cco“del“bus,‘HÉe“quindi“il“blo˜cco“di“tutti“i“disc¸èhi“suŽ¡quel–°àbus.‘„ÀIn“un“sistema“RAID‘°Èa“proš¸èv‘ÿqÐa“di“guasto“(fault-toleran˜t)“(liv˜elli“RAID‘°È1,4,5),‘ÇÐil“guasto“di“un“discoŽ¡pu€ò–U=essere“gestito,‘UEma“il“danneggiamenš¸èto“di“due“disc˜hi“(i“due“disc˜hi“sullo“stesso“bus“c˜he“si“bloGccano“a“causaŽ¡del–-Õguasto“di“uno“dei“due)“render€à“l'arraš¸èy“in˜utilizzabile.‘dgInoltre,‘5±quando“il“disco“master“su“un“bus“si“guasta,Ž¡lo›U sla•¸èv“e˜o˜il˜con“troller˜IDE˜pGossono˜risultare˜tragicamen“te˜confusi.Ž©ؼEsistono–e"degli“economici“PCI–dÜIDE“con¸ètroller–e"sul“mercato.‘¡…E'‘dÜpšGossibile“acquistare“due“o“quattro“bus“p˜erŽ¡circa–ÓÊ80$.‘í}Considerando“il“prezzo“pi€ù“basso“dei“discš¸èhi“IDE‘Ó©rispGetto“agli“SCSI,“direi“c˜he“un“arra˜y“di“disc˜hiŽ¡IDE‘õap•Gotrebb“e–õŠessere“v•¸èeramen“te›õŠun'in“teressan“te˜soluzione˜se˜vi˜pGotete˜accon“ten“tare˜di˜a“v“ere˜a˜dispGosizioneŽ¡un–þnš¸èumero“relativ‘ÿqÐamen˜te“basso“(circa“8“probabilmen˜te)“di“disc˜hi“da“collegare“al“sistema“(a“meno“c˜he“nonŽ¡abbiate–U molti“slot“PCI“pGer“collegare“degli“IDE“con¸ètroller).Ž¦L'IDE‘Œ„ha–ŒÕmaggiori“problemi“di“cablatura“quando“si“creano“grandi“arra•¸èy‘ÿ*¸.‘žAnc“he–ŒÕse“a•¸èv“ete–ŒÕa“dispGosizioneŽ¡abbastanza–à)slot“PCI,“€è“dicile“cš¸èhe“pGossiate“sistemare“pi€ù“di“8“disc˜hi“in“un“sistema“con˜tin˜uando“a“man˜tenerloŽ¡funzionanš¸ète–U senza“corruzione“dei“dati“(causato“dalla“lunghezza“eccessiv‘ÿqÐa“dei“ca˜vi“IDE).ŽŸ"¥äÃ3.2Ž‘¾Sostituzione–¸di“discš hi“"al“v˜olo"“(Hot“Sw˜ap)Ž©Mª¹Questa–®Ñ€è“stata“una“delle“questioni“maggiormenš¸ète“trattate“sulla“lin˜ux-k˜ernel“list“pšGer“un“p˜o'“di“temp˜o.‘:Sebb˜eneŽ¡la–°¿sostituzione“"al“vš¸èolo"“dei“disc˜hi“sia“suppGortata“a“qualc˜he“liv˜ello,‘ǧnon“€è“ancora“qualcosa“c˜he“pGossa“essereŽ¡fatta‘U facilmen¸ète.ŽŸ ^6À3.2.1Ž‘#!\Sostituzione–Õ"al“vš®>olo"“(Hot-sw˜apping)“dei“disc˜hi“IDEŽ¦NO‘w£!–ð¹L'IDE‘Ünon“gestisce“assolutamenš¸ète“la“sostituzione“"al“v˜olo".‘VpDi“sicuro,›-pu€ò“funzionare,˜se“il“driv¸èer“IDEŽ¡€è–cEcompilato“come“mošGdulo“(p˜ossibile“solo“con“i“k¸èernel“della“serie“2.2),‘fÎe“se“lo“ricaricate“dop˜o“a•¸èv“ere‘cEsostituitoŽ¡il–N±disco.‘o[Ma“pGotreste“ancš¸èhe“nire“con“un“con˜troller“IDE‘N¯"fritto"“e“a˜v˜ere“un“tempGo“di“fermo“macc˜hina“moltoŽ¡maggiore–U cš¸èhe“se“a˜v˜este“sostituito“il“driv˜e“con“il“sistema“arrestato.ŽŸؼIl–ƒproblema“principale,‘peccetto“le“questioni“elettricš¸èhe“c˜he“pGossono“distruggere“il“v˜ostro“hardw˜are,‘p€è“c˜he“il“busŽ¡IDE‘J”devš¸èe–J—essere“riesaminato“dopGo“c˜he“i“disc˜hi“sono“stati“sostituiti.‘mýIl“driv˜er“IDE‘J”non“pu€ò“al“momen˜to“farlo.Ž¡Se–^Uil“n•¸èuo“v“o–^Udisco“€è“al“100%“uguale“al“v•¸èecc“hio›^U(geometria,–`¢ecc.),“¼p–ÿ}/otr“ebb“e‘¤¹funzionare˜anc¸èhe˜senza˜riesame˜delŽ¡bus,–U ma“in“v¸èerit€à“questo“vuol“dire“camminare“sulla“lama“del“rasoio.ŽŸ ^6À3.2.2Ž‘#!\Sostituzione–Õ"al“vš®>olo"“(Hot-sw˜apping)“di“disc˜hi“SCSIŽ¦¹Nemmeno–˜ºil“normale“hardwš¸èare“SCSI‘˜‹ore“la“sostituzione“"al“v˜olo".‘2´ÀP®>otrebbQÂe“¹pGer€ò“funzionare“com˜unque.‘2´SeŽ¡il–©vš¸èostro“SCSI‘¨òdriv˜er“suppGorta“il“riesame“del“bus“e“il“collegamen˜to“e“la“rimozione“di“disp•Gositivi,‘Ë„p“otreste‘©essereŽ¡in–TÒgrado“di“sostituire“al“vš¸èolo“i“disc˜hi.‘qfCom˜unque,‘Tâin“un“normale“bus“SCSI“non“si“do˜vrebbGero“probabilmen˜teŽ¡scollegare–%Õi“dispGositivi“menš¸ètre“il“sistema“€è“ancora“alimen˜tato.‘a¼Ma,‘/Jdi“n˜uo˜v˜o,‘/Jp•Gotrebb“e–%Õfunzionare“(e“pGotresteŽ¡ancš¸èhe–U nire“con“dell'hardw˜are“"fritto").ŽŸؼLo› ,SCSI‘þla•¸èy“er˜Àdo®>vrebbQÂe˜¹sopra“vviv“ere˜se˜un˜disco˜cessa˜di˜funzionare,‘6/ma˜non˜tutti˜gli˜SCSI‘þdriv“er˜sonoŽ¡ancora–Þ½in“grado“di“gestire“questo.‘WSe“il“vš¸èostro“driv˜er“SCSI‘Þšsi“bloGcca“quando“un“disco“si“guasta,‘$il“sistemaŽ¡croller€à–U con“esso,“tutto“sommato“il“collegamenš¸èto“"al“v˜olo"“non“€è“pGoi“cos€ì“in˜teressan˜te.ŽŽŽŒ‹ ©Â Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’¹9ŽŽ ÕÁ ýV¯À3.2.3Ž‘#!\Sostituzione–Õ"al“vš®>olo"“(Hot-sw˜apping)“con“SCAŽ©Mª¹Con–oçlo“SCA,“do¸èvrebbšGe“essere“p˜ossibile“collegare“i“disp˜ositivi“"al“v•¸èolo".‘%Com“unque,‘¿io–oçnon“p˜osseggo“l'hardw¸èareŽ¤ ®necessario–/$a“proš¸èv‘ÿqÐare“questa“funzione,‘6½non“sono“a“conoscenza“di“nessuno“c˜he“ci“abbia“pro˜v‘ÿqÐato,‘6½cos€ì“non“pGossoŽ¡dare–U nessuna“"ricetta"“su“come“farlo.ŽŸؼSe–úvš¸èolete“"gioGcare"“con“questo,‘P1do˜vreste“com˜unque“conoscere“abbastanza“del“funzionamen˜to“dello“SCSI‘ÇeŽ¡del–*ðRAID.“Cos€ì“non“scrivš¸èer€ò“qui“qualcosa“c˜he“non“pGosso“essere“sicuro“c˜he“funzioni,‘3`pGosso“in˜v˜ece“darvi“alcuniŽ¡indizi:Ž¤ؼ‘¸ŽŽŽ‘¹F‘ÿ*¸ate–U un“grep“pGer“cercare“Àremo•®>v“e-single-device–U ¹in“Àlin•®>ux/driv“ers/scsi/scsi.cŽŸ®‘¸ŽŽŽ‘¹Date–U un“oGcc¸èhiata“aÀraidhotremo•®>v“e–U ¹e“ÀraidhotaddŽ¡¹Non–uütutti“i“drivš¸èer“SCSI‘u±suppGortano“il“collegamen˜to“e“la“rimozione“dei“dispGositivi.‘ÔNella“serie“dei“k˜ernelŽ¤ ®2.2,‘úùalmeno–¦›l'Aš¸èdaptec“2940“ed“il“Sym˜bios“NCR53c8xx“sem˜brano“suppšGortarlo,‘úùgli“altri“p˜otrebb˜ero“e“nonŽ¡p•Gotrebb“ero.‘q€Apprezzerei–U molto“se“qualcuno“a•¸èv“esse–U ulteriori“fatti“da“ripGortare“sull'argomen¸èto...ŽŸ(Àœ¿4Ž‘ÁRAID‘G\setupŽŸèÃ4.1Ž‘¾General‘¸setupŽ¦¹Questo–U €è“quello“di“cui“a•¸èv“ete–U bisogno“pGer“qualunque“liv¸èello“RAID:ŽŸؼ‘¸ŽŽŽ‘¹Un›ÇGk•¸èernel.‘ÇõPreferibilmen“te˜un˜k“ernel˜stabile˜della˜serie˜2.2.x,‘ãÑoppure˜l'ultimo˜2.0.x.‘Çõ(Se˜il˜k“ernel˜2.4Ž¡‘fosse–U stato“rilasciato“quando“leggerete“questo“doGcumen¸èto,“usate“quest'ultimo)Ž©®‘¸ŽŽŽ‘¹Le–ÐdRAID‘ÐDpatcš¸èh.‘ãMC'€è“di“solito“una“patc˜h“dispšGonibile“p˜er“i“kš¸èernel“recen˜ti“(Se“tro˜v‘ÿqÐate“un“k˜ernel“2.4,‘ï5leŽ¡‘patcš¸èh–U sono“gi€à“state“incluse“e“quindi“vi“pGotete“dimen˜ticare“di“questo“pun˜to)Ž¦‘¸ŽŽŽ‘¹I–U RAID“toGol.Ž¦‘¸ŽŽŽ‘¹Pš¸èazienza,–U Pizza,“e“la“v˜ostra“bGev‘ÿqÐanda“con“caeina“preferita.ŽŸؼT‘ÿ*¸utto–1¼questo“soft•¸èw“are–1¼pu€ò“essere“tro¸èv‘ÿqÐato“presso“Áftp://ftp.fi.kernel.org/pub/linux“¹I–1„RAID“toGol–1¼e“leŽ¡patc¸èh–9sono“nella“subšGdirectory“Ádaemons/raid/alpha“¹sub˜directory‘ÿ*¸.‘\ÞI‘)k¸èernel“si“p˜ossono“tro¸èv‘ÿqÐare“nella“sub˜direc-Ž¡tory‘U Ákernel¹.Ž©ؼApplicate–rwla“patcš¸èh“al“k˜ernel,‘yÌconguratelo“pšGer“includere“il“supp˜orto“al“livš¸èello“RAID‘roc˜he“v˜olete“usare.‘É„Com-Ž¡pilatelo–U ed“installatelo.Ž¦P¸èoi,–U decompattate,“congurate,“compilate“ed“installate“i“RAID“toGol.Ž¦Ok,›Àfatto.‘3™Se–›jfate“un“reb•Go“ot–›jora,˜doš¸èvreste“a˜v˜ere“un“le“di“nome“Á/proc/mdstat¹.‘3™Ricordate,‘Àquesto“le“€è“v˜ostroŽ¡amico.›^QGuardate–ùfcosa“con¸ètiene“facendo“un“Ácat‘?¬/proc/mdstat¹.˜Esso“doš¸èvrebbGe“dirvi“c˜he“a˜v˜ete“la“correttaŽ¡RAID–U pšGersonalit¸èy“(mo˜dalit€à“RAID)“registrata“e“c¸èhe“nessun“disp˜ositivš¸èo“RAID“€è“al“momen˜to“attiv˜o.Ž¦Create–U ora“le“partizioni“cš¸èhe“v˜olete“includere“nel“RAID“arra˜y‘ÿ*¸.Ž¦Da–U ora,“analizziamo“spšGecicamen¸ète“ogni“mo˜dalit€à“in“maniera“separata.ŽŸ#ÃÃ4.2Ž‘¾Linear‘¸mo_údeŽŸMª¹Ok,‘I[a•¸èv“ete–Fja“dispGosizione“due“o“pi€ù“partizioni“cš¸èhe“non“hanno“necessariamen˜te“le“stesse“dimensioni“(ma“natu-Ž¡ralmen¸ète›U p•Gotrebb“ero˜a•¸èv“erle),˜v“olete˜a˜questo˜pun“to˜"appGenderle"˜una˜all'altra.ŽŽŽŒ‹ ¼Ñ Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹10ŽŽ ÕÁ ýV¯Preparate–j“il“le“Á/etc/raidtab“¹pšGer“dare“una“descrizione“del“v¸èostro“sistema.‘±ÚIo“ho“preparato“un“raidtab“p˜erŽ¤ ®due–U discš¸èhi“in“linear“moGde,“il“le“si“presen˜ta“nel“seguen˜te“moGdo:Ž©ؼÁraiddev‘?¬/dev/md0Ž¡‘)ý`raid-level‘~linearŽ¡‘)ý`nr-raid-disks‘¿2Ž¡‘)ý`chunk-size‘~32Ž¡‘)ý`persistent-superblock‘?¬1Ž¡‘)ý`device‘4|¸/dev/sdb6Ž¡‘)ý`raid-disk‘$½´0Ž¡‘)ý`device‘4|¸/dev/sdc5Ž¡‘)ý`raid-disk‘$½´1Ž¦¹Gli– Zspare-disk“non“sono“suppšGortati“in“questa“mo˜dalit€à.‘X“Se“un“disco“si“guasta,‘Nl'arra¸èy“si“blo˜cca“con“esso.‘X“NonŽ¡ci–U sono“informazioni“da“mettere“su“uno“spare“disk.Ž©ؼProbabilmenš¸ète–˜\vi“c˜hiederete“come“mai“abbia“spšGecicato“una“"Áchunk-size¹"“qui,‘©+quando“il“linear-mo˜de“nonŽ¡fa– zaltro“cš¸èhe“"appGendere"“i“disc˜hi“in“un“grande“arra˜y“senza“alcun“parallelismo.‘šBene,‘;‘a˜v˜ete“pGerfettamen˜teŽ¡ragione,–U €è“strano.‘q€Mettete“una“qualcš¸èhe“c˜h˜unk“size“e“non“preoGccupatev˜ene“ulteriormen˜te.Ž¦Ok,–U creiamo“l'arra¸èy‘ÿ*¸.‘q€Date“il“comandoŽ¤ؼ‘ XÁmkraid‘?¬/dev/md0Ž¡¹Questo–U inizializzer€à“il“vš¸èostro“arra˜y‘ÿ*¸,“scriv˜er€à“i“pGersisten˜t“sup•Gerblo“c˜k–U e“far€à“partire“l'arra˜y‘ÿ*¸.Ž¦Date–U un'oGccš¸èhiata“a“Á/proc/mdstat¹.‘q€Do˜vreste“v˜edere“c˜he“l'arra˜y“sta“la˜v˜orando.Ž¦Ora,›¤²pGotete–”Ècreare“un“lesystem,˜come“fareste“su“qualunque“altro“dispGositiv•¸èo,˜mon“tarlo,˜includerlo–”Èin“fstabŽ¤ ®e–U cos€ì“via.ŽŸ#ÃÃ4.3Ž‘¾RAID-0ŽŸMª¹A‘þã vš¸èete–ÔKdue“o“pi€ù“disc˜hi“approssimativ‘ÿqÐamen˜te“della“stessa“dimensione“e“v˜olete“com˜binare“le“loro“capacit€à“diŽ¡"memorizzazione"–U e“comš¸èbinare“anc˜he“le“loro“prestazioni“facendoGci“degli“accessi“in“parallelo.Ž¦Preparate–©il“leÁ/etc/raidtab“¹pGer“descrivš¸èere“la“v˜ostra“congurazione.‘@®Un“le“raidtab“di“esempio“appare“cos€ì:Ž©ؼÁraiddev‘?¬/dev/md0Ž¡‘)ý`raid-level‘~0Ž¡‘)ý`nr-raid-disks‘¿2Ž¡‘)ý`persistent-superblock‘?¬1Ž¡‘)ý`chunk-size‘>\4Ž¡‘)ý`device‘4|¸/dev/sdb6Ž¡‘)ý`raid-disk‘$½´0Ž¡‘)ý`device‘4|¸/dev/sdc5Ž¡‘)ý`raid-disk‘$½´1Ž¦¹Come–ë€nel“linear-mošGde,‘gli“spare“disk“non“sono“supp˜ortati.‘4¡Il“RAID-0“non“ha“ridondanza,‘cos€ì“quando“unŽ¡disco–U si“guasta,“l'arra¸èy“lo“segue.ŽŸؼAncora–U una“v¸èolta“date“il“comandoŽ¦‘ XÁmkraid‘?¬/dev/md0ŽŽŽŒ‹ Êd Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹11ŽŽ ÕÁ ýV¯pGer–V'inizializzare“l'arraš¸èy‘ÿ*¸.‘t”Questo“do˜vrebbšGe“inizializzare“i“sup˜erblo˜cc¸èhi“e“far“partire“il“disp˜ositiv¸èo“RAID.“DateŽ¤ ®un–©»ošGcc¸èhiata“a“Á/proc/mdstat“¹p˜er“vš¸èedere“cosa“sta“succedendo.‘oQDo˜vreste“v˜edere“c˜he“il“v˜ostro“dispGositiv˜o“oraŽ¡sta‘U la•¸èv“orando.Ž©ؼ/dev/md0–U ora“€è“pronš¸èto“pGer“essere“formattato,“mon˜tato,“usato“e“abusato.ŽŸ#ÃÃ4.4Ž‘¾RAID-1ŽŸMª¹A‘þã vš¸èete–à\due“o“pi€ù“disc˜hi“approssimativ‘ÿqÐamen˜te“delle“stesse“dimensioni“e“v˜olete“c˜he“ogn˜uno“sia“l'immagineŽ¡(mirror)–]esatta“dell'altro.‘‰!Ev•¸èen“tualmen“te–]pGotete“a•¸èv“ere–]pi€ù“disc•¸èhi,‘žùc“he›]v“olete˜tenere˜come˜spare-disk,‘žùc“heŽ¡automaticamen•¸ète›U div“erranno˜parte˜dell'arra“y˜se˜uno˜dei˜disc“hi˜attivi˜si˜guasta.Ž¦Preparate–U il“le“Á/etc/raidtab“¹nel“seguen¸ète“moGdo:Ž©ؼÁraiddev‘?¬/dev/md0Ž¡‘)ý`raid-level‘~1Ž¡‘)ý`nr-raid-disks‘¿2Ž¡‘)ý`nr-spare-disks‘ X0Ž¡‘)ý`chunk-size‘>\4Ž¡‘)ý`persistent-superblock‘?¬1Ž¡‘)ý`device‘4|¸/dev/sdb6Ž¡‘)ý`raid-disk‘$½´0Ž¡‘)ý`device‘4|¸/dev/sdc5Ž¡‘)ý`raid-disk‘$½´1Ž¦¹Se›U a•¸èv“ete˜spare˜disks,˜p•Gotete˜aggiungerli˜alla˜ne˜della˜sp“ecica˜del˜disp“ositiv¸èo˜nel˜mo“do˜seguen¸èteŽ¦‘)ý`Ádevice‘4|¸/dev/sdd5Ž¡‘)ý`spare-disk‘~0Ž¦¹Ricordate–U di“dicš¸èhiarare“la“v˜ošGce“nr-spare-disks“in“mo˜do“corrisp˜onden¸ète.Ž©ؼOk,›´Âabbiamo–nnpreparato“tutto“pGer“far“partire“il“RAID.“L'immagine“(mirror)“dev¸èe“essere“costruita,˜cioG€è“ilŽ¡con•¸èten“uto›Ó(c“he˜al˜momen“to˜non˜€è˜impGortan“te,‘I¿in˜quan“to˜il˜device˜dev“e˜ancora˜essere˜formattato)˜dei˜dueŽ¡disc•¸èhi›U dev“e˜essere˜sincronizzato.Ž¦Date–U il“comandoŽ¤ؼ‘ XÁmkraid‘?¬/dev/md0Ž¡¹pGer–U dare“il“via“all'inizializzazione“del“mirror.Ž¦Conš¸ètrollate–˜£il“le“Á/proc/mdstat“¹le.‘<Do˜vrebbGe“dirvi“c˜he“il“dispGositiv˜o“/dev/md0“€è“partito,‘©ƒc˜he“l'immagineŽ¤ ®(mirror)–U €è“in“corso“di“ricostruzione“e“un“ET‘ÿ*¸A“dello“stato“della“ricostruzione.Ž¦Doš¸èvrebbGe–®dirvi“c˜he“il“dispGositiv˜o“/dev/md0“€è“partito,‘ÄOc˜he“l'immagine“(mirror)“€è“in“corso“di“ricostruzione“eŽ¡un–U ET‘ÿ*¸A“dello“stato“della“ricostruzione.Ž¦La–&fricostruzione“€è“fatta“utilizzando“la“larghezza“di“banda“dell'I/O‘&0inš¸èutilizzata.‘åRCos€ì,‘Z·il“sistema“do˜vrebbGeŽ¡ancora–Pessere“piuttosto“pronš¸èto“a“risp•Gondere,‘!Fsebb“ene–Pgli“hard“disk“led“do˜vrebbšGero“lamp˜eggiare“allegramen¸ète.Ž¦Proš¸èv‘ÿqÐate–Ø,a“formattare“il“dispGositiv˜o,‘ñ)men˜tre“la“ricostruzione“€è“in“corso.–GÙF‘ÿ*¸unzioner€à.“P˜otete–Ø,anc˜he“mon˜tarlo“edŽ¡usarlo–ÑCmenš¸ètre“la“ricostruzione“€è“in“corso.‘EŒNaturalmen˜te,‘ë¢se“il“disco“sbagliato“si“rompGe“men˜tre“la“ricostruzioneŽ¡€è–U in“corso,“non“a•¸èv“ete‘U spGeranze.ŽŽŽŒ‹ ÓÅ Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹12ŽŽ ÕÁ ýV¯Ã4.5Ž‘¾RAID-4ŽŸMªÀNotate‘µwbQÂene!›ºÐ¹Non–;ho“mai“fatto“un“test“di“un“sistema“del“genere.˜Il“setup“seguen¸ète“€è“una“mia“fondataŽ¤ ®congettura,–U ma“nessuna“sua“parte“€è“mai“stata“fatta“girarare.Ž©ؼA‘þã vš¸èete–§™tre“o“pi€ù“disc˜hi“approssimativ‘ÿqÐamen˜te“della“stessa“dimensione,‘¼7uno“dei“disc˜hi“€è“signicativ‘ÿqÐamen˜te“pi€ùŽ¡vš¸èeloGce–,ìdegli“altri“e“v˜oi“v˜olete“com˜binarli“in“un“dispGositiv˜o“pi€ù“grande,‘4÷man˜tenendo“ancora“delle“informazioniŽ¡di›U ridondanza.‘q€Ev•¸èen“tualmen“te˜a“v“ete˜un˜certo˜n“umero˜di˜disc“hi˜c“he˜v“orreste˜usare˜come˜spare-disk.Ž¦Preparate–U il“le“/etc/raidtab“nel“moGdo“seguen¸ète:Ž©ؼÁraiddev‘?¬/dev/md0Ž¡‘)ý`raid-level‘~4Ž¡‘)ý`nr-raid-disks‘¿4Ž¡‘)ý`nr-spare-disks‘ X0Ž¡‘)ý`persistent-superblock‘?¬1Ž¡‘)ý`chunk-size‘~32Ž¡‘)ý`device‘4|¸/dev/sdb1Ž¡‘)ý`raid-disk‘$½´0Ž¡‘)ý`device‘4|¸/dev/sdc1Ž¡‘)ý`raid-disk‘$½´1Ž¡‘)ý`device‘4|¸/dev/sdd1Ž¡‘)ý`raid-disk‘$½´2Ž¡‘)ý`device‘4|¸/dev/sde1Ž¡‘)ý`raid-disk‘$½´3Ž¦¹Se–#”dispšGonessimo“di“spare“disk,‘-}essi“dev¸èono“essere“inseriti“in“un“mo˜do“simile,‘-}seguendo“le“sp˜ecicš¸èhe“dei“disc˜hiŽ¡RAID;Ž¦‘)ý`Ádevice‘/= /dev/sdf1Ž¡‘)ý`spare-disk‘>\0Ž¦¹come–U al“solito.Ž¤ؼIl–U vš¸èostro“arra˜y“pu€ò“essere“inizializzato“con“il“comandoŽ¦‘¿Ámkraid‘?¬/dev/md0Ž¦¹come–U al“solito.Ž¡Doš¸èvreste–U dare“un'oGcc˜hiata“alla“sezione“sulle“opzioni“spšGeciali“p˜er“mk¸èe2fs“prima“di“formattare“il“disp˜ositiv¸èo.ŽŸ#ÃÃ4.6Ž‘¾RAID-5ŽŸMª¹A‘þã vš¸èete–Ñ0tre“o“pi€ù“disc˜hi“approssimativ‘ÿqÐamen˜te“della“stessa“dimensione“c˜he“v˜olete“com˜binare“in“un“dispGositiv˜oŽ¤ ®pi€ù–¥ºgrande,‘ÈÎmanš¸ètenendo“ancora“un“certo“grado“di“ridondanza“pGer“la“sicurezza“dei“dati.‘7 Ev˜en˜tualmen˜te“pGoteteŽ¡a•¸èv“ere–t!un“certo“nš¸èumero“di“disc˜hi“da“usare“com“spare“disk,‘{ác˜he“non“fanno“parte“dell'arra˜y“no“a“c˜he“un“altroŽ¡disco–U si“guasta.Ž©ؼSe–Eusate“N‘E discš¸èhi“di“cui“il“pi€ù“piccolo“ha“dimensione“S,“la“dimensione“dell'in˜tero“arra˜y“sar€à“(N-1)*S.“QuestoŽ¡spazio–ü €è“p•Gerso‘ÑRp“er–ü le“informazioni“di“parit€à“(ridondanza).‘SÎQuindi,‘ Ûse“uno“dei“disc¸èhi“si“guasta“i“dati“sarannoŽ¡ancora–U inš¸ètatti.‘q€Ma“se“due“disc˜hi“si“guastano,“tutti“i“dati“andranno“pGersi.Ž¦Preparate–U il“le“/etc/raidtab“nel“seguen¸ète“moGdo:ŽŽŽŒ‹ Þï Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹13ŽŽ ÕÁ ýV¯Áraiddev‘?¬/dev/md0Ž¤ ®‘)ý`raid-level‘~5Ž¡‘)ý`nr-raid-disks‘¿7Ž¡‘)ý`nr-spare-disks‘ X0Ž¡‘)ý`persistent-superblock‘?¬1Ž¡–)ý`parity-algorithm“left-symmetricŽ¡‘)ý`chunk-size‘~32Ž¡‘)ý`device‘4|¸/dev/sda3Ž¡‘)ý`raid-disk‘$½´0Ž¡‘)ý`device‘4|¸/dev/sdb1Ž¡‘)ý`raid-disk‘$½´1Ž¡‘)ý`device‘4|¸/dev/sdc1Ž¡‘)ý`raid-disk‘$½´2Ž¡‘)ý`device‘4|¸/dev/sdd1Ž¡‘)ý`raid-disk‘$½´3Ž¡‘)ý`device‘4|¸/dev/sde1Ž¡‘)ý`raid-disk‘$½´4Ž¡‘)ý`device‘4|¸/dev/sdf1Ž¡‘)ý`raid-disk‘$½´5Ž¡‘)ý`device‘4|¸/dev/sdg1Ž¡‘)ý`raid-disk‘$½´6Ž©ؼ¹Se–»`dispšGonete“di“spare“disk,‘Ôðessi“do¸èvrebb˜ero“essere“inseriti“in“una“maniera“simile,‘Ôðseguendo“le“sp˜ecic¸èhe“deiŽ¡disc¸èhi‘U raid;Ž¦‘)ý`Ádevice‘/= /dev/sdh1Ž¡‘)ý`spare-disk‘>\0Ž¦¹e–U cos€ì“via.Ž©ؼUna›ô#c•¸èh“unk˜size˜di˜32˜KB‘óú€è˜un˜buon˜v‘ÿqÐalore˜di˜default˜pGer˜la˜maggior˜parte˜dei˜lesystem˜di˜uso˜generale.Ž¡L'arraš¸èy–† su“cui“la“preceden˜te“raitab“viene“usata,‘’D€è“un“dispGositiv˜o“da“7“disc˜hi“da“6“GB›…ý=“36“GB˜(ricordandoŽ¡c¸èhe–¢È(n-1)*s“=“(7-1)*6“=“36).‘ZxSu“di“esso“€è“costruito“un“ext2“lesystem“con“una“dimensione“del“bloGcco“da“4Ž¡KB.–ÂÓPš¸èotreste“aumen˜tare“sia“la“c˜h˜unk“size“dell'arra˜y“sia“la“dimensione“del“bloGcco“del“lesystem“se“il“v˜ostroŽ¡lesystem–U €è“o“molto“pi€ù“grande“o“€è“costituito“da“le“molto“grandi.Ž¦Ok,›²Çabbiamo–Š1parlato“abbastanza.‘-ÛA‘þã v¸èete“preparato“la“raidtab,˜andiamo“a“v¸èedere“se“funziona.‘-ÛDate“il“comandoŽ¤ؼ‘ XÁmkraid‘?¬/dev/md0Ž¡¹e–æ state“a“vš¸èedere“cosa“succede.‘$€Se“tutto“€è“andato“a“buon“ne“i“v˜ostri“disc˜hi“do˜vrebbGero“iniziare“a“la˜v˜orareŽ¤ ®come–mCmatti,‘³Kiniziando“la“ricostruzione“dell'arraš¸èy‘ÿ*¸.‘¹èDate“un“oGcc˜hiata“a“Á/proc/mdstat“¹pGer“v˜edere“cosa“staŽ¡succedendo.Ž¦Se– [la“creazione“del“dispGositivš¸èo“€è“a˜vv˜en˜uta“con“successo,‘Oil“proGcesso“di“ricostruzione“€è“iniziato“a“questo“pun˜to.Ž¡Il›p°con•¸èten“uto˜del˜v“ostro˜arra“y˜non˜€è˜consisten“te˜nc“h€é˜questa˜fase˜di˜ricostruzione˜non˜€è˜terminata.‘%[Com“unque,Ž¡l'arraš¸èy–†Š€è“completamen˜te“funzionanate“(eccetto“c˜he“pGer“la“gestione“dei“guasti“naturalmen˜te)“e“quindi“pGoteteŽ¡formattarlo–U ancš¸èhe“duran˜te“la“fase“di“ricostruzione.Ž¦Date–U un“ošGcc¸èhiata“al“paragrafo“sulle“opzioni“sp˜eciali“di“mkš¸èe2fs“prima“di“formattare“l'arra˜y‘ÿ*¸.Ž¦Date–U un“ošGcc¸èhiata“al“paragrafo“sulle“opzioni“sp˜eciali“di“mkš¸èe2fs“prima“di“formattare“l'arra˜y‘ÿ*¸.Ž¦Ok,–U ora“cš¸èhe“a˜v˜ete“il“RAID“device“funzionan˜te,“pGotete“sempre“arrestarlo“e“farlo“ripartire“usando“i“comandiŽŽŽŒ‹èv Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹14ŽŽ ÕÁ ýV¯‘ XÁraidstop‘?¬/dev/md0Ž¤ؼ¹oŽ¡‘ XÁraidstart‘?¬/dev/md0Ž¡¹In•¸èv“ece–\hdi“mettere“questi“comandi“nei“le“init“e“fare“il“reb•Go“ot–\hun“fanš¸ètastilione“di“v˜olte“pGer“arriv‘ÿqÐare“ad“un“sistemaŽ¤ ®funzionan•¸ète,›U con“tin“uate˜a˜leggere˜e˜capirete˜come˜pGoter˜far˜funzionare˜l'autorilev‘ÿqÐamen“to˜(autoGdetection).ŽŸ#ÃÃ4.7Ž‘¾Il›¸P• ersisten“t˜Sup•_úerblo“c kŽŸMª¹`T‘ÿ*¸an¸èto–«&tempšGo“fa...‘ (TM),“i“raidto˜ols“a¸èvrebb˜ero“letto“il“v¸èostro“le“Á/etc/raidtab“¹e“p˜oi“a¸èvrebb˜ero“inizializzatoŽ¡l'arra•¸èy‘ÿ*¸.‘Ü9Com“unque,‘˜questo›x³a“vrebbGe˜ric“hiesto˜c“he˜il˜lesystem˜su˜cui˜risiedev‘ÿqÐa˜Á/etc/raidtab˜¹fosse˜mon“tato.Ž¡Questo–U risulta“essere“sfa•¸èv“orev“ole–U se“a•¸èv“ete›U in“tenzione˜di˜fare˜il˜b•Go“ot˜da˜raid..Ž©ؼInoltre–il“v•¸èecc“hio–approšGccio“p˜ortaš¸èv‘ÿqÐa“a“delle“complicazioni“quando“si“mon˜ta˜v‘ÿqÐano“i“lesystem“sui“dispGositiviŽ¡RAID.–sbEssi“non“pšGotev‘ÿqÐano“essere“messi“nel“le“Á/etc/fstab“¹come“al“solito,‘ ˆma“a¸èvrebb˜ero“doš¸èvuto“essere“mon˜tatiŽ¡negli–U init“script.Ž¦I‘’p•Gersistenš¸èt‘ˆsup“erblo“c˜k–ˆrisolv˜ono“questi“problemi.‘ ·Quando“un“arra˜y“€è“inizializzato“con“l'opzioneŽ¡Ápersistent-superblock–²Ú¹nel“le“Á/etc/raidtab“¹uno“spšGeciale“sup˜erblo˜c¸èk“viene“scritto“all'inizio“di“tutti“iŽ¡disc•¸èhi›}²c“he˜compGongono˜l'arra“y‘ÿ*¸.‘ë7Questo˜pGermette˜al˜k“ernel˜di˜leggere˜la˜congurazione˜dei˜dispGositivi˜RAIDŽ¡direttamenš¸ète–ßdai“disc˜hi“c˜he“ne“fanno“parte,‘Rin˜v˜ece“di“ottenerla“da“qualc˜he“le“di“congurazione“c˜he“p•Gotrebb“eŽ¡non–U essere“dispGonibile“in“qualcš¸èhe“momen˜to.Ž¦Do•¸èvreste›þhcom“unque˜man“tenere˜un˜le˜Á/etc/raidtab˜¹le,›Àconsisten“te,˜pšGoic“h€é–þhp˜otreste“a•¸èv“er–þhbisogno“di“questoŽ¡le–U pGer“le“successivš¸èe“ricostruzioni“dell'arra˜y‘ÿ*¸.Ž¦Il–ƒKpšGersisten¸èt“sup˜erblo˜cš¸èk“€è“obbligatorio“se“v˜olete“l'auto“rilev‘ÿqÐamen˜to“(autoGdetection)“dei“v˜ostri“dispGositivi“RAIDŽ¡al›U b•Go“ot˜del˜sistema.‘q€T‘ÿ*¸utto˜ci€ò˜€è˜descritto˜nel˜paragrafo˜ÀAutorilev‘ÿ\|amen®>to‘Õ(autoQÂdetection)¹.ŽŸ#ÃÃ4.8Ž‘¾Ch unk‘¸sizeŽŸMª¹La›‘åc•¸èh“unk-size˜necessita˜di˜una˜spiegazione.‘'ÎV‘ÿ*¸oi˜non˜pGotete˜mai˜scriv“ere˜completamen“te˜in˜parallelo˜su˜unaŽ¡batteria–a,di“discš¸èhi.‘•£Se“a˜v˜ete“due“disc˜hi“e“v˜olete“scriv˜erci“un“b˜yte,‘d/do˜vreste“scriv˜ere“quattro“bit“su“ogni“disco,Ž¡eettiv‘ÿqÐamenš¸ète,‘•§ogni–UŒbit“pari“andrebbGe“sul“disco“0“e“gli“altri“sul“disco“1.‘rÃL'hardw˜are“non“suppGorta“tuttoŽ¡questo.‘.¹In•¸èv“ece,›¢noi–éˆscegliamo“alcune“c•¸èh“unk‘éˆsize,˜c“he–éˆdeniamo“come“come“la“pi€ù“piccola“massa“atomicaŽ¡di–Õ6dati“c¸èhe“pšGossa“essere“scritta“su“un“disp˜ositivš¸èo.‘ñÁUna“scrittura“di“16KB‘Õcon“una“c˜h˜unk-size“di“4KB,“far€àŽ¡si–ê5cš¸èhe“il“primo“e“il“terzo“c˜h˜unk“da“4KB‘êsiano“scritti“sul“primo“disco“ed“il“secondo“e“il“quarto“c˜h˜unk“sianoŽ¡scritti–žÁsul“secondo“disco,›±)nel“caso“di“un“RAID-0“con“due“disc¸èhi.‘NcQuindi,˜pGer“scritture“di“grosse“quan¸ètit€à“diŽ¡dati,‘:Ási–4*pu€ò“notare“un“miglioramenš¸èto“dall'usare“dei“c˜h˜unk“piuttosto“grandi,‘:Ámen˜tre“gli“arra˜y“c˜he“con˜tengonoŽ¡principalmenš¸ète–U piccoli“les“bGenecieranno“di“una“piccola“dimensione“dei“c˜h˜unk.Ž¦Le–Edimensioni“dei“c•¸èh“unk›Edev“ono˜essere˜sp•Gecicate˜p“er˜tutti˜i˜liv¸èelli˜RAID,˜incluso˜il˜linear-mo“de.‘]7Com¸èunqueŽ¡la›U c•¸èh“unk-size˜non˜fa˜alcuna˜dierenza˜p•Ger˜il˜linear-mo“de.Ž¦P•¸èer› a“v“ere˜prestazioni˜ottimali,‘do“vreste˜spGerimen“tare˜con˜i˜v‘ÿqÐalori,‘cos€ì˜come˜con˜la˜dimensione˜del˜bloGcco˜delŽ¡lesystem–U cš¸èhe“costruite“sull'arra˜y‘ÿ*¸.Ž¦L'argomenš¸èto–U dell'opzione“c˜h˜unk-size“inŽŸX‰ffÕÁGŸÁ/etc/raidtabŽŸ ;®‰ffÕÁGŸ ȹspGecica–U la“c•¸èh“unk-size–U in“kilob¸èyte.‘q€Cos€ì“4‘*hsignica“4“KB.ŽŽŽŒ‹òà Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹15ŽŽ ÕÁ ýV¯À4.8.1Ž‘#!\RAID-0ŽŸMª¹I‘p³dati–písono“scritti“quasi‘F5in“parallelo“nei“discš¸èhi“dell'arra˜y‘ÿ*¸.‘%oEettiv‘ÿqÐamen˜te,‘ž‘i“bloGcc˜hi“di“dimensione“Áchunk-sizeŽ¤ ®¹sono–U scritti“in“ogni“disco“serialmen¸ète.Ž©ؼSe–R×spGecicate“una“c•¸èh“unk-size–R×di“4“KB›RÖe“scriv¸èete“16“KB˜su“un“arraš¸èy“di“tre“disc˜hi,‘SLil“sistema“RAID‘RÖscriv˜er€à“4Ž¡KB–U nei“discš¸èhi“0,“1,“2,“in“parallelo,“e“pGoi“i“rimanen˜ti“4“KB“sul“disco“0.Ž¦Una›wc•¸èh“unk-size˜di˜32˜KB‘w €è˜un˜pun“to˜di˜partenza˜ragionev“ole˜pGer˜la˜maggior˜parte˜degli˜arra“y‘ÿ*¸.‘×bMa˜il˜v‘ÿqÐaloreŽ¡ottimale–õ£dipGende“molto“dal“nš¸èumero“dei“disc˜hi“costituen˜ti“l'arra˜y‘ÿ*¸,‘Ädal“con˜ten˜uto“del“lesystem“c˜he“ci“vieneŽ¡messo–U sopra“e“da“molti“altri“fattori.‘q€SpšGerimen¸ètate,“p˜er“ottenere“le“migliori“prestazioni.Ž© v÷À4.8.2Ž‘#!\RAID-1ŽŸMª¹Pš¸èer–ÏÁle“scritture“la“c˜h˜unk-size“non“ha“inuenza“sull'arra˜y‘ÿ*¸,‘êmin“quan˜to“i“dati“dev˜ono“essere“scritti“su“tutti“i“disc˜hiŽ¡dell'arra•¸èy‘ÿ*¸.‘¡(P“er–ele“letture“comš¸èunque,‘hûla“c˜h˜unk-size“spGecica“quan˜ti“dati“leggere“serialmen˜te“dai“disc˜hi“facen˜tiŽ¡parte›—Sdell'arra•¸èy‘ÿ*¸.‘8P“oic“h€é˜tutti˜i˜disc“hi˜attivi˜nell'arra“y˜con“tengono˜la˜stessa˜informazione,‘§ßle˜letture˜pGossonoŽ¡essere–U fatte“in“parallelo“in“moGdo“simile“al“RAID-0.Ž¦À4.8.3Ž‘#!\RAID-4ŽŸMª¹Quando–ºzuna“scrittura“€è“fatta“su“un“arraš¸èy“RAID-4,‘Ùhle“informazioni“dei“parit€à“dev˜ono“sempre“essere“aggiornateŽ¡sul–‹ßdisco“di“parit€à.›¼La“c•¸èh“unk-size–‹ß€è“la“dimensione“del“bloGcco“di“parit€à.˜Se“un“b¸èyte“viene“scritto“su“unŽ¡arraš¸èy–øŒRAID-4,‘!gallora“dei“bloGcc˜hi“di“dimensione“Áchunk-size“¹saranno“letti“dagli“N-1“disc˜hi,‘!gv˜err€à“calcolataŽ¡l'informazione–U di“parit€à“e“i“bloGcc¸èhi“di“dimensione“Áchunk-size“¹saranno“scritti“nel“disco“di“parit€à.ŽŸؼLa›Wc•¸èh“unk-size˜inuenza˜le˜prestazioni˜in˜lettura˜nello˜stesso˜moGdo˜c“he˜nel˜RAID-0,‘#³visto˜c“he˜le˜letture˜da˜unŽ¡arraš¸èy–U RAID-4“v˜engono“eettuate“nello“stesso“moGdo.Ž¦À4.8.4Ž‘#!\RAID-5Ž©Mª¹Sugli–U arraš¸èy“RAID-5“la“c˜h˜unk-size“ha“esattamen˜te“lo“stesso“signicato“c˜he“nel“RAID-4.Ž¤ؼUna›U c•¸èh“unk-size˜ragionev“ole˜pGer˜un˜arra“y˜RAID-5˜€è˜128˜KB,˜come˜sempre,˜p•Gotete˜sp“erimen¸ètare˜con˜essa.Ž¡Date–O´ancš¸èhe“un“oGcc˜hiata“al“paragrafo“sulle“opzioni“spGeciali“di“mk˜e2fs.‘o±Questo“inuenza“le“pGerformance“di“unŽ¤ ®arra¸èy‘U RAID-5.ŽŸ"¾¥Ã4.9Ž‘¾Opzioni–¸p_úer“mk e2fsŽ¦¹Esiste–&³un'opzione“spšGeciale“p˜er“formattare“un“disp˜ositivš¸èo“RAID-4“o“RAID-5“con“mk˜e2fs.‘ æ9L'opzione“Á-RŽ¡stride=nn–Xæ¹pšGermetter€à“a“mk¸èe2fs“di“piazzare“meglio“delle“strutture“dati“sp˜ecic¸èhe“dell'ext2“in“mo˜do“in•¸ètelligen“teŽ¡sul–U dispGositiv¸èo“RAID.ŽŸؼSe–Ùla“c•¸èh“unk-size–Ù€è“di“32“KB,“ci€ò“signica“cš¸èhe“bloGcc˜hi“da“32“KB‘Øýdi“dati“consecutivi“saranno“presen˜ti“su“unŽ¡disco.‘ÝlSe–yvš¸èolessimo“costruire“un“ext2“lesystem“con“una“dimensione“del“bloGcco“da“4“KB,“si“capisce“c˜heŽ¡aš¸èvremmo–ô otto“bloGcc˜hi“del“lesystem“pGer“ogni“c˜h˜unk“dell'arra˜y‘ÿ*¸.‘NENoi“pGossiamo“passare“questa“informazioneŽ¡all'utilit•¸èy›U mk“e2fs˜al˜momen“to˜di˜creare˜il˜lesystem:Ž¤É‘ XÁmke2fs–?¬-b“4096“-R“stride=8“/dev/md0Ž¡¹Le–pDprestazioni“dei“RAID-¸f¹4,5¸g“¹sono“fortemen¸ète“inuenzate“da“questa“opzione.‘ÂëNon“sono“sicuro“di“comeŽ¤ ®l'opzione–Á{stride“inuenzi“gli“altri“livš¸èelli“RAID.“Se“qualcuno“a˜v˜esse“maggiori“informazioni“su“questo,‘‘pGerŽ¡fa•¸èv“ore–U me“le“faccia“a•¸èv“ere.ŽŽŽŒ‹` Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹16ŽŽ ÕÁ ýV¯La––zdimensione“del“bloGcco“dell'ext2fs“inuenza“¼fortemente‘Vɹle“prestazioni“del“lesystem.‘1ôDo¸èvreste“usare“sempreŽ¤ ®la–·dimensione“del“bloGcco“da“4“KB‘›su“ogni“lesystem“pi€ù“grande“di“qualcš¸èhe“cen˜tinaia“di“megab˜yte,‘Þa“menoŽ¡cš¸èhe–U non“stiate“la˜v˜orando“con“un“gran“n˜umero“di“piccoli“le.ŽŸ#ÃÃ4.10Ž‘%}¨Autorilev‘ÿ@ amen to‘¸(Auto_údetection)ŽŸMª¹L'autorilev‘ÿqÐamen¸èto–ìepšGermette“ai“disp˜ositivi“RAID‘ì>di“essere“automaticamenš¸ète“riconosciuti“dal“k˜ernel“al“b•Go“otŽ¡del–U sistema,“subito“dopGo“cš¸èhe“il“rilev‘ÿqÐamen˜to“solito“delle“partizioni“€è“stato“eseguito.ŽŸؼT‘ÿ*¸utto–U ci€ò“ricš¸èhiede“div˜erse“cose:Ž©ؼ‘ 9b1.ŽŽŽ‘A‘þã vš¸èete–U bisogno“del“suppGorto“all'autorilev‘ÿqÐaman˜to“(autoGdetection)“nel“k˜ernel.‘q€Con˜trollateŽ¤®‘ 9b2.ŽŽŽ‘Do•¸èvreste›U a“v“er˜creato˜i˜disp•Gositivi˜RAID˜usando˜i˜p“ersistenš¸èt-sup“erblo“c˜kŽ¡‘ 9b3.ŽŽŽ‘Il–‡)tipšGo“di“partizioni“dei“disp˜ositivi“usati“nel“RAID‘‡dev¸èe“essere“imp˜ostato“al“v‘ÿqÐalore“À0xFD‘‡¹(usate“fdiskŽ¤ ®‘p•Ger›U imp“ostare˜il˜tip“o˜fd)Ž¦NOT‘ÿ*¸A:–åSiate“certi“cš¸èhe“c˜he“il“v˜ostro“RAID–åhNON“stia–åla˜v˜orando“prima“di“cam˜biare“il“tipGo“della“partizione.Ž¡Usate–U Áraidstop‘?¬/dev/md0“¹pšGer“arrestare“il“disp˜ositiv¸èo.Ž©ؼSe– Ñpreparate“tutto“in“moGdo“congruenš¸ète“ai“preceden˜ti“pun˜ti“1,›9~2“e“3,˜l'autorilev‘ÿqÐamenš¸èto“do˜vrebbGe“a˜vv˜enire.Ž¡Proš¸èv‘ÿqÐate–a“fare“un“reb•Go“ot.‘%Quando–il“sistema“riparte,‘šúfate“un“cat“di“Á/proc/mdstat¹c˜he“do˜vrebbGe“dirvi“c˜he“ilŽ¡v•¸èostro›U dispGositiv“o˜RAID˜sta˜funzionando˜.Ž¦Duranš¸ète–U il“b•Go“ot,–U do˜vreste“v˜edere“dei“messaggi“simili“a:ŽŸؼ–?¬ÁOct“22“00:51:59“malthe“kernel:“SCSI“device“sdg:“hdwr“sector=“512Ž¡‘ Xbytes.–?¬Sectors=“12657717“[6180“MB]“[6.2“GB]Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“Partition“check:Ž¡–?¬Oct“22“00:51:59“malthe“kernel:‘ Xsda:“sda1“sda2“sda3“sda4Ž¡–?¬Oct“22“00:51:59“malthe“kernel:‘ Xsdb:“sdb1“sdb2Ž¡–?¬Oct“22“00:51:59“malthe“kernel:‘ Xsdc:“sdc1“sdc2Ž¡–?¬Oct“22“00:51:59“malthe“kernel:‘ Xsdd:“sdd1“sdd2Ž¡–?¬Oct“22“00:51:59“malthe“kernel:‘ Xsde:“sde1“sde2Ž¡–?¬Oct“22“00:51:59“malthe“kernel:‘ Xsdf:“sdf1“sdf2Ž¡–?¬Oct“22“00:51:59“malthe“kernel:‘ Xsdg:“sdg1“sdg2Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“autodetecting“RAID“arraysŽ¡–?¬Oct“22“00:51:59“malthe“kernel:“(read)“sdb1's“sb“offset:“6199872Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“bindŽ¡–?¬Oct“22“00:51:59“malthe“kernel:“(read)“sdc1's“sb“offset:“6199872Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“bindŽ¡–?¬Oct“22“00:51:59“malthe“kernel:“(read)“sdd1's“sb“offset:“6199872Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“bindŽ¡–?¬Oct“22“00:51:59“malthe“kernel:“(read)“sde1's“sb“offset:“6199872Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“bindŽ¡–?¬Oct“22“00:51:59“malthe“kernel:“(read)“sdf1's“sb“offset:“6205376Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“bindŽ¡–?¬Oct“22“00:51:59“malthe“kernel:“(read)“sdg1's“sb“offset:“6205376Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“bindŽ¡–?¬Oct“22“00:51:59“malthe“kernel:“autorunning“md0Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“running:“Ž¡–?¬Oct“22“00:51:59“malthe“kernel:“now!ŽŽŽŒ‹® Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹17ŽŽ ÕÁ ýV¯–?¬ÁOct“22“00:51:59“malthe“kernel:“md:“md0:“raid“array“is“not“clean“--Ž¤ ®‘ Xstarting–?¬background“reconstructionŽŸؼ¹Questo–Ë0€è“quello“cš¸èhe“si“ottiene“dall'autorilev‘ÿqÐamen˜to“di“un“arra˜y“RAID-5“c˜he“non“€è“stato“arrestato“in“moGdoŽ¡pulito–§.(pšGer“esempio“se“si“€è“a¸èvuto“un“blo˜cco“della“maccš¸èhina).‘7…La“ricostruzione“viene“iniziata“automaticamen˜te.Ž¡Monš¸ètare–¹ questo“dispGositiv˜o“€è“pGerfettamen˜te“sicuro,‘ÒpGoic˜h€é“la“ricostruzione“€è“trasparen˜te“e“tutti“i“dati“sonoŽ¡consistenš¸èti–8(€è“solo“l'informazione“di“parit€à“c˜he“€è“inconsisten˜te“-“ma“non“c'€è“nessuna“necessit€à“di“essa“nc˜h€éŽ¡un–U dispGositiv¸èo“non“si“guasta).Ž©ؼI‘ ÂdispGositivi– Õcš¸èhe“v˜engono“a˜vviati“automaticamen˜te“sono“anc˜he“arrestati“automaticamen˜te“quando“si“ferma“laŽ¡macc•¸èhina›¨j(sh“utdo“wn).–k^Non˜vi˜curate˜degli˜init˜script.“Usate˜solo˜i˜device˜/dev/md˜come˜ogni˜altro˜deviceŽ¡/dev/sd–U o“/dev/hd.Ž¦Si,–U €è“v•¸èeramen“te–U cos€ì“semplice.Ž¦P•¸èotreste›,v“oler˜dare˜un˜oGcc“hiata˜ai˜v“ostri˜init-script˜pGer˜cercare˜i˜comandi˜raidstart/raidstop.‘cÔEssi˜si˜tro“v‘ÿqÐanoŽ¡di–j)solito“negli“init“script“della“RedHat.‘°šSono“utilizzati“solo“pGer“il“v•¸èecc“hio–j)RAID‘iáe“non“servš¸èono“a“nien˜teŽ¡nel›é(n•¸èuo“v“o˜RAID‘écon˜l'autorilev‘ÿqÐamen“to.‘-˜P“otete˜semplicemen“te˜rim“uo“v“ere˜queste˜linee˜e˜tutto˜con“tin“uer€à˜aŽ¡funzionare‘U bGene.ŽŸ#ÃÃ4.11Ž‘%}¨F‘þàare–¸il“b•_úo“ot–¸su“RAIDŽŸMª¹Ci–Æÿsono“div¸èersi“mošGdi“p˜er“costruire“un“sistema“cš¸èhe“mon˜ti“il“suo“rošGot“lesystem“su“un“disp˜ositiv¸èo“RAID.“AlŽ¡momenš¸èto–ßsolo“l'installazione“graca“di“Lin˜ux“RedHat“6.1“pšGermette“l'installazione“diretta“di“un“disp˜ositiv¸èoŽ¡RAID.–U E'com¸èunque“pGossibile“realizzare“la“cosa.Ž¦L'ultima–Ùådistribuzione“uciale“di“lilo“(V‘ÿ*¸ersione“21)“non“gestisce“i“dispGositivi“RAID‘ÙÅe“quindi“il“k¸èernel“non“pu€òŽ¡essere–¬caricato“al“b•Go“ot–¬dal“dispGositivš¸èo“RAID.“Se“usate“questa“v˜ersione,‘il“v˜ostro“Á/boot“¹lesystem“do˜vr€à“stareŽ¡su–¼un“dispšGositiv¸èo“non-RAID.“Un“mo˜do“p˜er“assicurarsi“cš¸èhe“c˜he“il“sistema“faccia“il“b•Go“ot–¼com˜unque,‘'6€è“quello“diŽ¡creare–´ delle“partizioni“Á/boot“¹uguali“su“tutti“i“discš¸èhi“del“v˜ostro“RAID,“in“questo“moGdo“il“BIOS‘³ópu€ò“sempreŽ¡caricare–#6i“dati“pšGer“esempio“dal“primo“disco“disp˜onibile.‘`ÝQuesto“presume“c¸èhe“non“facciate“il“b˜o˜ot“da“un“discoŽ¡guasto–U nel“v¸èostro“sistema..Ž¦Con– sla“RedHat“6.1“una“patcš¸èh“pGer“lilo“21“€è“div˜en˜tata“dispGonibile,‘ SGessa“pu€ò“gestire“il“Á/bootŽ¡¹su–¾Øun“RAID-1.‘®¨Notate“cš¸èhe“essa“non“funzioner€à“pGer“qualunque“altro“liv˜ello,‘ÙFRAID-1“(mirror-Ž¡ing)–­º€è“il“solo“livš¸èello“RAID‘¬›suppGortato.‘{NQuesta“patc˜h“(Álilo.raid1¹)“pu€ò“essere“tro˜v‘ÿqÐata“pressoŽ¡Ádist/redhat-6.1/SRPMS/SRPMS/lilo-0.21-10.src.rpm–ÈÖ¹su“ogni“RedHat“mirror.‘Ì¢La“v¸èersione“di“lilo“a“cuiŽ¡viene–Ñcapplicata“la“patcš¸èh“accetter€à“la“v˜oGce“Áboot=/dev/md0“¹nel“le“Álilo.conf“¹e“render€à“ogni“ogni“discoŽ¡immagine–U (mirror)“pron¸èto“pšGer“il“b˜o˜ot.Ž¦Un–»galtro“mošGdo“p˜er“assicurare“c¸èhe“il“sistema“riesca“sempre“a“fare“il“b˜o˜ot“€è“di“creare“un“opp¸èy“di“b˜o˜ot“dop˜o“c¸èheŽ¡tutto–,-il“sistema“€è“stato“costruito.‘cÚSe“il“disco“sul“quale“il“lesystem“Á/boot¹risiede“si“blošGcca,‘4]€è“sempre“p˜ossibileŽ¡fare–U il“b•Go“ot–U da“opp¸èy‘ÿ*¸.ŽŸ#ÃÃ4.12Ž‘%}¨Ro_úot–¸lesystem“su“un“RAIDŽŸMª¹Al–P2ne“di“a•¸èv“ere–P2un“sistema“cš¸èhe“faccia“il“b•Go“ot–P2su“RAID,“il“roGot“lesystem“(/)“dev˜e“essere“mon˜tato“su“unŽ¡dispšGositiv¸èo–6ªRAID.“Due“meto˜di“p˜er“realizzare“questo“sono“dati“sotto.‘Visto“c¸èhe“nessuna“delle“attuali“dis-Ž¡tribuzioni–þŠ(almeno“di“cui“io“sia“a“conoscenza)“suppšGorta“l'installazione“su“un“disp˜ositiv¸èo“RAID,“questi“meto˜diŽ¡presumono–¶cš¸èhe“v˜oi“abbiate“installato“su“una“normale“partizione“e“pGoi“-“quando“l'installazione“€è“nita“-Ž¡spšGostiate–U il“con•¸èten“uto–U del“v¸èostro“ro˜ot“lesystem“non-RAID“sul“n•¸èuo“v“o‘U disp˜ositiv“o‘U RAID.ŽŽŽŒ‹Ô Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹18ŽŽ ÕÁ ýV¯À4.12.1Ž‘(áMetoQÂdo‘Õ1ŽŸMª¹Questo–Æ$metoGdo“presume“cš¸èhe“v˜oi“abbiate“degli“spare-disk,‘âfc˜he“non“fanno“parte“del“sistema“RAID‘Æc˜he“stateŽ¤ ®congurando,–U su“cui“pšGossiate“installare“il“sistema“op˜erativ¸èo.ŽŸؼ‘¸ŽŽŽ‘¹Pš¸èer–U primo,“installate“un“normale“sistema“su“questi“extra“disc˜hi.Ž©®‘¸ŽŽŽ‘¹Prendete–§ãil“kš¸èernel“c˜he“pGensate“di“usare,‘¼“prendete“le“raid“patc˜h“e“i“raidtošGols“e“fate“il“b˜o˜ot“del“sistemaŽ¡‘con–•‰questo“n•¸èuo“v“o›•‰k“ernel˜con˜il˜suppGorto˜RAID.˜Siate˜sicuri˜c“he˜il˜suppGorto˜al˜RAID‘•ysia˜Ànel˜¹k“ernel,‘¥¤eŽ¡‘non–U caricato“come“moGdulo.Ž¦‘¸ŽŽŽ‘¹Ok,‘ÐÆa–¸ questo“punš¸èto“do˜vreste“congurare“e“creare“il“RAID‘·òc˜he“pšGensate“di“usare“come“ro˜ot“lesystem.Ž¡‘Questa–U €è“una“prošGcedura“standard“descritta“altro•¸èv“e–U in“questo“do˜cumen¸èto.Ž¦‘¸ŽŽŽ‘¹Pš¸èer–gessere“sicuri“c˜he“tutto“€è“andato“a“buon“ne,‘kŒpro˜v‘ÿqÐate“a“fare“il“reb•Go“ot–gdel“sistema“e“con˜trollate“se“ilŽ¡‘n•¸èuo“v“o–U RAID“si“attiv‘ÿqÐa“al“b•Go“ot.‘q€Do¸èvrebb“e.Ž¦‘¸ŽŽŽ‘¹Create–U un“lesystem“sul“n•¸èuo“v“o›U arra“y˜(usando˜Ámke2fs¹),˜e˜mon“tatelo˜sotto˜/mn“t/newroGotŽ¦‘¸ŽŽŽ‘¹Ora,‘ÉGcopiate–¦Qil“con•¸èten“uto–¦Qdel“v¸èostro“attuale“rošGot“lesystem“(cio˜€è“lo“spare-disk)“nel“n•¸èuo“v“o–¦Qro˜ot“lesystemŽ¡‘(ciošG€è–U l'arra¸èy).‘q€Ci“sono“molti“mo˜di“p˜er“farlo,“uno“ad“esempio“€èŽ©®‘?®Ácd‘?¬/Ž¡‘?®find–?¬.“-xdev“|“cpio“-pm“/mnt/newrootŽ¦‘¸ŽŽŽ‘¹Do¸èvreste–ZÐmošGdicare“il“le“Á/mnt/newroot/etc/fstab“¹p˜er“utilizzare“il“giusto“disp˜ositiv¸èo(“ilÁ/dev/md?Ž¡‘¹rošGot–U device)“p˜er“il“ro˜ot“lesystem.Ž©®‘¸ŽŽŽ‘¹Ora,› çúsmon¸ètiamo–—hl'attuale“Á/boot“¹lesystem,˜e“monš¸ètiamo“in˜v˜ece“il“dispGositiv˜o“di“b•Go“ot‘—hsuŽ¡‘Á/mnt/newroot/boot¹.‘q€Questo–U €è“necessario“pGer“far“la•¸èv“orare›U correttamen“te˜lilo˜nel˜prossimo˜pun“to.Ž¦‘¸ŽŽŽ‘¹Aggiornate–vKÁ/mnt/newroot/etc/lilo.conf“¹pšGer“pun¸ètare“al“giusto“disp˜ositiv¸èo.‘ÕIl“disp˜ositiv¸èo“di“b˜o˜otŽ¡‘devš¸èe–Eancora“essere“un“normale“disco“(non“un“dispGositiv˜o“RAID),“ma“il“roGot“device“dev˜e“pun˜tare“alŽ¡‘n•¸èuo“v“o–U RAID.“Quando“l'a•¸èv“ete–U fatto,“date“il“comandoŽ¤®‘?®Álilo–?¬-r“/mnt/newrootŽ¡‘¹,–U LILO“do¸èvrebbGe“essere“eseguito“senza“errori.Ž¦‘¸ŽŽŽ‘¹F‘ÿ*¸ate–U il“reb•Go“ot–U del“sistema“e“guardate“se“tutto“v‘ÿqÐa“come“vi“aspGettate“:)ŽŸؼSe–Q fate“tutto“ci€ò“con“discš¸èhi“IDE,“siate“sicuri“di“com˜unicare“al“BIOS‘PÊc˜he“tutti“i“disc˜hi“sono“di“tipGo“"auto-detect",Ž¤ ®cos€ì–U cš¸èhe“il“BIOS“pGermetter€à“alla“v˜ostra“macc˜hina“di“fare“il“b•Go“ot,–U anc˜he“se“un“disco“viene“pGerso.ŽŸ ÖÀ4.12.2Ž‘(áMetoQÂdo‘Õ2ŽŸMª¹Questo–=ÔmetoGdo“necessita“cš¸èhe“v˜oi“usiate“una“raidtoGols/patc˜h“c˜he“include“la“direttiv‘ÿqÐa“failed-disk.‘i¼Questa“sar€àŽ¡la–U tošGols/patc¸èh“p˜er“tutti“i“kš¸èernel“v˜erione“2.2.10“e“successiv˜e.ŽŸؼV‘ÿ*¸oi–ypšGotete“usare“questo“meto˜do“Àsolo“¹un“RAID‘edi“liv¸èello“1“e“sup˜eriore.‘VžL'idea“€è“quella“di“installare“il“sistemaŽ¡su–Æ©un“disco“c¸èhe“€è,›ã'di“propGosito,˜marcato“come“guasto“all'in¸èterno“del“RAID,“allora“copiate“il“sistema“sul“RAIDŽ¡c•¸èhe›Ð la“v“orer€à˜in˜moGdalit€à˜"degraded"˜e˜nalmen“te˜farete˜usare˜al˜RAID‘Ïéil˜non˜pi€ù˜necessario˜install-disk,Ž¡saltando–U la“v•¸èecc“hia–U installazione,“ma“facendo“la•¸èv“orare–U il“RAID“in“moGdalit€à“"non“degraded".ŽŽŽŒ‹.5 Û_2 ý ~?Ÿ„€ÕÁGŽÀ4.‘ñ8RAID‘Õsetup’|d¹19ŽŽ ÕÁ ýV¯‘¸ŽŽŽ‘¹Pš¸èer–ÝOprima“cosa,‘?Zinstallate“un“normale“sistema“su“un“disco“(c˜he“div˜err€à“successiv‘ÿqÐamen˜te“parte“delŽ¤ ®‘RAID).–o³E'‘okimpGortanš¸ète“c˜he“questo“disco“(o“partizione)“non“sia“il“pi€ù“piccolo.‘Á:Se“lo“fosse,‘¶Xnon“sar€àŽ¡‘pGossibile–U aggiungerlo“al“RAID“successiv‘ÿqÐamen¸ète!Ž©®‘¸ŽŽŽ‘¹Pš¸èoi,‘¯¤proGcuratevi–‰un“k˜ernel,‘¯¤le“patc˜h,‘¯¤i“raidtošGols“ecc.–J¼ecc.“Come–‰al“solito.‘J¼F‘ÿ*¸ate“fare“il“b˜o˜ot“al“sistemaŽ¡‘con–U un“n•¸èuo“v“o›U k“ernel˜c“he˜abbia˜il˜suppGorto˜RAID˜di˜cui˜a“v“ete˜bisogno˜compilato˜nel˜k“ernel˜stesso.Ž¦‘¸ŽŽŽ‘¹Ora,‘ÆVcostruite–|il“RAID‘|2con“il“v¸èostro“attuale“roGot-device“come“Áfailed-disk“¹nel“le“Áraidtab¹.‘çœNonŽ¡‘mettete–»‹il“Áfailed-disk“¹come“primo“disco“nel“leÁraidtab¹,‘ÚCquesto“comp•Gorterebb“e–»‹dei“problemi“all'a¸èvvioŽ¡‘del–U RAID.“Create“il“RAID“e“costruite“un“lesystem“su“di“esso.Ž¦‘¸ŽŽŽ‘¹Proš¸èv‘ÿqÐate–U a“fare“un“reb•Go“ot–U e“guardate“se“il“RAID“parte“correttamen˜teŽ¦‘¸ŽŽŽ‘¹Copiate–i“le“di“sistema“e“ricongurate“il“tutto“pšGer“utilizzare“il“RAID‘òcome“ro˜ot-device,‘Ùcome“descrittoŽ¡‘nel–U preceden¸ète“paragrafo.Ž¦‘¸ŽŽŽ‘¹Quando–…il“sistema“far€à“il“b•Go“ot–…correttamen¸ète“dal“RAID,“pšGotrete“mo˜dicare“il“le“Áraidtab“¹p˜er“includerviŽ¡‘il–U Áfailed-disk“¹come“unÁraid-disk¹.‘q€Ora,“fate“Áraidhotadd“¹con“il“v¸èostro“disco“al“RAID.Ž¦‘¸ŽŽŽ‘¹Do•¸èvreste›U a“v“er˜otten“uto˜un˜sistema˜c“he˜fa˜il˜b•Go“ot˜da˜un˜"non-degraded"˜RAID.ŽŸ#ÃÃ4.13Ž‘%}¨Do• vreste›ra“v“er˜otten“uto˜un˜sistema˜c“he˜fa˜il˜b•_úo“ot˜da˜un˜"non-degraded"ŽŸõ‘%}¨RAID.ŽŸMª¹P•¸èerc“h€é–iun“kš¸èernel“sia“in“grado“di“mon˜tare“un“rošGot“lesystem,‘)Zil“supp˜orto“p˜er“il“disp˜ositiv¸èo“su“cui“il“lesystemŽ¡risiede–ùädevš¸èe“essere“presen˜te“nel“k˜ernel.‘_ÌP˜erci€ò,‘#al“ne“di“mon˜tare“il“roGot“lesystem“su“un“device“RAID,“ilŽ¡k•¸èernel›U ¼deve‘o¹a“v“ere˜il˜suppGorto˜RAID.Ž©ؼLa–maniera“normale“pGer“essere“certi“cš¸èhe“il“k˜ernel“pGossa“v˜edere“il“dispGositiv˜o“RAID‘ €è“semplicemen˜te“quella“diŽ¡compilare–èil“kš¸èernel“con“tutto“il“suppGorto“RAID‘Ýnecessario.‘ñØSiate“sicuri“di“a˜v˜er“compilato“il“suppGorto“RAIDŽ¡¼nel‘Yî¹kš¸èernel,‘R2e–Qw¼non‘̹come“moGdulo“caricabile.‘pHIl“k˜ernel“non“pu€ò“caricare“un“mošGdulo“(dal“ro˜ot“lesystem)“nc¸èh€éŽ¡il–U roGot“lesystem“non“€è“mon¸ètato.Ž¦Com•¸èunque,‘©CpGoic“h€é–~KRedHat-6.0“€è“distribuita“con“un“kš¸èernel“c˜he“ha“il“suppšGorto“p˜er“il“n•¸èuo“v“o–~KRAID‘~come“mo˜dulo,Ž¡qui– [vš¸èerr€à“descritto“come“usare“il“k˜ernel“standard“della“RedHat-6.0,‘Ocon˜tin˜uando“a“fare“il“b•Go“ot– [del“sistema“daŽ¡RAID.ŽŸ ÖÀ4.13.1Ž‘(áF‘ÿ ºare–Õil“b•QÂo“ot–Õcon“il“RAID“come“moQÂduloŽŸMª¹Do¸èvrete–* "istruire"“LILO‘*•ad“usare“un“RAM-disk“pšGer“ottenere“questo.‘cUUsate“il“comando“Ámkinitrd“¹p˜er“creareŽ¡un–•ramdisk“con•¸ètenen“te–•tutti“i“moGduli“del“kš¸èernel“necessari“a“mon˜tare“la“partizione“di“roGot.‘\§Questo“pu€ò“essereŽ¡fatto–U nel“seguen¸ète“moGdo:Ž¤ؼ–?¬Ámkinitrd“--with=Ž¡¹P¸èer‘U esempio:Ž¡–?¬Ámkinitrd“--with=raid5“raid-ramdisk“2.2.5-22Ž¡¹Questo–xgci“rende“sicuri“c¸èhe“il“mošGdulo“RAID‘x^sp˜ecicato“sia“presen¸ète“al“b˜o˜ot“quando“il“kš¸èernel“mon˜ter€à“il“roGotŽŸ ®device.ŽŽŽŒ‹Îun“RAID-5“fallisce“la“ricostruzione“dopšGo“c¸èhe“un“disco“€è“stato“rimosso“e“riinserito,‘vxquesto“p˜otrebb˜e“dip˜endereŽ¡dall'ordine–Vudei“dispšGositivi“nel“le“raidtab.‘uPro¸èv‘ÿqÐate“a“sp˜ostare“la“prima“coppia“device“...›JÇ/“raid-disk“...˜inŽ¡fondo–U alla“descrizione“dell'arra¸èy“nel“le“raitab.Ž¦La–Òmaggior“parte“degli“error“repGorts‘§Zcš¸èhe“tro˜v‘ÿqÐate“sulla“lin˜ux-k˜ernel“list,‘ìHsono“di“pGersone“c˜he“in“qualc˜he“moGdoŽ¡hanno–ªsbagliato“ad“usare“la“giusta“patcš¸èh“raid“con“la“corrispGonden˜te“v˜ersione“dei“raidtoGols.‘tSiate“sicuri“diŽ¡utilizzare–U 0.90“RAID,“e“c¸èhe“state“usando“i“raidtošGols“p˜er“esso.ŽŸ(Àœ¿5Ž‘ÁF‘þ®(are–G\il“testŽŸ¿:¹Se–¥ÄpšGensate“di“usare“il“RAID‘¥¯p˜er“a•¸èv“ere–¥Ätolleranza“ai“guasti“(fault-tolerance),‘¹íp˜otreste“vš¸èoler“testare“il“v˜ostroŽ¡sistema–U pGer“vš¸èedere“se“funziona“v˜eramen˜te.‘q€Ora,“come“sim˜ulare“un“guasto?Ž¦In–öðbrev¸èe,›dnon“pGotete,˜eccetto“forse“cš¸èhe“facendo“passare“un“ascia“infuoGcata“attra˜v˜erso“il“disco“di“cui“v˜oleteŽ¡sim¸èulare–÷=il“guasto.‘R4Non“pšGotrete“mai“sap˜ere“cosa“accadr€à“quando“un“disco“cessa“di“funzionare.‘R4Esso“p˜otrebb˜eŽ¡bloGccare–—Çelettricamenš¸ète“tutto“il“bus“a“cui“€è“collegato,‘½¥rendendo“tutti“i“disc˜hi“su“quel“bus“inaccessibili.‘2cSebbGeneŽ¡non–temi“sia“noto“nessun“accadimen¸èto“del“genere.‘&˜Il“disco“p•Gotrebb“e–tesolo“noticare“un“guasto“di“lettura/scritturaŽ¡al›Xüla•¸èy“er˜SCSI/IDE,˜il˜c“he˜pGermetter€à˜al˜la“y“er˜RAID‘Xûdi˜gestire˜questa˜situazione˜in˜mo•Gdo˜p“ositiv¸èo.‘}Questo˜€èŽ¡pšGer–U fortuna“il“mo˜do“in“cui“le“cose“v‘ÿqÐanno“di“solito.ŽŸ#ÃÃ5.1Ž‘¾Simš ulare–¸il“malfunzionamen˜to“di“un“discoŽŸMª¹Se–½(vš¸èolete“sim˜ulare“il“guasto“di“un“disco,‘ÛŒscollegatelo.‘>ØDo˜vreste“farlo“pGer“mezzo“del“pulsan˜te“di“ÀspQÂegnimen®>to¹.Ž¡Se–Ögsiete“inš¸èteressati“a“testare“se“i“v˜ostri“dati“pGossano“sopra˜vviv˜ere“con“un“disco“in“meno“del“n˜umero“solito,Ž¡non–„Gc'€è“problema“nel“fare“l'“"hot-plug“co•¸èwbšGo“y"–„Gora.‘þöSp˜egnete“il“sistema,‘scollegate“il“disco“e“fate“un“n•¸èuo“v“oŽ¡b•Go“ot.Ž¦Conš¸ètrollate–U nel“syslog“e“date“un'oGcc˜hiata“aÁ/proc/mdstat“¹pGer“v˜edere“cosa“sta“facendo“il“RAID.“F‘ÿ*¸unziona?Ž¦Ricordate,‘p‡v¸èoi›7ÙÀdo•®>v“ete˜¹far˜girare˜il˜RAID-¸f¹1,4,5¸g˜¹sul˜v•¸èostro˜arra“y˜p•Ger˜p“oter˜sopra•¸èvviv“ere˜al˜guasto˜di˜unŽ¡disco.‘q€Linear-raid–U o“RAID-0“pGerdono“tutto“quando“un“disco“si“guasta.Ž¦Quando–ÉÁaš¸èvrete“di“n˜uo˜v˜o“collegato“il“disco“(con“la“macc˜hina“spGen˜ta,–å¡naturalmen˜te,“ricordate),“pGotete‘ÉÁagggiun-Ž¡gere–U il“n•¸èuo“v“o‘*hdispGositiv“o–U al“RAID“n•¸èuo“v‘ÿqÐamen“te,–U con“il“comando“Áraidhotadd¹.ŽŽŽŒ‹J0 Û_2 ý ~?Ÿ„€ÕÁGŽÀ6.‘ñ8Ricostruzione’u\H¹21ŽŽ ÕÁ ýV¯Ã5.2Ž‘¾Simš ulare–¸il“danneggiamen˜to“dei“datiŽŸMª¹Il–ERAID‘E(sia“hardwš¸èare-“c˜he“soft˜w˜are-),‘HMconsidera“c˜he“se“la“scrittura“su“un“disco“non“genera“un“errore,‘HMalloraŽ¤ ®la–ôãscrittura“€è“a•¸èvv“en“uta›ôãcorrettamen“te.‘QlAllora,‘"se˜il˜v“ostro˜disco˜danneggia˜i˜dati˜senza˜generare˜errori,‘"tutti˜iŽ¡vš¸èostri–Â×dati“¼sar‘ÿ}/anno‘de¹corrotti.‘@½Questo“naturalmen˜te“€è“molto“spiacev˜ole“c˜he“accada,‘àma“€è“pšGossibile“e“p˜orterebb˜eŽ¡ad›U a•¸èv“ere˜un˜lesystem˜corrotto.Ž©ؼIl–ORAID‘non“pu€ò“e“non“€è“progettato“pGer“conš¸ètrollare“il“danneggiamen˜to“dei“dati“sui“suppGorti.‘Ð P˜erci€ò“nonŽ¡ha–à alcun“senso“il“corrompšGere“di“prop˜osito“i“dati“(utilizzando“Ádd“¹p˜er“esempio)“su“un“disco“p˜er“v¸èedere“comeŽ¡il–#osistema“RAID›#:riesce“a“gestire“questa“situazione.‘ÜnE'˜molto“probabile“(a“meno“c¸èhe“si“corrompa“il“RAIDŽ¡sup•Gerblo“c•¸èk)›š¥c“he˜il˜RAID‘švla“y“er˜non˜si˜accorga˜di˜nien“te˜riguardo˜al˜danneggamen“to,‘¿ñma˜c“he˜il˜v“ostro˜lesystemŽ¡sul–U dispGositiv¸èo“RAID“sia“danneggiato.Ž¦Questo–ÔŽ€è“il“mošGdo“in“cui“le“cose“si“supp˜one“c¸èhe“funzionino.‘ïÉIl“RAID‘Ômnon“€è“una“garanzia“p˜er“l'in¸ètegrit€à“deiŽ¡dati,‘ßesso–Ãzci“pšGermette“solo“di“conserv‘ÿqÐare“i“nostri“dati“se“un“disco“si“blo˜cca“(con“i“liv¸èelli“RAID‘Ã^maggiori“o˜dŽ¡uguali–U ad“1,“naturalmen¸ète).ŽŸ(Àœ¿6Ž‘ÁRicostruzioneŽŸ¿:¹Se›íÄa•¸èv“ete˜gi€à˜letto˜il˜resto˜di˜questo˜HO“WTO,˜do“vreste˜gi€à˜a“v“ere˜un'idea˜di˜c“he˜cosa˜signic“hi˜la˜ricostruzioneŽ¡di–U un“arra¸èy“danneggiato.‘q€Riassumendo:Ž©ؼ‘¸ŽŽŽ‘¹SpGegnete–U il“sistemaŽ¤®‘¸ŽŽŽ‘¹Sostituite–U il“disco“guastoŽ¡‘¸ŽŽŽ‘¹Aš¸èccendete–U di“n˜uo˜v˜o“il“sistemaŽ¡‘¸ŽŽŽ‘¹Usate–U il“comando“Áraidhotadd–?¬/dev/mdX“/dev/sdX–U ¹pGer“inserire“n•¸èuo“v‘ÿqÐamen“te–U il“disco“nell'arra¸èyŽ¡‘¸ŽŽŽ‘¹Prendetevi–U un“ca€è“menš¸ètre“la“ricostruzione“automatica“a˜vvieneŽ¦Ecco‘U tutto.Ž©ؼBene,›édi–ïZsolito“funziona“cos€ì,˜a“meno“cš¸èhe“v˜oi“siate“sfortunati“e“il“v˜ostro“RAID‘ï3sia“stato“reso“in˜utilizzabileŽ¤ ®pGercš¸èh€é–Óºpi€ù“di“un“disco“si“€è“guastato.‘F^Questo“pu€ò“realmen˜te“succedere“se“un“certo“n˜umero“di“disc˜hi“€è“collegatoŽ¡sullo–ºstesso“bus“e“uno“dei“discš¸èhi“bloGcca“il“bus“quando“si“guasta.‘ 9Gli“altri“disc˜hi,‘ÓCanc˜he“se“non“sono“guasti,Ž¡saranno–†¿irraggiungibili“pšGer“il“RAID‘†‹la•¸èy“er,‘°p˜erc“h€é–†¿il“bus“€è“blo˜ccato“e“quindi“saranno“marcati“come“danneggiati.Ž¡Su–U un“RAID-5“su“cui“€è“pGossibile“sostituire“un“disco,“il“guasto“di“due“o“pi€ù“di“essi“pu€ò“essere“fatale.Ž¦Il–ªNseguenš¸ète“paragrafo“€è“la“spiegazione“c˜he“Martin“Bene“mi“ha“dato,‘Ìxe“descriv˜e“un“pšGossibile“recup˜ero“dal“terri-Ž¡cate–xXscenario“mostrato“sopra.‘Û)Esso“implica“l'uso“della“direttiv‘ÿqÐa“Áfailed-disk“¹nel“nostro“le“Á/etc/raidtab¹,Ž¡cos€ì–U funzioner€à“solo“con“i“k¸èernel“2.2.10“e“successivi.ŽŸ#ÃÃ6.1Ž‘¾Recup_úero–¸dal“malfunzionamenš to“di“pi€ù“disc˜hiŽŸMª¹Lo–U scenario“€è:ŽŸؼ‘¸ŽŽŽ‘¹Un–U conš¸ètroller“si“bloGcca“e“mette“due“disc˜hi“oine“nello“stesso“momen˜to,Ž¤®‘¸ŽŽŽ‘¹T‘ÿ*¸utti–U i“discš¸èhi“su“un“bus“SCSI“non“pGossono“pi€ù“essere“raggiun˜ti“se“un“disco“si“bloGcca,Ž¡‘¸ŽŽŽ‘¹Un›U ca•¸èv“o˜si˜sgancia...ŽŽŽŒ‹YÝ Û_2 ý ~?Ÿ„€ÕÁGŽÀ7.‘ñ8Prestazioni’Çó¹22ŽŽ ÕÁ ýV¯In–Pbrevš¸èe:‘nòabbastanza“spGesso“si“ha“un“guasto“¼temp–ÿ}/or“ane“o‘ñ“¹di–Pdiv˜ersi“disc˜hi“nello“stesso“momen˜to;‘Q¹dopGo“di“c˜heŽ© ®i–U RAID“sup•Gerblo“cš¸èk–U non“sono“pi€ù“sincronizzati“e“v˜oi“non“pGotete“pi€ù“inizializzare“(init)“il“v˜ostro“RAID“arra˜y‘ÿ*¸.Ž¤ؼPš¸èer–U prima“cosa:‘q€riscriv˜ete“il“RAID“sup•Gerblo“c˜k–U con“il“comando“Ámkraid‘?¬forceŽ¡¹Al–´“ne“di“farlo“la•¸èv“orare›´“correttamen“te,‘ oa“v“ete˜bisogno˜di˜un˜le˜Á/etc/raidtab˜¹aggiornato˜-˜se˜esso˜nonŽ¦corrispGonde›U ÀESA–ÿ ºTT“AMENTE˜¹ai˜dispGositivi˜e˜all'ordine˜dei˜disc¸èhi˜originali,˜non˜funzioner€à.Ž¡Conš¸ètrollate–,ûil“syslog“proGdotto“cercando“di“far“partire“l'arra˜y‘ÿ*¸,‘5v˜edrete“l'"ev˜en˜t“coun˜t"“pšGer“ogni“sup˜erblo˜c¸èk;‘:]diŽ¦solito–U €è“meglio“lasciare“fuori“il“disco“con“il“pi€ù“basso“"ev•¸èen“t›U coun“t",˜pGer˜esempio˜il˜pi€ù˜v“ecc“hio.Ž¡Se–Æúdate“il“comando“Ámkraid“¹senza“Áfailed-disk¹,‘#qil“proGcesso“di“ricostruzione“partir€à“immediatamen¸ète“edŽ¦inizier€à–U a“ricostruire“i“bloGccš¸èhi“di“parit€à“-“il“c˜he“non“€è“necessariamen˜te“quello“c˜he“v˜olete“in“questo“momen˜to.Ž¡Con–¡”Áfailed-disk“¹pšGotete“sp˜ecicare“quali“discš¸èhi“v˜olete“c˜he“siano“attivi“e“forse“pGotete“pro˜v‘ÿqÐare“div˜erse“com-Ž¦binazioni–¯vpGer“ottenere“i“migliori“risultati.‘€ƒBTW,“monš¸èta“il“lesystem“solo“read-only“duran˜te“queste“pro˜v˜e...Ž¦Questo–U metošGdo“€è“stato“usato“da“almeno“due“p˜ersone“con“cui“sono“in“con¸ètatto.ŽŸ(Àœ¿7Ž‘ÁPrestazioniŽŸ¿:¹Questa–U parte“conš¸ètiene“un“certo“n˜umero“di“bGenc˜hmark“di“un“sistema“reale“c˜he“usa“il“soft˜w˜are“RAID.Ž¡I‘UjbGencš¸èhmark–Uªsono“stati“fatti“con“il“programma“ÁBonnie“¹e“ogni“v˜olta“con“le“grandi“due“o“pi€ù“v˜olte“la“dimensioneŽ¦della–U RAM“sica“presenš¸ète“sulla“macc˜hina.Ž¡I‘dbGenc¸èhmark–dLmisurano“¼solo‘Ú¹la“larghezza“di“banda“(bandwidth)“in“ingresso“e“in“uscita“su“un“solo“grandeŽ¦le.‘¾jQuesta–n€è“una“cosa“in•¸èteressan“te–nda“conoscere,‘J‚se“siamo“inš¸èteressati“al“massimo“indice“di“trasferimen˜toŽ¦(throughput)–,cpGer“scritture/letture“di“grandi“quanš¸ètit€à“di“dati.‘÷JIn“ogni“caso,‘b4questi“n˜umeri“ci“dicono“p•Go“coŽ¦delle–þ'prestazioni“dell'arraš¸èy“se“esso“fosse“usato“come“un“"news“sp•Go“ol",–Œun‘þ'w˜eb-serv˜er,“ecc.‘T‚T‘ÿ*¸eniamo–þ'sempre“inŽ¦men•¸ète,‘›Ýc“he–·i“nš¸èumeri“dei“bGenc˜hmark“sono“il“risultato“dell'esecuzione“di“un“programma“sin˜tetico.‘EP˜oGc˜hi“deiŽ¦programmi–Á'cš¸èhe“appartengono“alla“vita“reale“fanno“quello“c˜he“fa“ÁBonnie“¹e,‘Þ¿sebbGene“questi“n˜umeri“di“I/O‘ÁsianoŽ¦in•¸èteressan“ti–U da“guardare,“non“sono“indicativi“delle“prestazioni“dei“programmi“reali.‘q€Non“troppGo“almeno.Ž¡Pš¸èer–U ora“ho“solo“i“risultati“otten˜uti“sulla“mia“macc˜hina.‘q€Il“sistema“€è:Ž©ؼ‘¸ŽŽŽ‘¹Doppio›U P•¸èen“tium˜Pro˜150˜MHzŽ¤®‘¸ŽŽŽ‘¹256–U MB“RAM“(60“MHz“EDO)Ž¡‘¸ŽŽŽ‘¹T‘ÿ*¸re–U IBM“UltraStar“9ES“4.5“GB,“SCSI“U2WŽ¡‘¸ŽŽŽ‘¹A¸èdaptec‘U 2940U2WŽ¡‘¸ŽŽŽ‘¹Un–U IBM“UltraStar“9ES“4.5“GB,“SCSI“UWŽ¡‘¸ŽŽŽ‘¹A¸èdaptec–U 2940“UWŽ¡‘¸ŽŽŽ‘¹Kernel–U 2.2.7“con“le“RAID“patc¸èhŽ¦I–U tre“discš¸èhi“U2W“pian˜terebbGero“il“con˜troller“U2W,“and“il“disco“UW“ingolferebbGe“il“con˜troller“UW.ŽŸؼSemš¸èbra–ÖhimpGossibile“instradare“pi€ù“di“30“MB/s“di“dati“attra˜v˜erso“i“bus“SCSI‘ÖGdel“sistema“usando“o“meno“ilŽ¤ ®RAID.–4ˆQuello“cš¸èhe“credo“€è“c˜he,‘; siccome“il“sistema“€è“piuttosto“v˜ecc˜hio,‘; sia“la“banda“passan˜te“della“memoria“aŽ¡mancare,–U e“questo“limita“quello“cš¸èhe“pu€ò“essere“in˜viato“attra˜v˜erso“un“con˜troller“SCSI.ŽŽŽŒ‹gC Û_2 ý ~?Ÿ„€ÕÁGŽÀ7.‘ñ8Prestazioni’Çó¹23ŽŽ ÕÁ ýì•€Ÿ­B˜Ÿ»Ö‘rw¤¢„ ®ff‘ÌΟûå^Ch¸èunk‘U size‘ÌÍ¡„ ®ffŽ’´|ŽBloGc¸èk‘U size‘ÌÍŸ¢„ ®ffŽ’ìóRead‘U KB/s‘ÌÍŸ¢„ ®ffŽ’)}ÜW‘ÿ*¸rite‘U KB/s‘ÌÍŸ¢„ ®ffŽŽ¤ ®‘rwŸ¢„ ®ff‘;kó„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^4k‘+X­¡„ ®ffŽ’´|Ž1k‘' ¹Ÿ¢„ ®ffŽ’ìó19712‘KEŸ¢„ ®ffŽ’)}Ü18035‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^4k‘+X­¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó34048‘KEŸ¢„ ®ffŽ’)}Ü27061‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^8k‘+X­¡„ ®ffŽ’´|Ž1k‘' ¹Ÿ¢„ ®ffŽ’ìó19301‘KEŸ¢„ ®ffŽ’)}Ü18091‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^8k‘+X­¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó33920‘KEŸ¢„ ®ffŽ’)}Ü27118‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^16k‘&Xý¡„ ®ffŽ’´|Ž1k‘' ¹Ÿ¢„ ®ffŽ’ìó19330‘KEŸ¢„ ®ffŽ’)}Ü18179‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^16k‘&Xý¡„ ®ffŽ’´|Ž2k‘' ¹Ÿ¢„ ®ffŽ’ìó28161‘KEŸ¢„ ®ffŽ’)}Ü23682‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^16k‘&Xý¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó33990‘KEŸ¢„ ®ffŽ’)}Ü27229‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž1k‘' ¹Ÿ¢„ ®ffŽ’ìó19251‘KEŸ¢„ ®ffŽ’)}Ü18194‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó34071‘KEŸ¢„ ®ffŽ’)}Ü26976‘ g•Ÿ¢„ ®ffŽŽŽŽŽŽŸ? 9ŸãúäŸòŽT‘rw¤¢„ ®ff‘ÌΟûå^Ch¸èunk‘U size‘ÌÍ¡„ ®ffŽ’´|ŽBloGc¸èk‘U size‘ÌÍŸ¢„ ®ffŽ’ìóRead‘U KB/s‘ÌÍŸ¢„ ®ffŽ’)}ÜW‘ÿ*¸rite‘U KB/s‘ÌÍŸ¢„ ®ffŽŽ¤ ®‘rwŸ¢„ ®ff‘;kó„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó33617‘KEŸ¢„ ®ffŽ’)}Ü27215‘ g•Ÿ¢„ ®ffŽŽŽŽŽŽŸÃ7.1Ž‘¾RAID-0Ž©MªÀLa›]lettura–ªf¹€è“un“À"Sequen•®>tial˜bloQÂc“k˜input"¹,‘ÿ·e–ªfÀla˜scrittura“¹€è“un“À"Sequen•®>tial˜bloQÂc“k˜output"¹.‘qRLaŽ¤ ®dimensione–ƒ¿del“le“€è“stata“di“1“GB›ƒ³pGer“tutti“i“test.‘ý\I˜test“sono“stati“fatti“in“moGdalit€à“singolo“uten¸ète“(singleŽ¡user).‘q€Il–U driv¸èer“SCSI“€è“stato“congurato“pGer“non“usare“il“"tagged“command“queuing".ŽŸؼa–"hquesto,‘Uºsemš¸èbra“c˜he“la“dimensione“del“c˜h˜unk“non“faccia“molta“dierenza.‘ÙYCom˜unque,‘Uºla“dimensione“delŽ¡blošGcco–Cdell'ext2fs“do¸èvrebb˜e“essere“pi€ù“grande“p˜ossibile,‘F¤quindi“4“KB‘C(o•¸èvv“ero–Cla“dimensione“della“pagina)“suiŽ¡sistemi‘U IA-32.ŽŸ#ÃÃ7.2Ž‘¾RAID-0–¸con“TCQŽ¦¹Questa–†vš¸èolta“il“driv˜er“SCSI‘u€è“stato“congurato“pGer“utilizzare“il“"tagged“command“queuing",‘rcon“una“profon-Ž¡dit€à–U della“coGda“di“8.‘q€P¸èer“il“resto“tutto“come“prima.ŽŸؼNessun–†\altro“test“€è“stato“fatto.‘5TCQ‘†Psemš¸èbra“incremen˜tare“un“p•Go“co–†\le“prestazioni“in“scrittura,‘’¬ma“in“realt€àŽ¡non–U €è“c¸èhe“ci“sia“pGoi“tutta“questa“dierenza.ŽŸ#ÃÃ7.3Ž‘¾RAID-5Ž¦¹L'arraš¸èy–U €è“stato“congurato“pGer“la˜v˜orare“in“moGdalit€à“RAID-5,“dei“test“simili“ai“preceden˜ti“sono“stati“fatti.ŽŸؼOra,‘zsia–C=la“dimensione“del“c•¸èh“unk›C=c“he˜quella˜del˜bloGcco˜del˜lesystem˜sem“brano˜eettiv‘ÿqÐamen“te˜fare˜la˜dierenza.ŽŸ´-ŸÈž¾Ÿ×2.‘rw¤¢„ ®ff‘ÌΟûå^Ch¸èunk‘U size‘ÌÍ¡„ ®ffŽ’´|ŽBloGc¸èk‘U size‘ÌÍŸ¢„ ®ffŽ’ìóRead‘U KB/s‘ÌÍŸ¢„ ®ffŽ’)}ÜW‘ÿ*¸rite‘U KB/s‘ÌÍŸ¢„ ®ffŽŽ¤ ®‘rwŸ¢„ ®ff‘;kó„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^8k‘+X­¡„ ®ffŽ’´|Ž1k‘' ¹Ÿ¢„ ®ffŽ’ìó11090‘KEŸ¢„ ®ffŽ’)}Ü6874‘%gEŸ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^8k‘+X­¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó13474‘KEŸ¢„ ®ffŽ’)}Ü12229‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž1k‘' ¹Ÿ¢„ ®ffŽ’ìó11442‘KEŸ¢„ ®ffŽ’)}Ü8291‘%gEŸ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž2k‘' ¹Ÿ¢„ ®ffŽ’ìó16089‘KEŸ¢„ ®ffŽ’)}Ü10926‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó18724‘KEŸ¢„ ®ffŽ’)}Ü12627‘ g•Ÿ¢„ ®ffŽŽŽŽŽŽŽŽŒ‹uß Û_2 ý ~?Ÿ„€ÕÁGŽÀ8.‘ñ8Con®>tributi’„éã¹24ŽŽ ÕÁ ýŒÒûŸÝ#ÚŸë·K‘rw¤¢„ ®ff‘ÌΟûå^Ch¸èunk‘U size‘ÌÍ¡„ ®ffŽ’´|ŽBloGc¸èk‘U size‘ÌÍŸ¢„ ®ffŽ’ìóRead‘U KB/s‘ÌÍŸ¢„ ®ffŽ’)}ÜW‘ÿ*¸rite‘U KB/s‘ÌÍŸ¢„ ®ffŽŽ¤ ®‘rwŸ¢„ ®ff‘;kó„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž1k‘' ¹Ÿ¢„ ®ffŽ’ìó13753‘KEŸ¢„ ®ffŽ’)}Ü11580‘ g•Ÿ¢„ ®ffŽŽ¡‘rw¤¢„ ®ff‘ÌΟûå^32k‘&Xý¡„ ®ffŽ’´|Ž4k‘' ¹Ÿ¢„ ®ffŽ’ìó23432‘KEŸ¢„ ®ffŽ’)}Ü22249‘ g•Ÿ¢„ ®ffŽŽŽŽŽŽŸÃ7.4Ž‘¾RAID-10ŽŸMª¹Un–,arra¸èy“RAID-10“€è“compšGosto“da“mirrored“strip˜es,›3¯o•¸èvv“ero,˜un›,arra“y˜RAID-1˜di˜due˜arra“y˜RAID-0.‘‡£LaŽ¤ ®c•¸èh“unk-size–'Ž€è“la“dimensione“del“c•¸èh“unk–'Žsia“dell'arraš¸èy“RAID-1“c˜he“di“quello“RAID-0.‘bPNon“ho“compiuto“dei“testŽ¡nel–U caso“in“cui“le“due“dimensioni“del“c•¸èh“unk–U dieriscano,“pšGer“quan¸èto“sia“p˜erfettamen¸ète“lecito.ŽŸؼNessun–F-altro“test“€è“stato“fatto.‘D§La“dimensione“del“le“era“900MB,“pGercš¸èh€é“le“quattro“partizioni“coin˜v˜olteŽ¡erano–ëda“500“MB‘Öognš¸èuna,‘)il“c˜he“non“pGermettev‘ÿqÐa“di“a˜v˜ere“spazio“pGer“un“le“da“1“GB‘Öin“questa“congurazioneŽ¡(RAID-1–U su“due“arra¸èy“da“1000MB).ŽŸ(Àœ¿8Ž‘ÁConctributiŽŸ¿:¹Le–U seguenš¸èti“pGersone“hanno“con˜tribuito“alla“creazione“di“questa“doGcumen˜tazione:Ž©ؼ‘¸ŽŽŽ‘¹Ingo‘U MolnarŽ¤®‘¸ŽŽŽ‘¹Jim‘U W‘ÿ*¸arrenŽ¡‘¸ŽŽŽ‘¹Louis‘U MandelstamŽ¡‘¸ŽŽŽ‘¹Allan‘U NoahŽ¡‘¸ŽŽŽ‘¹Y–ÿ*¸asunori‘U T“aniik¸èeŽ¡‘¸ŽŽŽ‘¹Martin‘U BeneŽ¡‘¸ŽŽŽ‘¹Bennett‘U T‘ÿ*¸oGddŽ¡‘¸ŽŽŽ‘¹Le–U pGersone“della“Lin¸èux-RAID“mailing“listŽ¡‘¸ŽŽŽ‘¹Quelli–U cš¸èhe“ho“dimen˜ticato,“spiacen˜te“:)Ž¦P•¸èer›nfa“v“ore˜in“viate˜correzioni,‘ ’suggerimen“ti˜ecc.–[šall'autore.“Questo˜€è˜il˜solo˜moGdo˜in˜cui˜questo˜HO¸èWTO‘]pu€òŽŸ ®migliorare.ŽŽŽŒø†$ƒ’À;èÛ_2ÕÁGó¥!¢N ecbx1200óqLË ectt1000ó]fŒ ecbx1000ó&Lt$ffffecbx1440óŒ6 ecss1000ó½HЃ ecti1000óþÖëI½q½qecss2074ó 1ê± ecrm1000ó !",š cmsy10ó  b> cmmi10ùøßßßßß