QNAP erweitern – Volumes löschen, RAID ändern

Vielleicht ist das für den einen oder anderen Anwender von QNAP-NAS interessant. Das folgende gilt für ein TS-451 mit Firmware 4.2.0.

Ausgangslage: 2 FP als RAID 1 mit der alten Firmware angelegt, alle Daten im Backup gesichert

Problem: FP-Speicher zu klein, weitere 2 FP rein und in RAID 5 umwandeln

Hier ist wichtig: egal ob das mit dem Umwandeln nach Anleitung klappt oder ob man Löschen und neu anlegen muss, geht davon aus, dass die Daten futsch sind und legt ein Backup an. Da kann immer was schiefgehen.

Laut Anleitung sollte das Erweitern um weitere FP einfach so gehen, reinstecken und einbinden. Das ist aber anscheinend die Anleitung für FP, die bereits als “Storage Pool” angelegt wurden, nicht als “Storage Space” wie meine mit der alten Firmware. Wusste ich nicht, aber die ganze Migration klappte nicht, die Status-LED blinkte grün/rot, es tat sich nichts, insbesondere die Größe des Volumes wurde nicht erhöht.

Laut google ist das ein allgemeines Problem ohne spezifische Lösung, die Anleitung von QNAP (How to re-build multiple volumes to use snapshots after upgrading to QTS 4.2.0?) besagt, dass man das alte Volume löschen und den Storage Pool komplett neu anlegen soll. Das alte Volume ließ sich aber nicht löschen, da tat sich gar nichts. Damit konnte ich auch keinen neuen Storage Pool anlegen, da die FP nicht zur Konfiguration frei waren. Diverse Lösungen gingen auf ssh-Zugriff mit Überschreiben der FP ein, ich hab was anderes versucht.

Ich habe alle FP rausgezogen, eine der leeren FP aus Slot 4 in Slot 1 gelegt und gestartet. Jetzt meldet das NAS einen Fehler in der Konfiguration und man kann das alte Volume und damit den Storage Space löschen.

Nun schiebt man alle FP wieder in die Slots und legt einen Storage Pool nach Anleitung mit entsprechendem RAID-Level an. Dann wird das initialisiert und dauert lange. Wir reden von Stunden.

Derzeit bin ich in der Initialisierungsphase, theoretisch legt man danach im Storage Pool ein neues Volume an und spielt die Daten zurück. Außerdem müssen alle Anwendungen neu intstalliert werden.

Praktisch werde ich das als Update hier einfügen, ob noch etwas zu beachten ist.

Update 1: RAID anlegen und synchronisieren: 15 Stunden

Update 2: Volumen anlegen und initialisieren: 40 Minuten

Update 3: Daten zurückspielen: 15 Stunden

Bluray unter Linux

Manche Dinge sind unter Linux deutlich schwieriger als bei anderen Betriebssystemen (vieles ist auch deutlich einfacher). Dafür sind die Lösungen fast immer vorhanden und oft auch gut dokumentiert, bisher habe ich kaum unlösbare Probleme gefunden.

Derzeit beschäftige ich mich mit Bluray-Wiedergabe unter Linux, leider gibt es auch bei Blurays noch Regionalcodes (vom Teufel) und Verschlüsselung (vom Teufel), alles, was es einem nicht sofort leicht macht.

Erste Erkenntnis von vorgestern:

Der Rechner braucht ein Bluray-Laufwerk!

Ist bestellt…

Kritik: FPS – First Person Shooter

FPS – First Person Shooter ist ein Film, bei dem der Protagonist, der hautpsächlich aus der Ich-Perspektive gezeigt (oder auch nicht) wird, wie in einem Ego-Shooter seine schwangere Freundin in einem Zombie-verseuchten Haus sucht. OK, originell geht anders, aber ich finde den Versuch interessant, diese Perspektive zu zeigen und das Genre auch mal filmisch auszuarbeiten.

Zuerst zum Guten: filmisch ist das Ganze extrem gut gelungen. die Kamera ist superb, der Ton ist Klasse, die Zombies sind angemessen. Der Film schafft es, die ganze Zeit ein Computerspiel nachzuahmen, es dabei in die Realität zu erweitern, ohne albern oder übertrieben zu wirken. Die Zombiedichte ist unangemessen niedrig, aber das schiebe ich mal auf das Budget.

Aber dann spricht unser Held. Und spricht. Und spricht. Und erzählt dabei eine gequirlte Scheiße, dass es mich jedesmal aus dem Film riss. Schon erstaunlich, immer, wenn er ruhig war – perfekt. Kaum sagt er was – schlimm. (Ich hab die deutsche Fassung geguckt, keine Ahnung, ob das Englisch besser ist.)

Ich vermute mal, was er von sich gibt ist das, was die Macher beim Spielen denken oder was sie denken, was die Mehrheit der Spieler denkt. Wenn das so ist, dann sind Ego-Shooter-Spieler doch primitiver als ich dachte. Mir gehen beim Spielen jedenfalls nicht solche Sätze durch den Kopf.

Daher: wenn man die Sprüche des Helden abkann ist der Film klasse. Wenn nicht – Pech gehabt.

Fazit: Klasse Film, der durch den Text kaputtgemacht wird.

Netzneutralität tötet, Befürworter sind Taliban-artig

Wie kommen Politiker eigentlich darauf, dass die Politikverdrosseneit mit der Presse, den Jugendlichen, Desinteresse etc. zu tun hat, aber nie und nimmer nicht mit ihnen selbst, wenn sie ganz offensichtlich Lobbypolitik betreiben und jeden beschimpfen und beleidigen, der sich für Politik interessiert und evtl. anderer Meinung ist als sie.

Abgesehen davon, dass Günther Oettinger als EU-Abgeordneter eine Provokation ist, ist sein Posten als EU-Kommissar für Digitalwirtschaft eine Ohrfeige für alle, die der EU mehr zutrauen, als lobbygesteuerte Politik zu betreiben. Für alle anderen ist es die Bestätigung, dass die Politik gekauft ist.

Was die Netzneutralität betrifft, da haben wir gerade in Deutschland Talbian-artige Entwicklungen.

[…]

Aber Verkehrssicherheit, ein kommerzieller Dienst, Gesundheit, ein kommerzieller Dienst und ein paar andere fallen mir ein, sollten von der Netzneutralität, von diesem Taliban-ähnlichen Thema abweichen dürfen.

Ergo: Befürworter der Netzneutralität sind mit Terroristen gleichzusetzen!

Apropos: wo habe ich eigentlich in den Holzmedien oder dem Fernsehen von dieser Entgleisung gehört? Oder mal Nachfragen diesbezüglich?

(Quelle: netzpolitik.org)

Git

Git is like Formula-1 sports car – it accellerates very fast, it brakes very good. In hands of a professional it’s really awesome tool. But for beginner to intermediate user it’s total overkill and out there there are 95% of such users.

SVN is like normal city car – it has normal engine, normal brakes and normal suspension and hence fits 95% of use cases. Any professional on this car will easily beat beginner on Formula-1 simply because he/she knows that in most cases power is not what matters.

So, 90% of arguments for Git over SVN looked like advocating Formula-1 car in small city over normal city car just because it’s so damn fast 🙂

mal eine eigene Übersetzung (erstaunlich mühselig):

Git ist ein Formel-1-Auto: es beschleunigt sehr schnell und bremst sehr schnell. In den Händen eines Profis ist es ein wirklich großartiges Werkzeug. Anfänger bis fortgeschrittene Anwender überfordert es jedoch, und damit 95 % der Anwender.

SVN ist ein Stadtauto: es hat einen Durchschnittsmotor, Durchschnittsbremsen, ein Durchschnittsgetriebe und ist damit für 95 % der Anwendungsfälle passend. Jeder Profi wird in diesem Auto einen Anfänger im Formel-1-Auto schlagen, weil er weiß, dass es in den meisten Fällen nicht auf Kraft ankommt.

90 % der Argumente für Git statt SVN sind wie Argumente für ein Formel-1-Auto in einer kleinen Stadt statt eines Stadtautos, weil das Formel-1-Auto so unglaublich schnell ist.

(yura als Kommentar auf steveko)

Schiedsrichterverwaltung (4) Datenbankdesign

