Boehrsi.de - Blog

Linux Shell Workflow optimieren

Erstellt am event Uhr von account_circle Boehrsi in label Hardware & Software
Linux Shell Workflow optimieren Bild

Ich arbeite öfters unter Linux (konkret Ubuntu) und dort nutzt man natürlich umfangreich die Shell. Dementsprechend haben die meisten wohl bereits einen Workflow gefunden und ähnlich ging es auch mir. Doch da man nie auslernt habe ich mir gedacht ich könnte meinen etwas optimieren. Dabei konnte mir ein erfahrener Kollege auf der Arbeit helfen, danke dafür an Michael open_in_new. Dadurch konnte ich ein paar neue und extrem hilfreiche Dinge zur Optimierung meiner Shell einbauen. Konkret geht es um das Durchsuchen der Historie, aber nachdem man bereits einen Teil des Befehls eingegeben hat. Somit schränkt man die Suche durch die in der Vergangenheit eingegebenen Befehle ein und kann so extrem schnell konkrete Befehle erneut ausführen. Ein weiterer Punkt ist die Groß-/Kleinschreibung und die dortige Erkennung der Autovervollständigung. Hier kann man einstellen das beides erkannt wird, was ebenfalls in diversen Situationen hilfreich sein kann. Wie ihr diese Dinge umsetzen könnt findet ihr im unteren Teil der News.

Ransomware - Viren der heutigen Zeit

Erstellt am event Uhr von account_circle Boehrsi in label Development
Ransomware - Viren der heutigen Zeit Bild

Niemand mag Viren und doch kennen wir sie alle: Trojaner, Scareware, Root Kits und was es nicht noch alles gibt. Doch in den letzten Jahren macht sich eine Art der Viren auf den Weg allen anderen den Rang abzulaufen. Es handelt sich um Ransomware, also unerwünschte Software die euren Computer befällt und Daten mittels guten kryptografischen Funktionen verschlüsselt. Ihr erhaltet eure Daten meistens durch Zahlung einer Summe X, häufig im niedrigen hunderter Bereich, zurück und könnt sie wieder nutzen. Die meisten schalten nach der Zahlung die Daten wirklich wieder frei, denn so motivieren sie andere Betroffene natürlich auch die Zahlung durchzuführen. Man merkt hier es geht nicht mehr um das Zerstören von Daten oder das eigentliche stören von Systemen, ähnlich wie bei DDos Attacken mit einer verbundenen Erpressung geht es hier nur ums Geld. Der Virenmarkt kommerzialisiert sich immer mehr und quasi jeder von uns kennt jemanden oder war sogar schon einmal betroffen, wenn es um das Thema Ransomware geht. Die Verbreitungswege sind vielfältig, wie es schon immer der Fall bei Viren war. Doch mit immer mehr Dingen die man im Internet tut, wird auch die Gefahr größer und dies nicht nur für den PC oder Laptop, auch Smartphones sind betroffen. Nebenbei sind auch Mac und Linux in diesem Bereich keine Ausnahme mehr, auch wenn die Zahl der Angriffe und Zahl der Betroffenen natürlich massiv niedriger ist. Selbiges gilt aber halt auch für die absolute Zahl der privaten Nutzer. Doch was soll man tun? Grundsätzlich gelten die normalen Tipps, die man bezüglich allen Viren gibt.

diffoscope - Unterschiede in Dateien finden

Erstellt am event Uhr von account_circle Boehrsi in label Hardware & Software
diffoscope - Unterschiede in Dateien finden Bild

Unterschiede in Dateien zu finden ist häufig interessant. Denn manchmal hat man Konfigurationen auf seinem Server geändert oder ein Paket unter Ubuntu wurde aktualisiert und man möchte wissen was sich getan hat. Wer also wie ich einen Linux Server betreibt, wird sich vielleicht schon öfters eine einfache Möglichkeit für gute Datei- oder sogar Verzeichnisvergleiche gewünscht haben. Mit diffoscope, auf welches ich auf der Arbeit hingewiesen wurde, ist dies möglich. Dateien, Verzeichnisse und sogar Archive können verglichen werden. Weiter geht es mit PDFs, verschiedenen Bildtypen und auch Sqlite Datenbanken. Es gibt vieles was nicht direkt möglich ist, aber dafür wird ein Fallback auf Hexdump Vergleiche angeboten. Ihr könnt das Tool über verschiedene Wege beziehen, was natürlich auch das Laden via Paketverwaltung beinhaltet. Zum Testen gibt es auch eine Online-Version, welche in den Related Links verlinkt ist. Zur Bedienung nutzt ihr eure Shell und ihr erhaltet Text oder HTML Output.

