Linux NAS im Eigenbau

Von | 7.Mai. 2013

Wer schon einmal über die „Über mich“ Seite gestolpert sein sollte, wird vielleicht wissen, dass einen Selbstbau-Linux-Server als NAS verwende.

Da ich schon immer (na ja so seit ca. 1998) einen Linux-Server betrieben habe, was lag da näher, ein für Foto-/Video nutzbares NAS ebenfalls mit Linux zu realisieren.

Fertige NAS-System, fast egal von welchem Hersteller, kommen meistens mit einer SPAR-CPU an, und als Betriebssystem werkelt dann meistens doch ein Linux-System. Hier besteht dann aber meistens der Nachteil, das die Hersteller proprietäre Erweiterungen vornehmen, so dass man hinsichtlich Updates auf Gedeih und Verderb an den jeweiligen Hersteller gebunden ist.

 

Linux NAS

Auf der Suche nach einem ansprechenden Gehäuse bin ich auch durch Artikel von Thomas Jansson auf das LIAN-LI PC Q08B gestossen, das Platz für insgesamt 6 Festplatten bietet, und trotzdem relativ kompakt ist. Vorteil des Gehäuses sind auch die von vorne zugänglichen USB-Ports.

Neben einem Board von Intel war, das aber über eine nicht ausreichende Anzahl von SATA-Ports verfügte, fiel die Wahl schnell auf das Zotec G43-ITX Board. Das Board ist selbst aus heutiger Sicht bis auf die fehlenden USB3 Ports immer noch auf einem Stand, der mich noch lange nicht über einen Ersatz nachdenken läßt.

Dazu eine E5800 CPU Dual-Core mit 3,2 GHz, 4 GB RAM und damit war das Grundsystem zusammen.

Jetzt liest man öfter, ideales Betriebssystem für ein NAS wäre z.B. freenas oder openfiler , die sicherlich ihre Vorteile haben, z.B. die Einrichtung/Administration über ein Webinterface. Aber so etwas gibt es für Linux in Form des Webmin Packetes auch. Aber so etwas nutze ich nicht, sondern lieber die Shell über SSH (geht auch von Windows wunderbar z.B. mit Putty). Außerdem habe ich die Angewohnheit, auch die unter /etc abgelegten Konfigurationsdateien per svn einer Versionkontrolle zu unterziehen.

Deshalb bin bei Debian, in dem Falle die Squeeze Version geblieben.

Für das eigentliche Betriebssystem wird eine 500GB Notebookfestplatte benutzt, die übrigens oberhalb des CD-Schachtes verbaut ist. Ist auf dem betreffenden Board eine unterstütze Ethernet Schnittstelle (das sind die meisten), dann kann man von Debian ein Miniimage downloaden, das weitere zur Installation ausgewählte Packete aus dem Internet herunterlädt. Es sollte zwar nicht die große Rolle spielen, aber einer der Debian-Mirrors ist die RWTH Aachen, und die ist einen Steinwurf von mir entfernt ;-). Die Installation ist bei einem solchen Miniimage nur DOS-graphisch 😉 , also keine Gnome oder KDE-Oberfläche. Das betrachte ich persönlich aber als Vorteil, weil was soll der grafische Kram auf einem Server 😉

Auf der Notebbok-Festplatte liegen auch die Home-Verzeichnisse der Benutzer, die in Windows-Systemen auf U: verbunden werden.

Die Einrichtung eines RAID5 Arrays aus ingesamt 2 2TB Festplatten erfolgt ebenfalls menuegesteuert und problemlos.

Zusätzlich verbaut ist eine weitere 2 TB Festplatte als interne Sicherung.

Linux NAS

Folgende Server sind eingerichtet:

  • Apache/PHP
  • fetchmail/postfix
  • MySQL
  • PostgreSQL
  • Samba
  • Squid
  • svn

um mal die wichtigsten zu nennen.

Das wichtigste aber dürfte sein, das die Übertragungsraten sich wirklich sehen lassen können. Mit dem Nas-Tester habe ich die nebenstehenden Raten ermittelt, wobei Dateigrößen von 400MB und mehr trotz Foto und Videobearbeitung eher die Ausnahme darstellen.

