OpenMediaVault – Nachtrag zum RAID

Tja, so schnell kann’s gehen…

Neulich habe ich noch von der RAID-Funktion in OMV geschwärmt, heute bin ich davon weg…

Warum? Nun, RAID hat einen guten Einsatzzweck, wenn man genug gleich große Festplatten hat. Es bietet dann eben eine Sicherheit gegen Festplattenausfall und lässt sich als ein einziges Laufwerk ansprechen. Sehr praktisch. Aber wenn man mur vier SATA-Ports hat, von denen einer die Systemplatte beherbergt, kann man nur drei Platten betreiben, damit also RAID5. Das ist mir doch zu wenig Platz mit meinen 2x500GiB und 1x1000GiB, deswegen bin ich davon weg. RAID5 wird übrigens, je größer die Platten werden, immer unpraktischer und wird nicht mehr empfohlen, denn wenn bei der lange dauerndes wiederherstellung von Daten etwas schief geht, ist alles futschkato. Deswegen sollte man mit großen Platzen immer RAID6 nutzen, da braucht man aber mindestens vier Platten.

Außerdem habe ich mit einem fehlgeschlagenen Update auf OMV 3 (Beta) das Serversystem (halb-)geschrotet, daher mache ich mich nun dran, den Server neu aufzusetzen.

Dieses Mal werde ich die Festplatten dabei anders einsetzen:

  • 40GB IDE-  Ja genau, eine hier rumliegende IDE-Festplatte. Verläuft alles nach Plan, werden das zwei Platten. Beide am IDE-Anschluss, so, dass ich immer ein Backup-System habe.
  • 80GB IDE – Dies ist die Systembackup-Platte, scheint aber (bin mitten im Setup) nur als 8GB erkannt zu werden… Eine erste 80GB Platte wurde von OMV gar nicht mehr erkannt… Rumliegende alte Hardware ist scheinbar nicht mehr ganz so einfach zu nutzen. 
  • SATA1: 500GB
  • SATA2: 500GB
  • SATA3: 1000GB
  • SATA4: 1000GB (War vorher per USB-Gehäuse am Rechner).

Die verbauten IDE-Plattenstammen aus meinem letzten verbliebenen PowerMac, der im Keller vor sich hin gammelt.

Jetzt ist die Frage, ob och die internen Laufwerke als separate Laufwerke anspreche, was durch den PlexMediaServer, für dessen Daten sie dienen, kein Problem darstellt, oder ob ich sie irgendwie koppele. Im RAID würde ich mit RAID5 auf etwa 1,5TB und mit RAID6 auf 1TB. Separat hätte ich eben gute 3TB. Hmmm. Es gibt noch eine Möglichkeit: LVM.

In einem LogicalVolumeManagement-Verbund, kann man Logische Laufwerke beliebig auf physikalisce Festplatten verteilen. Ich könnte also, ähnlich wie im RAID0 alle Platten in voller Kapazität als ein Laufwerk nutzen. Vorteil gegenüber RAID0 ist, so weit ich weiß, dass mannim Falle eines HDD-Crash nur die entsprechenden Daten der kaputten Platte verliert. Das wär‘ doch was. Ich werde also gleich mal OMV3 installieren und dann mal LVM testen.

[…Zeit verstreicht…]

Inzwischen läuft die Installation. Das Backup wird später konfiguriert. Sobald das System von der IDE-Platte startbar ist, hänge ich die SATA-Platten dran und dann geht die Konfiguration über das WebUI weiter. Fingerkreuz.

Läuft das System, samt Speicher, kommt der nächste Beitrag.

Werbung

Software-RAID vergrößern in OpenMediaVault

Ich verwende inzwischen einen Linux-basierten Server als PlexMediaServer. Das habe ich schon vor vielen Jahren gemacht, bis ich irgendwann mal auf ein MacBook umgestiegen bin. Vor einigen Monaten, bin ich aber zurück zu Linux. Dieses Mal wollte ich kein vollwertiges Desktop-System nutzen und habe mich im Zuge dessen mal an eine NAS-Distribution gewagt. Meine Wahl fiel auf OpenMediaVault.