Related Links

Windows 10 bekommt Linux Shell

Erstellt am event Uhr von account_circle Boehrsi in label Hardware & Software
Windows 10 bekommt Linux Shell Bild

Die Überschrift klingt für die einen irrelevant und die anderen denken sich, schön und gut aber das haben wir doch schon durch diverse Tools. Aber eben nicht nativ, direkt im System und mit Unterstützung für z.B. apt-get. Denn Microsoft arbeitet mit Canonical zusammen, die ihres Zeichen hinter Ubuntu stehen, um ein Ubuntu für Windows zu schaffen. Soll heißen native Shell Befehle und auch die native Nutzung von diversen Paketen. Wie genau das aussieht wird sich in der nächsten Zeit dann zeigen. Im Sommer soll im Rahmen des Anniversary Updates diese Änderung Einzug erhalten. Die aktuellen Informationen wurden während Microsofts Build Konferenz open_in_new veröffentlicht. In den Related Links findet ihr mehr Informationen. Das Anniversary Update wird noch weitere Dinge bieten, über welche ich vermutlich in den folgenden Tagen noch ein paar Worte verlieren werde. Alternativ könnt ihr auf der verlinkten Build Homepage diverse weitere Informationen bekommen.

Related Links

Vulkan API ist fertig

Erstellt am event Uhr von account_circle Boehrsi in label Development
Vulkan API ist fertig Bild

Vulkan ist eine plattformübergreifende 3D-Schnittstelle. Im Gegensatz zu Microsofts DirectX open_in_new und Apples Metal open_in_new ist die von der Khronos Group entwickelte API auf diversen Systemen nutzbar. Windows ab Version 7, Linux und auch die neuste Android Iteration kann aktuell mit Vulkan genutzt werden. Dabei stellen sowohl AMD, wie auch NVIDIA und Intel erste Treiber bereit. Diese sind zwar zum Teil noch nicht fertig, befinden sich also noch im Alpha oder Beta Stadium, trotz dessen hoffe ich auf eine rasche Verbreitung von Vulkan. Denn eine allgemein nutzbare und unterstütze Lösung für Low-Level Programmierung im Grafikbereich, ist meiner Meinung nach geschlossenen Systemen fast immer vorzuziehen. Vulkan basiert zum Teil auf AMDs Mantle Schnittstelle, wurde aber stark weiterentwickelt. Es wird vermutet das Vulkan die Nachfolge von OpenGL antreten wird. Bezüglich Leistungssteigerungen und ähnlichem muss abgewartet werden, bis die Treiber die neue API komplett unterstützten und bis die Spiele entsprechend optimiert sind. Weitere Informationen gibt es wie gewohnt in den Related Links.

Related Links

Let's Encrypt - Mein erstes Fazit

Erstellt am event Uhr von account_circle Boehrsi in label Boehrsi
Let's Encrypt - Mein erstes Fazit Bild

