Jag har precis fått igång min server (eller håller snarare på att konfigurera den) som består av en gammal dator som jag monterat in de bättre av mina gamla hårddiskar i samt kompletterat med kontrollerkort och nytt nätverkskort för gigabit. Datorn har jag satt ihop själv och modifierat en massa under åren (t.ex. bytt CPU flera gånger) men senaste två åren har den bara stått oanvänd i garaget så nu var det dags att få den att göra nytta. Har tyvärr inte nätverkskabel till garaget ännu (därav det trådlösa kortet) men det är på gång.
Hårdvara (dator #3 i signaturen):
Moderkort: ECS K7S5A (SIS 735)
CPU: AthlonXP 2400+
Minne: 2x256 MB DDR PC2100
Nätverkskort 1: Netgear WG311T trådlöst (Atheros)
Nätverkskort 2: D-Link DGE-528T gigabit (RTL8169)
Kontrollerkort: SUNIX SATA4000 PCI (SiL 3114 4x SATA)
Grafikkort: All-in-wonder Radeon (kan kanske plockas ur?)
Hårddiskar:
sda: Samsung P120 250,1 GB IDE (Primary Master)
sdb: Seagate 7200.7 80 GB IDE (Secondary Master)
sdc: Seagate Barracuda IV 80 GB IDE (Secondary Slave)
sdd: Samsung P120 250,1 GB SATA
sde: Seagate 7200.7 160 GB SATA
CD-ROM: Någon gammal LiteON CD-brännare på IDE Primary slave (för installation av OS)
Jag kör ubuntu-server 8.04.01 utan grafisk miljö (styr den via ssh och PuTTY). Följande tjänster har jag installerat än så länge.
SSH
Samba
Planerat att installera NFS, rsync backup, ftp och kanske även en webserver att leka med.
Uppgiften servern har är i första hand som filserver för backup av våra datorer samt viss gemensam fillagring. Det jag är mest stolt över är hur jag fixat raidsetupen med alla dessa hårddiskarna. Kör linux mjukvaruraid samt logiska volymer för lagringen:
10 GB på de båda 250GB-hårddiskarna har reserverarts för systempartitionerna (boot, swap samt /) och dessa körs i raid 1. I övrigt har jag delat upp allt utrymme i 80 GB partitioner för att kunna utnyttja alla hårddiskarna. Jag kör alltså 3 stycken raid1 arrayer och 3 stycken raid5-arrayer:
md0: sda1, sdd1 (2x500 MB raid1 monterat som /boot)
md1: sda2, sdd2 (2x1,1 GB raid1 monterat som swap)
md2: sda3, sdd3 (2x8,5 GB raid1 monterat som /)
md3: sda5, sdd5, sde1 (3x80 GB raid5 monterat som fysisk enhet för lvm)
md4: sda6, sdd6, sde2, sdb1 (4x80 GB raid5 - fysisk enhet för lvm)
md5: sda7, sdd7, sdc1 (3x80 GB raid5 monterat som fysisk enhet för lvm)
Som synes har jag gjort raid-arrayer utifrån mindre partitioner men så länge man fördelar dem över lika stora partitioner på olika fysiska hårddiskar (och helst inte på samma IDE-kanal) så verkar det inte orsaka några problem. Tevligt med mjukvaruraid i linux eftersom man kan blanda IDE och SATA-diskar och olika kontrollerkort lite hur som helst.
Sedan har jag skapat lagringsutrymme för logiska volymer (lvm) på md3, md4 och md5 vilket alltså gör att man inom detta utrymme sedan kan skapa valfria logiska enheter, alltså något som ser ut som hårddiskar i linux men i själva verket ligger på flera olika fysiska diskar. Så jag har skapat följande:
lvm-home: 100 GB logisk enhet som jag fyllt med en ext3-partition mountar i /home
lvm-share: 100 GB logisk enhet - ext3 monterad i /media/share
lvm-video: 100 GB logisk enhet - ext3 monterad i /media/video
lvm-backup: 260 GB logisk enhet - ext3 monterad på /media/backup
Har valt raid endast för redundansens skull, om en hårddisk går sönder så kan den ersättas utan att datan försvinner (jag vet att man ändå ska säkerhetskopiera). 820 GB hårddiskutrymme ger alltså 570 MB användbart utrymme i mina arrayer, resten (30 %) är extra kopior, alltså reservdata ifall någon hårddisk går sönder. Trevligt med logiska volymer ovanpå raid-arrayerna så att man valfritt kan göra "virtuella hårddiskar" som man kan ändra storlek på som man vill. Är också lätt att utöka lvm-utrymmet om man skaffar nya större hårtddiskar. Jag delar sedan ut dessa logiska volymer på nätverket via samba. Systemfilerna valde jag dock inte lägga på lvm för att undvika eventuella bootningsproblem.
Håller nu på att testa hur samba funkar över gigabit-nätverk. Hade inte jättestora förhoppningar på att få bra prestanda eftersom jag hade PCI-baserat nätverkskort samt SATA-kontroller på PCI i servern. Hade först stora problem att få någon vidare hastighet mot en dator som körde WindowsXP men testade sedan en annan dator som kör Vista SP1 och då blev det rätt bra flyt. Kopierade en 2 GB videofil till servern på ca 1 minut och det gick lika fort att kopiera den tillbaka. Ger ju en överföringshastighet på ca 30 MB/s. Känns ungefär lika snabbt som en USB2-hårddisk ansluten direkt till datorn. Verkar som Vista funkar bättre än XP när det gäller nätverk, och linux verkar ju funka bra också...
En varning dock om ni håller på med raid-arrayer. Starta inte om eller stäng av datorn efter installationen innan all hårddiskaktivitet har avstannat för har man otur kan man sabba något om man stänger av när arrayerna håller på att synkas.
Är skoj i alla fall att fixa en linuxserver, har aldrig sysslat med linuxservrar innan. Mycket pyssel med att konfigurera men resultatet blir ju bra.