Ein schlankes, modernes, Debian-basiertes Server-System, welches (fast) komplett per Webinterface administriert werden kann.

Nach dem letzten Hardware-Upgrade sah mein Server dann so aus:

  • AMD Phenom 9650 Quad-Core-Prozessor
  • 4GB DDR2 RAM
  • 320GB System-Festplatte
  • Interne HDDs: 2x500GB, 1TB (Erst kürzlich, vorher 320GB)
  • Externe USB3-HDDs: 4TB, 3TB, 2TB, 1TB

Das bringt mich insgesamt auf etwa 12TB Speicher. So weit, so gut.

Eine schöne Sache an Linux-Servern ist, das mögliche Software-RAID. In OpenMediaVault (OMV)  kann man verschiedene Festplatten, sogar USB-Laufwerke, in einem RAID-Verbund zusammenfassen. Das geht, wie alles in OMV, ganz einfach im Web-UI. RAID bedeutet, kurz gefasst, dass man viele Laufwerke als ein einziges ansprechen kann. Ich habe mich entschieden, die internen Festplatten in einem RAID-Verbund zusammenzuschalten.

Problematisch war dabei allerdings, dass ich, zur Einrichtung, zwei interne 320GB Festplatten im Server hatte, was die kleinsten Festplatten waren. Eine davon habe ich, dummer Weise, für das System genutzt. Warum das keine gute Idee war? Weil ich dafür eine 80GB IDE-Platte hätte nutzen können. Egal, der Wechsel auf irgendein anderes Laufwerk kommt später irgendwann, damit der SATA-Port frei ist fürs RAID.

Ich hatte nach der Installation also noch eine 320GB und zwei 500GB Festplatten für mein RAID zur Verfügung. Bei drei Festplatten, sollte man RAID5 verwenden (Die RAID-Modi findet ihr im Netz). RAID5 verteilt Daten und Wiederherstellungsinfos auf den Festplatten,  wodurch eine Platte quasi unnutzbar wird, der Gesamtspeicher setzt sich also aus der Summer der Platten minus eine Platte zusammen. Dabei wird die kleinste verfügbare Größe verwendet. Mein RAID bestand also auf 640GB (3×320-320). Das coole ist bei RAID, dass, wenn eine Platte stirbt, sie einfach gewechselt werden kann und keine Daten verloren gehen. Aber: RAID IST KEIN BACKUP.

Da ich nur eine 320GB Festplatte im RAID hatte, nervte mich die Größe von 320GB als Grundlage extrem!

Neulich habe ich dann aus meinem alten, nicht genutzten Buffalo-NAS eine 1TB-Festplatte ausgebaut und die 320GB Platte gegen diese getauscht.  Daraufhin sollte ich ja 1TB haben (3 Festplatten, 500GB*3-500=1TB). Der Tausch lief problemlos. Das RAID wurde wiederhergestellt und nach einiger Zeit (über eine Stunde) lief alles. Mit 640GB. Was?!

Fuck!

Nach ewiger Recherche stieß ich darauf, dass man mit dem Linux-Tool mdadm die Größe des RAIDs angepasst werden muss. Der gesamte Befehlt lautet dann:

mdadm /dev/md0 –grow –size=max

Damit wird das RAID auf die Maximal mögliche Größe geschaltet. Danach muss man noch das Dateisystem im Web-UI von OVM anpassen und dann wird endlich der neue Speicher nutzbar.

Wenn man’s genau nimmt habe ich diesen Artikel nur verfasst, um mir selber das Vorgehen zu notieren, damit ich nicht zu viel Nerv damit habe, das Prozedere erneut durchzuführen, wenn alle 500GB Platten durch 1TB ersetzt werden.

Mac OS X Lion und Ubuntu NFS Shares