Über Let’s Encrypt wollte ich eigentlich viel mehr schreiben, denn ich bin begeistert von dem Projekt. Doch alles lief so einfach und unkompliziert, dass ich es schlicht und einfach vergessen habe. Unabhängig davon wollte ich aber ohnehin bis zur ersten automatischen Verlängerung des Zertifikats warten, bevor ich ein erstes Fazit ziehe. Selbige Verlängerung wurde vor zwei Tagen durchgeführt und damit bin ich nun an einem Punkt, an welchem ich für mich sagen kann: Let’s Encrypt ist großartig. Kostenlose, aber sichere und vertrauenswürdige SSL Zertifikate. Eine automatische Verlängerung dieser und Unterstützung durch nicht direkt zum Projekt gehörende Plattformen und Entwicklergruppen. Gerade letzteres war für mich sehr wichtig, da ich auf meinem Server ein recht umfangreiches Administrations-Tool (Plesk) einsetze und etwas skeptisch war ob alles mit Let’s Encrypt funktioniert. Doch es gibt direkt von den Plesk Entwicklern ein Plugin open_in_new, welches genutzt werden kann und mit wenigen Klicks funktioniert. Inklusive der genannten automatischen Verlängerung der Zertifikate. Kein zusätzlicher Aufwand, dafür aber zusätzlich Sicherheit. Falls ihr nativ auf Let’s Encrypt zugreifen wollt gibt es ein Installations-Script, welches auf verschiedenen Ebenen ansetzen kann (von vollautomatisch, bis hin zum reinen Erstellen von einzelnen Zertifikatsdateien, welche dann manuell kopiert werden können). Ich bin alles in allem sehr zufrieden und habe eigentlich nichts negatives zu berichten, lediglich beim ersten ausführen des Plesk Scripts gab es ein Problem, welches ich aber durch erneutes anmelden in der Oberfläche beheben konnte.

Related Links

GitList - Eigene remote Repositories im Browser betrachten

Erstellt am event Uhr von account_circle Boehrsi in label Development
GitList - Eigene remote Repositories im Browser betrachten Bild

Wer einen Server hat und auf diesem ein GIT betreibt, der hat mit GitList die Möglichkeit über den Browser diverse Inhalte ansehen zu können. Ich rede dabei nicht von aufwendiger Verwaltung, sondern von einem reinen Viewer. Ich wollte genau dies, um auch online die Commits und Branches einsehen zu können. Ich arbeite zwar alleine an meinem Code, doch selbst dafür ist diese Funktion praktisch. Einzige Anforderung die ich hatte war ein geringer Konfigurationsaufwand und vor allem wenige Abhängigkeiten. Denn ich habe ein relativ komplexes Setup auf meinem Server und möchte dies nicht durch eher unwichtige Dinge negativ beeinflussen. Hier ist GitList sehr praktisch, denn es ist ein reines PHP basiertes Interface, mit wenigen Einstellungen über eine Config in Form einer .ini Datei. Anschließend fehlt nur noch der Upload und die entsprechenden Rechte müssen gesetzt sein. Dabei sollte der Web-User auf den Root-Ordner der Repositories zugreifen dürfen und auch PHP muss die Ausführung dort erlaubt werden (open_basedir open_in_new). Auf der GitList Homepage gibt es ein paar weitere Tipps bei Problemen open_in_new, diese werden z.B. über Änderungen an der htaccess File open_in_new behoben. Bei mir läuft alles gut, abgesehen vom Graphen der für die Commits erstellt wird. Dieser funktioniert bei mir nur für den Master Branch korrekt und ich hoffe dort gibt es noch einen Fix. Allgemein läuft aber alles gut und ich kann einen Test damit nur empfehlen.

Related Links

ShellCheck - Fehler in Shell Scripten erkennen und beheben

Erstellt am event Uhr von account_circle Boehrsi in label Development
ShellCheck - Fehler in Shell Scripten erkennen und beheben Bild

Linux hat auf für mich als Windowsnutzer einen Vorteil, eine gute Scripting Umgebung und das seit langer Zeit. Die Shell ist mächtig, die Syntax brauchbar und man kann quasi alles automatisieren was man möchte. Doch nur weil man ein Script schreibt und dieses vielleicht auch funktioniert, heißt dies nicht das es sicher oder fehlerfrei ist. Deswegen empfehlen sich Tools zum überprüfen des Codes, doch dies vernachlässige ich zumindest oft bei Shell-Scripten. Denn ich schreibe sie häufig direkt in nano open_in_new oder aber in Notepad++ open_in_new, wenn ich von einem Windows System aus Remote arbeite. Doch da kam mir ein guter Tipp eines Arbeitskollegen zu Hilfe, denn dieser empfahl mir ShellCheck. Ein simples online Tool, welches übersichtlich und schnell Fehler aufzeigt und bei Bedarf auch lokal installiert werden kann. Dabei wird nicht nur auf Fehler hingewiesen, auch Verbesserungsvorschläge werden gegeben. Ich habe basierend darauf einiges optimiert und kann nur sagen es funktioniert super. Allerdings sollte man alle “automatischen” Tools mit Vorsicht genießen und ihnen nicht komplett blind vertrauen. Im Zweifel lieber einmal zu viel testen und sich schlau machen, als einmal zu wenig.