Das erlaubt es mit Fotos und Videos überhaupt nicht mehr lokal zu speichern, sondern unmittelbar auf dem Linux-Server zu speichern, und zumindest bei Fotos ohne lokale Zwischenspeicherung auch dort zu bearbeiten. Lediglich Video-Projekte werden auf dem lokalen System auf eine SSD zur Bearbeitung gespeichert, weil es da eben noch schneller geht.

Ich gehe mal davon aus, das die im Artikel von Patrick Gotthard mit Freenas genannten recht niedrigen Übertragungsraten wirlich fehlendem RAM geschuldet sind.

Linux NAS

fetchmail holt dabei die Emails von verschiedenen Providern ab, während postfix als SMTP-Server für das Versenden von Emails sowohl intern als auch an externer Mail-Server zuständig ist.

Der Apache als der Webserver schlechthin dürfte sicherlich bekannt sein. Mit PHP und MySQL ist es mir dann auch möglich, z.B. bestimmte Sachen in WordPress lokal auszuprobieren. PostgreSQL ist zwar noch installiert, spielt aber leider kaum noch eine Rolle, weil immer weniger Hoster diese SQL-Datenbank im Angebot haben.

svn wird zur Versionskontrolle eingesetzt, um verschiedene Versionen von Skripten oder auch Programmen oder Teilen hiervon zu verwalten.

Zu guter letzt sollte ich vielleicht noch erwähnen, das der Server nicht durchläuft, er schaltet sich automatisch ab, wenn sich kein Client mehr im Netz befindet. Dazu benutze ich nebenstehendes Script, das per nmap die ermittelteten IP-Adressen anpingt. Befinden sich dann über einen Wartezeitraum von 5 Minuten, der ingesamt 3 mal durchlaufen wird, nur noch 2 IP-Adressen im Netz (Server und Router), dann wird automatisch ein Runterfahren des System initiiert.

Das Script muss ich aber überarbeiten, da viele netzwerkfähige Handys, Tablets usw. , die keinen Server benötigen, dieses vom Herunterfahren hindern, wenn sie im WLAN angemeldet sind.

Als Fazit kann ich für mich festhalten, das ich keinen Drang verspüre, mir ein fertiges NAS-System zu kaufen und dieses hier beschriebene System seit mehr als 3 Jahren stabil läuft.

Geschwindigkeit und einfache Handhabung , aber vor allem auch die Möglichkeit Dinge mit einem simplen Script und einem Cron-Job zu automatisieren und die Flexibilität eines solchen Systems sprechen wie ich finde für sich.

Im Server ist wie oben erwähnt eine 5. Platte mit einer Kapazität von 2 TB installiert. Auf dieser erfolgt per anacron/rsync automatisch schon einmal eine erste Sicherung, sobald der Server angeschaltet wird bzw. einmal täglich, sollte er doch mal durchlaufen. Da das Board noch kein USB3.0 beherscht, erfolgt die Datensicherung vor allem der Fotos/Videos auf externe Platten mit dem Windows-Client und robocopy . So verfüge ich über die interne Sicherung im Server selbst, und 2 zusätzliche Sicherungen auf externen Platten, ich denke das ist ausreichend.

Das hier beschriebene System läuft seit knapp 3 1/2 Jahren problemlos. Updates werden über die SSH-Konsole erledigt.

Vielleicht hat ja jemand Lust, seine Erfahrungen mit einem NAS zu kommentieren, ich würde mich jedenfalls freuen

ciao tuxoche

[tags]Linux,NAS,Server,Debian[/tags]

 