Ich dachte ja, dies sei ein banales Thema, aber wenn ich schon einen ganzen Nachmittag damit zubringe, ein paar Ordner meines Ubuntu-Servers per NFS am Mac zu nutzen, ist dies wohl doch einen Blog-Artikel wert. Worum geht es hier? Ganz einfach: Es geht darum, dass OS X Lion die bei den meisten Linuxdistributionen enthaltene Netatalk-Version nicht mehr unterstützt, was bedeutet, dass man nur zwei Möglichkeiten für den Ordner-Zugriff übers Netzwerk hat: SMB und NFS.

Da kein guter OS X-Nutzer freiwillig SMB, die Windows-Sharing-Methode, nutzen möchte, dachte ich, ich probiere mal NFS aus. NFS ist der Unix-Netzwerkstandard, also auch entsprechend Leistungsstark und zuverlässig. Nach allen Tutorials, die ich so gelesen habe, sollte NFS auch sehr einfach einzurichten sein. Zunächst muss NFS auf dem Server installiert werden. Unter Ubuntu erledigt das ein

„sudo apt-get install nfs-kernel-server“

oder eben die suche nach „nfs-kernel-server“ in Synaptic.

Danach wird’s eigentlich recht einfach. In der Datei „/etc/exports“ werden die freizugebenden Ordner eingetragen. Ein Blick in die Datei sollte eigentlich alles erklären, aber hier noch mal ein Beispieleintrag:

„/home/benutzername/Downloads *(rw,sync,subtree_check,insecure)“

Dabei bedeutet der „*“, dass jeder Rechner im Netzwerk auf die Freigabe zugreifen kann. Man kann auch einzelne Rechner mit deren IP-Adressen und eigenen Optionen angeben (192.168.1.102(optionen)), oder einzelne Netzwerke (192.168.1.0/255.255.255.0(optionen)). Wichtig ist nur, dass zwischen den Rechnern und den Optionen KEIN Leerzeichen sein darf. Für Macs ist die Option „insecure“ unumgänglich, da Macs nicht den Standard-Port für NFS verwenden (liegt am FreeBSD-Unterbau) und der Linux-Server dies wissen muss.

Sind alle Freigaben eingerichtet, kann die Datei gespeichert der Editor geschlossen werden. Nun muss noch der Befehl

„sudo exportfs -a“

ausgeführt werden, damit die Freigaben neu eingelesen werden. Das war’s schon auf der Server-Seite. Wenn alles gut läuft brauchen wir nicht mehr am Server arbeiten…

Am Mac kann man nun über CMD+k (Mit Server verbinden) im Finder die entsprechende Freigabe mounten. Dabei ist zu beachten, dass der gesamte Pfad angegeben werden muss, denn anders als bei AFP oder SMB wird bei NFS der gesamte Pfad freigegeben und nicht nur der eine Ordner. Für das obige Beispiel muss man also im Verbinden-Fenster das folgende eingeben:

„nfs://ip-des-servers/home/benutzername/Downloads“

Das besondere bei NFS ist nun, dass kein Benutzername oder Passwort eingegeben werden muss, da bei NFS eben schon serverseitig eingestellt wird, welche Rechner Zugriff haben. Für Heimnetze ist dies aber meist eher von Vorteil.

Was bei NFS allerdings ein kleines Manko ist, ist dass ein NFS-Server nicht in Lions (und wohl auch nicht in Leopards und Snow Leopards) Seitenleiste auftaucht, selbst wenn man AVAHI nutzt um den Service im Netzwerk anzukündigen. Das ist sehr schade und wir Mac-Nutzer mögen das nicht. Eine Möglichkeit wäre also also, mit Automator ein Mount-Script zu erstellen, welches die gewünschten Freigaben auf Klick mountet. So mache ich das erst mal, bis ich eine Bonjour/AVAHI-Lösung finde.

Eine weitere Möglichkeit ist jedoch, dass man NFS-Freigaben im Festplattendienstprogramm einbinden kann.