Related Links

GIT Server Verwaltung mit Gitolite

Erstellt am event Uhr von account_circle Boehrsi in label Development
GIT Server Verwaltung mit Gitolite Bild

In meinem ersten GIT Beitrag beschrieb ich mein Setup, um GIT auf meinem Server für die Entwicklung von Android Apps nutzen zu können. In diesem Zuge wurde ich auf zwei weitere Lösungen hingewiesen. Zum einen auf GitLab, welches eine umfangreiche Software ist. Sie bietet ein komfortables Web-Interface, Verwaltungsmöglichkeiten und gemeinsames Arbeiten, es geht hier also um ein quasi selbst gehostetes kleines GitHub. Und zum anderen empfahl man mir als kleinere Lösung für die reine Verwaltung von Repositories Gitolite. GitLab sieht extrem interessant und umfangreich aus, ist für meinen Zweck aber zu komplex. Denn ich arbeite quasi nur alleine an meinen Projekten und sobald ich sie doch öffentlich zugänglich mache, landen sie bei GitHub. Zusätzlich bedarf GitLab des einen oder anderen Pakets und diverser Einstellungen, welche vermutlich nicht direkt mit meiner Server Konfiguration funktionieren würden. Gitolite hingegen könnte noch interessant werden und ich werde es vielleicht in der Zukunft testen. Es ermöglicht schnell und einfach, wiederum über ein Git Repository, die Verwaltung von Nutzern und Repositories. Ihr müsst euch um nichts weiter kümmern, als die Nutzer und Repositories in die Config-Dateien einzutragen und schon geht es los. Auch wenn ich nur einen Nutzer habe, so ist die Erstellung neuer Repos vielleicht bald interessant, falls ich mehrere kleine Projekte starte. Die Installation von Gitolite ist dabei relativ simpel und wird im entsprechenden GitHub Projekt open_in_new sehr gut auf englisch beschrieben. Ich ziere mich aktuell noch einen Test durchzuführen, da ich bereits mehrere Repositories aktiv nutze und diese funktionierende Infrastruktur nicht beschädigen möchte. Falls ihr Erfahrungen mit Gitolite habt, meldet euch mal in den Kommentaren und erzählt wie ihr damit klar kommt und wie ihr es nutzt.

Related Links

Eigenen remote GIT Server nutzen

Erstellt am event Uhr von account_circle Boehrsi in label Development
Eigenen remote GIT Server nutzen Bild

Android Apps zu entwickeln bedarf meiner Meinung nach nicht nur das eigentliche Wissen rund um die Programmierung. Zusätzlich sollte man sich auch mit der Entwicklungsumgebung, Versionsverwaltungen und verschiedenen weiteren Themen auseinandersetzen. Denn ansonsten gibt es sobald man mit mehreren Leuten oder alleine an größeren Projekten arbeitet Probleme. Deswegen gibt es viele Dinge die einem das Leben erleichtern, auch wenn sie vielleicht zu Beginn etwas Arbeit bedürfen. Dazu gehört meiner Meinung nach auch eine gute Versionsverwaltung. In diesem Bereich setzte ich bis dato auf SVN, da mir GIT gelinde gesagt in diversen Bereichen zu kompliziert war. Durch die Arbeit habe ich nun einen wesentlich besseren Zugang zu GIT, auch wenn ich bei weitem noch nicht alles entsprechend beherrsche und lieber auf meine Notizen zurückgreife, als alles aus dem Kopf und dafür vielleicht falsch zu machen. Diesen tieferen Einblick in GIT und meinen geplanten Wechsel zu Android Studio habe ich mir heute Nachmittag zum Anlass genommen und meine drei Android Apps (zwei bereits im Store und eine ist noch in der Konzeptionsphase) auf Android Studio und GIT migriert. Falls auch euch GIT in diesem Bereich interessiert, schaut euch mein kleines How To im unteren Bereich der News an.

Related Links
navigate_before Vorherige format_list_numbered  Seite 4 Nächste navigate_next