13 Gedanken zu „Linux NAS im Eigenbau

  1. Harry

    Guter Artikel!

    Was kostet der Aufbau eines eigenen NAS ohne HDDs, so grob :-)?
    Dieses MB von dem Du sprichst, wird das in dieses NAS Gehäuse eingebaut oder hast Du einen extra MiniPC gebaut? Ich vermute das ist im NAS, somit dieser NAS ein kleiner selbständiger Server auf einer Linux Distribution, die man praktisch beim einem Mac über den Terminal bedienen kann?

    Danke für Deine Antworten 🙂

    Gruß

    1. Peter Beitragsautor

      Hallo,

      danke für deinen Kommentar. Ohne HDD, also Mainboard,Gehäuse,CPU und ein bisschen RAM liegt man in einer Größenordnung von ca. 250,– bis 300,– € und ja das Mainboard sitzt in dem Gehäuse drin, zusammen mit bis zu 5 3,% Zoll Platettne und einer 500GB Notebookfestplatte für das OS.
      Ich habe zwar keinen MAC, aber es sollte sich per Terminal oder SSH Client bedienen lassen

  2. Joachim Heistinger

    Obwohl samba auf meinem Server unter Vollast nur ca. 20% CPU-Last frißt schaff ich nur ca 95-100MB/s
    Ja, Jammerei auf hohem Niveau… Aber trotzdem…^^

    Servus,
    der Hausmeister von „da drüben“ 😉

  3. Martin Mörtl

    Toller Artikel und auch toller Blog

    Jetzt aber mal eine andere Frage. Wie viel „Lärm“ macht Dein Server bzw. Dein Gehäuse. Manche Gehäuse neigen dazu, das „brummen“ der Lüfter sehr stark nach aussen zu transportieren. Kannst Du zur Geräuschentwicklung was sagen?

    Danke Martin

    1. Peter Beitragsautor

      Hallo Martin,

      vielen Dank für deine Frage. Also wie beschreibt man Lärm 😉 Er steht in der Ecke des Wohnzimmers und er ist nicht zu hören, selbst wenn kein Fernsehen oder Radio läuft. Das Gehäuse verfügt allerdings auch nur über 2 Lüfter, die ich relativ regelmäßig reinige

    2. Erik

      Die Geräuschentwicklung ist sehr gut. Die Lüfter sind groß und touren entsprechend niedrig, mit einem niedrigem Geräuschpegel. Da brummt nichts. Ich kann das Gehäuse sehr empfehlen.

      Einziger Minuspunkt: Keine Festplattenleuchte am Gehäuse.

      1. Peter Beitragsautor

        Hallo Erik,

        Danke für die Einschätzung zum Geräuschpegel. Nur in einem Punkt kommt Widerspruch euer Ehren 😉 das Teil hat eine Festplattenleuchte (rot), also Aktivitäten auf den Platten werden angezeigt. Allerdings schaue ich meistens per SSH drauf 😉

        1. Erik

          Wo ist die Leuchte? Ich habe folgende Knöpfe/Anschlüsse vorne drann/drauf:

          1xPower, 1xReset, 2xUSB, 2x Audio

          Wo soll die LED sein? Steh‘ doch mal bitte auf und geh‘ mal gucken. B-)

  4. Erik

    Danke für den Artikel.

    Woher hast du das Mainboard Zotec G43-ITX bezogen? Das scheint mir schon etwas älter zu sein und ist schwer zu finden.

    1. Peter Beitragsautor

      Das Board ist tatsächlich schon alter, ich meine es über computeruniverse bezogen zu haben. Vielen Dank für deine Rückmeldung

      1. Erik

        Das Board selber gibt es nicht mehr (neu). Ich habe es gebraucht bei eBay bekommen.

        Wenn man nur ein Board mit 4 Sata-Anschlüssen braucht, wird die Auswahl an Boards wesentlich größer. Das reicht in der Regel dann auch. 4×3 TiB ergeben bei ext4 eine Kapazität von 8.2 TiB.

        Gebootet wird das Ding von einem USB-Stick, damit vom Raid keine Nutzdaten verloren gehen.

        1. Peter Beitragsautor

          Hallo Erik,

          ja das Board gibt es nicht mehr. Hinsichtlich der Anschlüsse, da waren wie gesagt 4 2 TB Platten drinne, einmal Raid und eine Sicherungsplatte. Zusätzlich für das Betriebssystem und Nutzerverzeichnisse eine 500GB Notebookplatte verbaut.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert