LPIC-2 Zertifizierung

In diesem Beitrag möchte ich gerne auf die LPIC-Prüfungen eingehen und meine Erfahrungen hierzu weiter geben. 

An sich würde ich von meiner Seite sagen, dass die Prüfungen schon ein hohes Maß an Wissen voraussetzt und man sich gut auf die Prüfungen vorbereiten muss, da man gerade in dem Bereich keine vorbereiteten Prüfungsfragen bekommt, die man einfach auswendig lernen kann, wie es oft bei anderen Prüfungen möglich ist.

Natürlich ist es auch an dieser Stelle möglich Prüfungsfragen als „Braindumps“ zu kaufen und diese auswendig zu lernen. Hiervon würde ich allerdings abraten, da dies keinen weiter bringt. Wenn man am Ende die Prüfung nur geschafft hast, weil die Fragen und Antworten auswendig gelernt wurden aber die Inhalte nicht verstanden wurden, bringt es niemanden weiter. Natürlich sieht es am Ende ggf. schön aus aber Firmen, die jemanden mit der Qualifikation einstellen erwarten natürlich auch etwas.

Übersicht

Die LPIC-Prüfungen 1 und 2 Prüfungen bestehen aus 60 Fragen, die in 90 Minuten beantwortet werden müssen. Dabei sind die Bereiche mit „Gewichtungen“ versehen, wo richtigen Antworten mehr Punkte bringen, als andere Bereiche. 

Die Fragen bestehen zum Teil aus Multiple-Choice aber auch aus Fragen, wo ein Textfeld frei ausgefüllt werden muss. Für LPIC-1 und 2 müssen jeweils 2 Prüfungen bestanden werden, damit die Prüfung bestanden und das Zertifikat ausgestellt wird. Nach einigen Tagen werden alle Unterlagen und das Zertifikat per Post zugeschickt. 

Ab LPIC-3 bestehen die Prüfungen aus 100 Fragen und 120 Minuten Prüfungszeit. Hier muss dann aber auch nur noch eine Prüfung für die Zertifizierung bestanden werden, was schwer genug ist sein dürfte, da die Themenfelder in allen Bereichen recht umfangreich sind. 

Vorbereitung

Nun ist die Frage, wie man sich am Besten auf die Prüfung vorbereiten kann. Es gibt verschiedene Bücher und Seiten, die ich für die Vorbereitung genutzt werden können. 

LPIC-2: Linux Professional Institute

Das Buch kann ich wirklich empfehlen, da es eine wirklich detaillierte Erklärung aller Befehle und Parameter enthält. Das Buch wird auch vom LPIC, auf der Website, empfohlen. 

A Cloud Guru LPIC-2 Kurs

A Cloud Guru ist eine Online-Plattform, die Kurse hauptsächlich für Zertifizierungen anbietet. Es gibt einen guten LPIC-2 Kurs, der die Inhalte recht schnell, anhand von praktischen Beispielen, in Videos vermittelt. 

Zudem gibt es eine IPad-App von SYBEX, welche für die Prüfungsvorbereitung genutzt werden kann, allerdings sind die Fragen recht tief in der Materie und haben am Ende mit den richtigen Prüfungsfragen nicht mehr ganz so viel zu tun.

Die Prüfung

Natürlich möchte ich an dieser Stelle nicht zu viel vorweg nehmen aber die Fragen bestehen meist aus Multi-Choice Fragen, Wörter / Befehlen, die in Lücken eingesetzt werden müssen oder Abläufe, die anhand von vorgegeben Texten sortiert werden müssen. 

Wichtig ist, dass man so viele Parameter, wie möglich, auswendig lernt, da es sein kann, dass man in den Antworten verschiedene Varianten eines Befehls gezeigt bekommt und man den korrekt identifizieren muss. Dabei können sich die Antworten mit Parametern nur leicht unterscheiden, was es teilweise ein wenig schwierig macht. Wenn man sich nicht sicher ist sollte man am Besten die unwahrscheinlichen Möglichkeiten zuerst ausschließen und dann schauen, was übrig bleibt. 

Die Prüfungen sind schon gut und Umfangreich und man sollte sich gut darauf vorbereiten. 

Bei Fragen stehe ich natürlich gern zur Verfügung.

Sophos UTM9 crash dumps füllen Festplatte

In seltenen Fällen kann es passieren, dass die Festplatte der UTM voll läuft. Dies wird dadurch verursacht, dass abstürzende Dienste einen „crash dump“ erzeugen, welcher auf der System Partition abgelegt wird. Um dies zu kontrollieren kann man sich per SSH auf der UTM einloggen. Der SSH-Login muss zuerst unter „Verwaltung -> Systemeinstellungen -> Shell-Zugriff“ freigeschaltet werden.

Nach dem Login auf der UTM kann man in den Ordner

cd /var/storage/cores/

wechseln. Dieser Ordner enthält alle Dumps, die das System angelegt hat. Die Dumps sind hauptsächlich für den Support gedacht. Sollte es wirklich so sein, dass die Festplatte fast voll ist können auch größere und Ältere Dumps einfach gelöscht werden.