Allerdings werden die Shares dann so ins Dateisystem eingebunden, dass sie nicht mehr als verbundene Netzlaufwerke auf dem Schreibtisch angzeigt werden. Man könnte so allerdings die Freigaben einfach ins Home-Verzeichnis einbinden, was ja auch ganz cool sein kann…

Eine wichtige Sache ist allerdings noch, dass die User-ID unter OS X normaler Weise eine andere als unter Linux ist. Verwendet man beide System typischer Weise mit jur einem Benutzeraccount sollte man die User-ID unter Linux von 1000 (Ubuntu-Standard) auf 501 (OS X-Standard) umstellen, um keine Zugriffrechte-Probleme zu bekommen. Dies empfielt sich bewonders, wenn man eigentlich nr OS X-Clients im Netz hat. Die Umstellung ist im Prinzip sehr einfach, allerdings muss man dafür extra eine Admin-Account einricgten, da der umzustellende Benutzer nicht eingeloggt sein darf. Danach gibt man einfach
„sudo usermod -u 501 benutzername“ im Terminal ein. Alle Rechte der Dateien im Homeverzeichnis werden automatisch geändert.

Ich hoffe dieser Artikel war hilfreich, oder wenigstens interessant…

XBMC – Linux-Server-PC als MedienCenter

Diesen Artikel habe ich schon vor einigen Wochen vorbereitet… Inzwischen ist er irgendwie zu lang um ihn noch mal ganz zu überarbeiten, also lasse ich ihn weitgehend in seiner jetzigen Form. Er soll ein weiteres mal beschreiben, wie ich mir einen PC als Mediencenter eingerichtet habe, dabei jedoch wirklich eine Anleitung bereitstellen, wie man sich mit einem alten PC und XBMC ein leistungsfähiges Mediencenter einrichten kann. Ich hoffe damit einigen helfen zu können die ein ähnliches Projekt vorhaben.

Für mein Projekt habe ich einfach den mir zur Verfügung stehen Rechner genutzt, sollte man einen PC extra dafür zusammenstellen, sollte man vor allem auf leise Komponenten achten. Ich plane für die Zukunft einen lüfterlosen PC zusammenzustellen und auch die Festplatten aus dem Gerät zu verbannen. Dies benötigt jedoch einige teurere Komponenten und so muss ich das noch einige Monate aufschieben… Vielleicht klappt es im Spätsommer/Herbst…

Komponenten

Der PC wie ich ihn verwende besteht aus folgender Hardware:

– GigaByte Mainboard mit OnBoard Sound und Netzwerk

– AMD Opteron 175, DualCore mit 2,3GHz

– 2GB DDR2-RAM

– Mehrere Festplatten (250GB SATA, 7200RPM, 500GB SATA, 7200RPM, 320GB PATA, 7200RPM).

– DVD-Brenner

– Bluetooth-Dongle

Die Komponenten sind an sich nicht wirklich wichtig. Mehr RAM ist natürlich gut, aber eigentlich sollten 128MB bereits ausreichen. EIne 1GHz CPU währe wohl auch sinnvoll und eine halbwegs gute Grafikkarte, die in der Lage ist 3D-Grafik darzustellen, ist auch von Vorteil.

Natürlich kann man auch nur eine Festplatte verbauen, oder, idealer Weise, gar keine. Man kann z.B. auch einfach einen USB-Stick verwenden. Dann bekommt ein sehr leises System, aber man bekommt auch Speicherplatzprobleme. Betreibt man allerdings sowieso ein NAS, kann man so einen perfekten, leisen Streaming-Rechner bauen. Bei Amazon gibt es 2GB Speichermodule, die direkt in einen IDE-Port gesteckt werden können für wenig Geld. Das sind die perfekten Speichermedien für XBMC. Ebenfalls kann man natürlich eine günstige kleine SSD verbauen. Eine 8GB SSD kostet bei Alternate z.B. nur 35€. Man muss hierbei natürlich bedenken, dass bei alter Hardware sich eine SSD nicht lohnt (eine SSD für den IDE-Port kostet sehr viel mehr als eine für SATA).

Zusammenbau

Die Hardware war bei mir eh schon zusammengeschraubt, nur die 320GB Platte war noch nicht verbaut, diese habe ich auch erst nachträglich eingebaut, weil ich die für einen besonderen zweck nutze (kommt später).

Software

Ist alles zusammengebaut und funktioniert, wird die Software benötigt… Hier http://xbmc.org/ sollte man sich eine aktuelle Versionen der XBMC-Live-Distribution herunterladen. Dies ist eine Standalone-Variante von XBMC, welche auf Ubuntu basiert. Die Installation geht schnell von der Hand und wird hier nicht weiter beschrieben. Die komplizierteren Vorgänge folgen danach…

Als erstes stellen wir uns mal ein deutsches Tastaturlayout ein. Standartmäßig arbeitet XBMC mit amerikanischem Tastaturlayout (QWERTY). Das ändern wir erst mal. Dazu muss man in ein Terminal wechseln, hierzu betätigt man CTRL+ALT+F2. Dann muss man sich mit dem während der Installation angelegten Benutzer anmelden. Dann gibt man das folgende ein (keine Anführungszeichen ihr Torfnasen!):

„sudo dpkg-reconfigure -plow console-setup“

Dann erscheint ein Menü durch das man sich durchhangeln kann. Funktioniert die Tastatur wie gewollt geht es weiter…

Zunächst mal sollte man alle installierte Software updaten. Dies geschieht über das Ubuntu (Debian) entspringende Tool apt-get. Als nächstes die folgenden Befehle eingeben (Beim ersten Befehl wird man noch mal nach seinem Passwort gefragt.):

„sudo apt-get upgdate“

„sudo apt-get upgrade“

dann werkelt der Rechner erst mal. Man sollte etwaige Nachfragen bejahen. Danach gibt man

„sudo reboot“

ein. Dadurch startet das System neu.

Möchte man keine weitere fancy Konfiguration vornehmen, kann man auch erst mal im XBMC-Menü alles einrichten (Sprache, Medienquellen, PlugIns, … das alles kann man bequem über die Oberfläche einrichten)…

Wer XBMC zum ersten Mal verwendet sollte einfach ein bisschen durch die Gegend navigieren und sich mit der Oberfläche vertraut machen. Hat man all seine Filme und Serien eh auf einer Netrzwerkplatte liegen kann man die nun einfah unter „Videos“ hinzufügen. Dabei sollte man darauf achten dass der richtige Medinetyp ausgewählt ist und schon fängt XBMC an die hinzugefügten Ordner zu scannen und in die eigene Datenbank aufzunehmen. Dabei läd’ es Informationen und Cover für alle Filme und Serien herunter, damit man eine schön geordnete Mediathek bekommt… Ebenfalls kann man die Sprache auf „Deutsch“ umstellen und sich generell etwas in den Einstellungen umsehen und herumprobieren.

AddOns/PlugIns

Ich empfehle auch sich den Punkt „AddOns“ anzusehen. Dort gibt es Erweiterungen um mit XBMC die Mediathek der öffentlich rechtlichen Fernsehanstalten zu streamen, Arte, Tagesschau und so weiter…

Ein sehr wichtiges, extrem cooles PlugIn ist auch noch „xSTream“ (Google-Suche). Damit kann man auf Simpsons.to, Southpark.de und Kino.to zugreifen, womit man eine ziemlich große Bandbreite an Sendungen streamen kann.

Erweiterungen und weitere Möglichkeiten

Möchte man jedoch noch mehr aus seinem Mediencenter machen, gehe ich nun noch auf folgende Punkte ein:

XBMC Mediacenter …

– mit WiiMote bedienen.

– per AppleTalk/AFS im Netzwerk erreichen

– per SAMBA/CIFS (Windows-Share) im Netzwerk erreichen

– als TimeMachine-Laufwerk (TimeCapsule) nutzen

Dazu wechseln wir wieder auf ein Terminal und geben die folgende Zeile ein:

„sudo apt-get install ssh samba netatalk emacs mc bluetooth wminput xbmc-eventclients-wiiremote gparted“

(eventuell weitere Software kann man entweder hinten dranhängen oder nachträglich installieren. Ist eigentlich egal…).

Alles nach „sudo apt-get install“ ist optional. Die installierte Software wir ddurch Leerzeichen getrennt. Der obige Befehl installiert die folgende Software:

– SSH: SecureShell, zum Zugriff auf den Rechner von einem anderen Rechner aus

– SAMBA: Windows Dateifreigaben einrichten

– NETATALK: Apple AFS Freigaben einrichten

– EMACS: Guter leistungsfähiger Editor

– MC: Midnight Commander (Norton Commander Klon, hilfreich über SSH um einfache Dateioperationen vorzunehmen)

– GParted: Partitionseditor zum formatieren von Festplatten

– Bluetooth: Bluetooth-Software (Treiber und so für Bluetooth)

– wminput xbmc-eventclients-wiiremote: Treiber und Software für die WiiMote (Falls man eine WiiMote zur Bedienung nutzen möchte)

Danach können wir den Rechner dorthin stellen wo er hin soll und bequem von einem anderen Rechner auf einem Terminal die restliche Konfiguration vornehmen. Ein weiteres

„sudo reboot“ und wir können den Rechner erst mal alleine lassen.

Von einem beliebigen anderen Rechner aus kann man nun über SSH alles weitere vornehmen.

Remote-Administration

Am Mac öffnen wir also ein Terminal und geben das folgende ein:

„ssh -X Benutzername@IP-desXBMC-Rechners“

Man sollte nach dem Passwort gefragt werden. Funktioniert alles befinden wir uns auf einer Konsole des XBMC-Rechners.

Das „-X“ in dem Befehl sorgt dafür, dass Grafik-Anwendung (X-Anwendungen) über SSH auf unseren Rechner getunnelt werden. So kann man z.B. das GUI-Programm GParted aufrufen und bequem mit Maus und Monitor neue Festplatten partitionieren…

Um dieses Tutorial nicht zu lang werden zu lassen verweise ich zur Einrichtung von Netatalk auf http://www.kremalicious.com/2008/06/ubuntu-as-mac-file-server-and-time-machine-volume/

Dort gibt es alle benötigten Infos. Man muss nur die Konfiguration durchführen, das neueste Paket hat schon alle benötigte dabei und man muss nichts kompilieren…

Die eigentliche Konfiguration nimmt man über ein paar Dateien vor, diese sind:

– /etc/netatalk/afpd.conf (Netatalk-Konfiguration)

– /etc/netatalk/AppleVolumes.default (Freigaben)


Außerdem sollte man die Avahi-Konfiguration anpassen, damit der Rechner auch schön bei allen Macs im Netzwerk in der Seitenleiste auftaucht. Dies macht man in der Datei /etc/avahi/services/afpd.service. Der benötigte Datei-Inhalt steht im oben genannten Tutorial.

Für eine SAMA-Konfiguration verweise ich einfach mal auf Google. Im Endeffekt muss man aber nur die Datei /etc/samba/smb.conf an die eigenen Bedürfnisse Anpassen. Das geht wirklich recht einfach…

Für die Einrichtung einer WiiMote eigentlich nur noch die Datei /etc/rc.local angepasst werden (Vorausgesetzt man hat alle WiiMote-Dateien und Bluetooth-Unterstützunginstalliert). Vor der Zeile „exit 0“ fügt man einfach „xbmc-wiiremote &“ (ohne Anführungszeichen) ein. Nach einem Neustart sollte dann eigentlich alles funktionieren.

Man kann den Medienrechner so tatsächlich um sämtliche vorstellbaren Serverfunktionen erweitern und bekommt so ein leistungsfähiges, nützliches Mediencenter.