Bevor wir zum Einrichten der Arbeitsumgebung kommen, ein paar inhaltliche Details.

In der Schiedsrichterverwaltung sollen die Daten aller Saisons aller Einsätze der Schiedsrichter verwaltet werden. Im Vordergrund steht erst einmal die Anzeige, dafür müssen grundsätzlich erst einmal die Daten erfasst werden. Die Verwaltung soll Teile der Daten und die Administration der Daten vor unbefugtem Zugriff schützen.

Folgende Daten fallen also an: Saisons, Ligen, Einsatzinformationen, Adressen, Schiedsrichter, Teams, Clubs, Kontaktdaten, Nutzer und die Änderungshistorie müssen verwaltet werden. Daraus ein DB-Schema zu erstellen, ist nicht schwierig, die Normalformen, die Vermeidung redundanter Daten und möglichst hohe Flexibilität machen das Ganze unübersichtlich.

Als zugrundeliegende DB-Engine bieten sich XML und MySQL an, einfach aus pragmatischen Gründen. MySQL ist bei meinem (eigentlich bei jedem) Hoster vorinstalliert und kann genutzt werden, XML ist von Hand editierbar und per PHP gut anzusprechen.

Ich habe mit dem XML-Schema begonnen (als DTD), ziemlich schnell aber wegen der Menge der Daten und ihren Beziehungen untereinander aufgegeben. Da modelliere ich lieber mit einem Werkzeug und setze auf eine Datenbank auf, nutze ein vorhandenes Framework und spare mir so viel Arbeit. XML ist zwar reizvoll, wird in der Praxis bei mir aber nur für kleine, überschaubare Datenmengen eingesetzt.

Als Modellierungswerkzeug nehme ich die MySQL Workbench, plattformübergreifend, einfach einzusetzen, übersichtlich und auf MySQL zugeschnitten.

Die derzeitige Datenbankstruktur sieht wie folgt aus (Klick zum Vergrößern):

Wer die aktuellste Version ansehen möchte oder die Workbench-Datei oder ein PDF bevorzugt, wird im git-Repository unter “database” fündig.

Zur Benennung: die Tabellen erhalten alle das Präfix “rfrmgr_”, so dass ich die Tabellen parallel zu anderen DB-Tabellen nutzen kann, ohne Namenskollisionen zu befürchten. Das ist wichtig, wenn nur eine DB zur Verfügung steht oder mein Plan verwirklicht wird, das irgendwie mit WordPress zu koppeln (was mit der Nutzerverwaltung haklig werden kann).

Die Tabellen selbst folgen den Namenskonventionen von CakePHP, keine Überraschung an dieser Stelle. Wichtig ist, auch die Fremdschlüssel den Konventionen entsprechend zu benennen, da Cake so die Beziehungen automatisch findet. Die Beziehungen zwischen den Tabellen, die ich modelliert habe, nutzt Cake nicht, diese sind zum Verständnis meinerseits gedacht.

Die zu erhebenden Daten, die Beziehungen etc. sind ein erster Aufschlag, der sich dann in der Praxis bewähren muss. Auch ein Test, wie schnell Änderungen an der DB durch das Framework eingebunden werden können. Insbesondere die Adressdatenverwaltung sieht mir noch so aus, als wenn sich da was ändern könnte. Aber ganz Rapid-Prototyping-artig will ich erst mal Ergebnisse sehen und dann verfeinern.

Das war’s zur Datenbank, in Bälde wird die Arbeitsumgebung eingerichtet (und dann noch einmal).

Schiedsrichterverwaltung (3) Framework again (Ruby vs. Cake)

Lesson learned: nach der Entscheidung nicht jemanden fragen, der sich auskennt.

Der wird nämlich Ruby on Rails empfehlen, als schnelle und zusätzlich übersichtliche Alternative. Also liest man sich ein, schaut Trainingsvideos und macht sogar den Rails For Zombies-Kurs mit und wird langsam davon überzeugt, dass das eine feine Sache ist.

Leider ist es so, dass Ruby und damit Ruby on Rails eine Skriptsprache ist, die nicht jeder Hoster auf seinen Servern anbietet, so auch meiner nicht.

Also zurück zu Cake… (auch nicht schlecht).