Diese Änderungen und Löschaktionen sollten nur von Leuten durchgeführt werden, die sich mit Linux auskennen und wirklich wissen was sie tun. 

CSSD Crash

Dieser Beitrag resultiert daraus, dass ich ein Problem mit dem CSSD Dienst hatte. Anscheinend war es so, dass sich die Antiviren-Pattern nicht mehr korrekt geupdatet haben und dadurch der Dienst abgestürzt ist.

Nach einem Beitrag im Forum war ein manuelles Update die Lösung.

audld.plx --nosys --types=savi --nopatchup2date

Mit dem obigen Befehl lässt sich das Update manuell durchführen. Das Update sollte an dieser Stelle einwandfrei durchlaufen.

Sophos Forum CSSD Crash

einige Fehler werden auch nach Meldung durch Sophos recht schnell wieder behoben. Sollte das manuelle Update nicht funktionieren gibt es die Möglichkeit die Scan-Engine zu wechseln. Die Engine kann unter „Verwaltung -> Systemeinstellungen -> Scan-Einstellungen“ von Sophos auf Avira zum testen gewechselt werden. Danach sollte man erstmal im Auge behalten, ob die Dumps weiterhin auftreten und man weiterhin Probleme hat.

Linux Man-Page in PDF umwandeln

Falls ihr auch mal wieder das Problem habt, dass ihr in Ruhe eine Man-Page auf eurem Kindle oder anderem E-Book-Reader lesen wollt, gibt es eine einfache Möglichkeit. Man kann mit dem Tool ps2pdf die Man-Page einfach in eine PDF umwandeln.

man -t curl | ps2pdf - curl.pdf

Der Befehlt ps2pdf ist im Normalfall schon auf einem Linux-System installiert und kann verwendet werden. Sollte dieser nicht zu finden sein, kann er mit apt oder einem anderen Paketmanager gesucht und installiert werden.

Dies kann sehr hilfreich sein, wenn die Man-Page man wieder ein bisschen länger ist und man hierfür doch ein wenig mehr Zeit benötigt.

Eine andere Möglichkeit ist hier natürlich, mit dem internen Text-Browser im Kindle die Man-Page über Google zu suchen und aufzurufen. Ich finde dies aber teilweise recht anstrengend und schlecht lesbar.

Warum Unit-Tests in der Programmierung?

Ja die Frage warum man Unit-Tests verwenden sollte ist recht spannend, da es viele Gründe dafür aber auch einige wenige Gründe dagegen gibt. Aber fangen wir erstmal von vorne an:

Was ist ein Unit-Test?

Mit einem Unit-Test kann man kleinere Bereiche (Funktionen) eines Programms automatisiert testen. Dies hat den Vorteil, dass man so sicherstellen kann, dass immer das erwartete Ergebnis, bei der getesteten Funktion, zurück kommt.

Aber warum sollte man dies tun? Ganz einfach man muss nicht jedes Mal alle Funktionen neu testen und das Ergebnis händisch überprüfen. Wenn ein Unit-Test korrekt implementiert ist kann man davon ausgehen, dass hier der erwünschte Wert, geschweige denn das erwünschte Verhalten aus einer Funktion zurück gegeben wird.

Tools

Damit man Unit-Tests durchführen kann braucht man ein Tool, welches diese ausführt. Hier gibt es in jeder Programmiersprache verschieden Tools. Unter PHP ist dies PHPUnit und unter Java zum Beispiel JUnit. Auch für Javascript es hier Tools wie Jasmine, QUnit und so weiter.

Es gibt hier auch noch verschiedene Arten von Tests. Manchmal ist es sinnvoll nicht kleinere Units zu testen, sondern die Abläufe einer Software. Am Beispiel eines Shops wäre dies, dass man beispielsweise eine Bestellung ausführt. Hierzu muss man den Prozess durchlaufen und alle benötigten Felder füllen. Hierfür bietet sich eine Kombination aus Selenium und einem Unit-Test Tool an. Meist gibt es hier auch schon Schnittstellen um beides miteinander zu verbinden.

Bestehende Projekte/Code testen?

Wenn man so an das Agenturleben denkt kommt es hier ja eher vor, dass man bestehende Projekte hat, die gewachsen sind und teilweise noch prozedural programmiert sind. Diese lassen sich in der Regel schlecht testen, da es hier keine kleineren Teile (Units) gibt, die man auch gut testen kann. Sollte das Projekt Klassen und Funktionen verwenden, kann man eines der Tools von oben wählen.

Manchmal ist es hier auch sinnvoll nachträglich verschiedene Teile in Klassen und Funktionen auszulagern, um diese testen zu können und die Strukturen ein wenig aufzuräumen und zu verbessern.

Fazit

Unit-Tests können einem sehr das Leben erleichtern, da man bestehende Funktionen testen und absichern kann. Dies ist sehr hilfreich wenn man größere Teile eines Projektes umbauen muss. Nach den Umbauarbeiten kann man durch die Tests weiterhin sicherstellen, dass die Funktionen das korrekte Ergebnis liefern.

Ein weiterer Vorteil ist, dass man beim Schreiben der Unit-Tests tiefer über die Funktionen nachdenkt und teilweise weitere Fehler findet und diese direkt beheben kann.