1. Motivation

Der bisherige Server - ein alter Desktop-PC mit einem 3 GHz-Pentium 4-Prozessor - soll eigentlich das Rückgrat der heimischen IT-Infrastruktur sein. Für einen 16-Stunden-Betrieb verbraucht er aber definitiv zu viel Strom: ca. 75 W im Leerlauf. Außerdem bekommt er immer mehr "Macken". Aus diesen Gründen soll er durch einen neuen Server bzw. ein NAS mit Zusatzfunktionen ersetzt werden.

2. Meine Anforderungen

  1. Hardware
    1. deutlich geringerer Stromverbrauch als bisher
    2. Software-RAID 1 muss möglich sein
    3. 2 x LAN, um das NAS in zwei Subnetze hängen zu können
    4. Plattenkapazität ausbaubar
    5. leise
  2. Infrastruktur-Services
    1. NTP-Server für das lokale Netzwerk
    2. DHCP- und DNS-Server DNSMASQ für Versorgung des lokalen Netzwerks
    3. Anschluss und Freigabe von Druckern für das lokale Netzwerk
    4. Dirvish für Datensicherung
  3. Data Center
    1. Je Anwender ein privates Datenverzeichnis auf dem NAS
    2. Ein gemeinsames Verzeichnis für den Datenaustausch
    3. Archiv-Verzeichnis(se) für Software, Bilder, Musik, Videos etc.
    4. Zugriffsrechte gestaltbar
    5. Samba-Version kompatibel mit Windows 7: Offline-Dateien müssen funktionieren
  4. Subversion
  5. Streaming von MP3-Dateien, z.B. mittels TwonkyMedia
  6. PMWiki lauffähig (PHP notwendig)
  7. Budget: Max. 450 €

3. Server-Eigenbau-Vorschlag aus c't 20/2010

3.1. Hardware

  • CPU: AMD Athlon II X2 250
  • Mainboard: Asus M4A78LT-M
    6 x SATA, 6 x USB 2.0, VGA, HDMI, DVI-D, ATI Radeon HD3000
  • RAM: 2 GB ECC-DRAM, ausbaubar auf max. 8 GB
  • 2 x GB-LAN zum Anschluss an zwei Subnetze
  • Speicherkapazität
    • Systemplatte: 160 GB
    • Daten: 2 TB RAID 1
  • Stromverbrauch
    • Idle: ~50 W
    • Idle, Grafik ausgeschaltet: ~ x W
    • Last, während RAID-Synchronisation: ~61 - 63 W
  • Lautstärke: superleise
  • Gehäuse: Midi-Tower, mit viel Luft drin, so dass keine Zusatzlüfter erforderlich sind

3.2. Software

  • Betriebssystem: Linux: Ubuntu Server 10.10 64-Bit-Version, sobald verfügbar dann Upgrade auf die kommende LTS-Version
  • SSH-Zugriff
  • Services
    • Dateiserver mittels Samba
    • Druckserver mittels Samba
    • Multimedia-Streaming mittels Twonkymedia-Server
    • Webserver mittels lighttpd und PHP
    • Versionsverwaltung mittels Subversion
    • Zeitserver für das LAN mittels NTP
    • DHCP- und DNS-Server für das LAN mittels DNSMASQ
  • beliebige weitere Services und Applikationen

3.3. Kosten

HauptplatineAsus M4A78LT-M (AMD 760G-Chipsatz)
6 x SATA, 6 x USB 2.0, VGA, HDMI, DVI-D, ATI Radeon HD3000
50 €
ProzessorAMD Athlon II X2 250, Processor-in-Box (mit Kühler)50 €
Hauptspeicher1 x 2 GByte ECC (DDR3-1333/PC3-10600)30 €
NetzteilBe Quiet! Pure Power L7 300W36 €
2. GB-LAN-AnschlussEdimax EN-9260TX-E, PCIe10 €
eSATA-SlotblechSharkoon eSATA-Slotblende 1 Port3 €
Festplattenentkoppler3 x Sharkoon HDD Vibe-Fixer III, 5,25"24 €
Festplatten f. Daten2 x 2 TB, 3,5", Samsung F3 EcoGreen HD204UI140 €
Festplatte f. System1 x 160GB, 2,5", Samsung HM160HI30 €
SATA-Kabel2 Stck.4 €
2,5-auf-3,5"-Rahmenz.B. Scythe 2.5 Twin Mount5 €
GehäuseSharkoon Rebel 9 Economy43 €
Versandkosten 19 €
Summe442 €

4. Installation und Konfiguration

4.1. Ubuntu-Server-Installation

Das ISO-Image von Ubuntu Server 10.10 64-Bit ist fehlerhaft. Dadurch bricht die Installation ab. Ich habe unter Windwos das von der Ubuntu-Web-Site heruntergeladene Image zur Installation mittels Universal-USB-Installer-1.8.3.4 auf einen USB-Stick kopiert. Dadurch kann man die fehlerhafte Installation leicht reparieren:

  1. Auf dem Stick (oder im entpackten ISO-Image) in das Verzeichnis \pool\main\l\linux wechseln.
  2. Dort die Datei fs-secondary-modules-2.6.35-22-generic-di_2.6.35-22.33_amd64.ude in
    fs-secondary-modules-2.6.35-22-generic-di_2.6.35-22.33_amd64.udeb ändern.

Das war's. Jetzt einfach den USB-Stick in den Rechner, dort im Boot-Menü den USB-Stick wählen, und schon installiert sich Ubuntu.

4.2. Partitionierung und RAID-Konfiguration

160 GB-Systemplattesdasda1
/boot
200 MB, ext4
sda2
/swap
16 MB
sda3
/
159,8 GB
2 TB RAID 1-Systemmd0sdb1/sdc1
/home
2 TB, ext4

Anlegen und einbinden des RAID nach der Installation

  1. Mittels parted (nicht mit fdisk!) auf den Platten sdb und sdc jeweils eine Partition vom Typ RAID anlegen.
  2. Das Paket mdadm mittels aptitude install oder apt-get install herunterladen und installieren.
  3. Der folgende Befehl legt das RAID-1 an: mdadm --create /dev/md0 --verbose --level=raid1 --raid-devices=2 --spare-devices=0 /dev/sdb1 /dev/sdc1
  4. Mit dem Befehl mdadm --detail /dev/md0 kann der Synchronisierungsstatus und andere Infos des erzeugten RAIDs angezeigt werden.
  5. Das RAID-System mit dem EXT4-Dateisystem formatieren: mkfs -t ext4 /dev/md0
  6. Die Datei /etc/fstab um die folgende Zeile ergänzen:
    /dev/md0 /home default 0 1