Kategorie: Technik und Programmieren

Die Kategorie befasst sich mit technischen Themen und Aspekte von Computer- und IT-Systemen. Sie umfasst Tipps, Hacks, Tutorials und Erfahrungsberichte zu verschiedenen Technologien und Programmiersprachen, insbesondere im Bereich von Linux und freier Software. Ziel der Kategorie ist es, Nutzern die Möglichkeit zu geben, ihr technisches Verständnis und ihre Fähigkeiten im Bereich des Programmierens zu vertiefen und zu erweitern.

Linux: Was macht der »watch«-Befehl? – Mit Beispielen

    Mit dem Befehl watch kann man das Ergebnis eines anderen Befehls in regelmäßigen Abständen anzeigen lassen, ohne den Befehl immer wieder manuell ausführen zu müssen. Womit man den Fortschritt von Prozessen verfolgen kann, wie zum Beispiel das Verfolgen von Netzwerkstatistiken.

    Syntax

    watch [option] command

    Hierbei steht command für den Befehl, den man überwachen möchte.

    Einige häufig verwendete Optionen von watch sind:

    • -n <sek> oder --interval <sek>: Gibt die Anzahl der Sekunden an, die zwischen jeder Ausführung des überwachten Befehls liegen, default 2.
    • -d oder --differences: Hebt die Unterschiede zwischen der aktuellen und der vorherigen Ausgabe des Befehls hervor.
    • -c oder --color: Wird verwendet um die Ausgabe in Farbe darzustellen
    • -t oder --no-title: Unterdrückt die Anzeige des Titels in der Ausgabe.
    • -b oder --beep: Spielt einen Piepton ab, wenn sich die Ausgabe ändert.
    Continue reading

    Linux: Was sind und wie verwende ich »exit codes« in BASH? – Mit Beispielen

      »exit codes« oder »Exit-Codes« (auch »return codes«) sind numerische Werte, die von einem Programm oder Befehl an das Betriebssystem zurückgegeben werden, beim Beenden. Der Exit-Code sagt aus, ob das Programm oder der Befehl erfolgreich ausgeführt wurde oder nicht. Im Allgemeinen gibt ein Exit-Code von 0 an, dass das Programm erfolgreich beendet wurde, während jeder anderen numerischen Werte einen Fehler signalisiert. Exit-Codes haben in der Regel Werte zwischen 0 und 255 und können damit den Grund für einen Fehler identifizieren.

      Continue reading

      Linux: Was macht der »rm«-Befehl? – Mit Beispielen

        rm ein sehr leistungsfähiges Werkzeug, das einfach zu bedienen ist und viele Optionen bietet, um das Löschen von Dateien und Verzeichnissen zu steuern. Man kann rm auf einzelne Dateien, auf mehrere Dateien oder Ordner anwenden. Allerdings sollte man sich die Risiken bewusstmachen, denn der Befehl löscht Dateien unwiderruflich und es gibt keine Wiederherstellungsoption. Prüfe also sorgfältig, welche Dateien oder Verzeichnisse gelöscht werden sollen.

        Die Syntax

        rm [OPTION]... DATEI...
        Continue reading

        Was ist »Gherkin« und wie verwende ich »Gherkin«? – Mit Beispielen

          Gherkin ist eine auf natürlicher Sprache basierende Syntax, die verwendet wird, um Testfälle und Anforderungen in einer strukturierten, leicht verständlichen Form zu schreiben. Gherkin ist Teil des Cucumber-Framework, das im Jahr 2008 von Aslak Hellesøy entwickelt wurde und heute eines der führenden Tools für die Testautomatisierung ist.

          Gherkin wird oft in der agilen Softwareentwicklung eingesetzt, da es für die Zusammenarbeit zwischen Entwicklern, Testern und Kunden konzipiert ist. Durch die Syntax der Sprache können Anforderungen und Testfälle in einer einfachen und konsistenten Weise zu kommunizieren, ohne dass es zu Missverständnissen kommt, als Teil des BDD (Behavior Driven Development) Prozess.

          Continue reading

          »umleiten« von ‘www.’ zu non ‘www.’ in Nginx mit Beispielen

            Was sind »Umleitungen« ?

            Eine Umleitung (englisch, redirects) ist eine Methode, um den Client-Browser auf eine andere URL weiterzuleiten. Das kann notwendig werden, um z.B. veraltete URLs auf eine aktuellere Version weiterzuleiten, oder um den Datenverkehr auf eine bestimmte Domain zu leiten.

            Permanent Vs. Temporary

            Die beiden gängigsten Arten von Weiterleitungen sind die permanente Weiterleitung mit dem HTTP-Statuscode 301 und die temporäre Weiterleitung mit dem HTTP-Statuscode 302.

            Continue reading

            Was ist RSS?

              RSS (Really Simple Syndication) ist ein Dateiformat (basierend auf XML) für Web-Feeds, die Änderungen auf Websites wie News-Seiten, Blogs und Audio-/Video-Logs anzeigt. Die Bereitstellung von Daten im RSS-Format bezeichnet man auch als RSS-Feed (auch News/Feed-Channel) und sind plattformunabhängig. Ein typischer RSS-Feed liefert kurze Informationsblöcke in Form von Schlagzeilen mit Textanrissen und Links zur Originalquelle. Im Gegensatz zu HTML-Seiten enthalten RSS-Feeds keine Design- oder Layout-Elemente. Websites bieten meistens mehrere Feeds an, z.B. einen für Kommentare, Event, Kanal, Kategorien oder Tags.

              Continue reading

              Linux: Was macht der »ping«-Befehl? – Mit Beispielen

                Der ping-Befehl ist ein Netzwerkdiagnose-Tool, das hauptsächlich dazu verwendet wird, um Netzwerkprobleme zu identifizieren, die Verfügbarkeit und Reaktionszeit (meist wird die round trip time (RTT) angegeben) eines Zielrechners zu überprüfen und die Qualität der Netzwerkverbindung zu beurteilen. Dazu werden ICMP-Echo-Anfragen an einen Zielrechner gesendet und die Zeit gemessen, die es braucht, um eine Antwort zu erhalten. Es ist ein Standard-Diagnose-Tool in fast allen Betriebssystemen, darunter Linux, Windows und macOS.

                Continue reading

                Was ist TOR und wie komme ich damit ins Dark Web?

                  TOR (The Onion Router) ist ein freies Software-Projekt, das es Nutzern ermöglicht, sicher und anonym im Internet zu surfen. Wenn vom Dark Web gesprochen wird, ist in der Regel damit das TOR-Netzwerk sowie die .onion-Seiten und die darin gehosteten Inhalte, gemeint. Es wurde ursprünglich von der US-Regierung entwickelt, um Mitarbeitern außerhalb der USA eine sichere Möglichkeit zu geben, um auf Regierungsnetze zuzugreifen. Heute wird es von Millionen von Menschen auf der ganzen Welt genutzt, um ihre Privatsphäre im Internet zu schützen.

                  Continue reading

                  Strukturen des Internets: Was ist das Dark Web, das Deep Web und das Surface Web?

                    Das Dark, Deep und Surface Web (oder auch Net) sind Begriffe, die immer wieder in Verbindung mit dem Internet genannt werden. Doch was genau versteht man darunter und wie unterscheiden sie sich voneinander? Eine der gängigsten Metaphern, die verwendet wird, um die Unterschiede zwischen dem Surface Web und dem Deep Web zu beschreiben, ist die des Eisbergs. Dabei wird “das Internet” in Schichten unterteilt. Die sichtbaren Seiten, die man über eine Suchmaschine wie Google finden kann und der große Teil des “verborgen Internets”, der sich Deep und Dark Web bezeichnet wird.

                    Continue reading

                    Wie man Image und Video ‘Hotlinking’ in Nginx blockiert

                      Was ist ‘Hotlinking’ ?

                      Hotlinking ist das Einbetten von Inhalten (Bildes-, Videos-, Musik-Dateien) auf einer Website, die auf einer anderen Website gehostet wird, ohne es auf seinem eigenen Server zu speichern. Dadurch werden die Bandbreite und die Ressourcen des ursprünglichen Host-Servers genutzt, ohne dass der Benutzer dafür bezahlt.

                      Wann ‘Hotlinking’ blockiert werden sollte?

                      Hotlinking kann in einigen Fällen erwünscht sein, wenn es darum geht, Ressourcen zu teilen oder zu verlinken, um Informationen zu vermitteln oder zu verdeutlichen. Einige Beispiele für erwünschtes Hotlinking sind:

                      Continue reading

                      Softwareentwicklung: Was ist ein ‘Microservice’?

                        Ein Microservice ist ein Ansatz der Softwarearchitektur, bei der die Anwendung in kleine, unabhängige Dienste aufgeteilt wird, die jeweils eine spezifische Aufgabe erfüllen. Jeder Microservice ist in sich abgeschlossen und kann unabhängig von anderen Microservices entwickelt, bereitgestellt und verwaltet werden. Dies ermöglicht eine flexiblere und skalierbare Anwendung, Anwendungsentwicklung und -verwaltung, da Änderungen an einzelnen Microservices nicht die gesamte Anwendung beeinträchtigen.

                        Begriffsdefinition

                        Eine Microservice Architektur besteht aus kleinen, unabhängigen Diensten, die als Microservices bezeichnet werden. Diese Microservices werden in Containern verpackt, die sicherstellen, dass die Einheit während des gesamten Entwicklungsprozesses konsistent bleibt, einschließlich des Tests.

                        Continue reading

                        Softwareentwicklung: Was ist ein ‘Monolith’?

                          Begriffsdefinition

                          Ein Monolith ist eine Art der Softwarearchitektur (man sagt auch Monolithische Architektur), bei der alle Komponenten einer Anwendung in einem einzigen, großen und komplexen Codeblock zusammengefasst sind. Im Gegensatz zur Microservices-Architektur, bei der eine Anwendung aus vielen kleinen, unabhängigen Diensten besteht, die miteinander kommunizieren und spezifische Aufgaben erfüllen, ist die Monolithische Architektur in der Regel weniger flexibel und skalierbar. Ein Monolith hat in der Regel eine höhere Kopplung und ist schwieriger zu testen und zu warten als eine Microservices-Architektur.

                          Wann ist es sinnvoll, auf einen Monolith zu setzten?

                          Continue reading

                          Wie man ‘User-Agents’ in Nginx blockiert

                            Was sind ‘User-Agents’?

                            User-Agents werden von Webservern verwendet, um Informationen über die Anfrage zu erhalten und die Antwort entsprechend anzupassen. Webbrowser verwenden das HTTP-Protokoll, welches unter anderem im RFC 2616 (Request for Comment) definiert ist, um Webseiten abzurufen. Der RFC beschreibt mitunter einen Header namens “User-Agent”, der den Namen und die Version des Browsers an den Webserver überträgt. Der Header ist optional, aber empfohlen und wird von den meisten Webbrowsern und anderer (Client-)Software verwendet. Er wird bei jedem Seitenabruf übertragen und dient hauptsächlich zur statistischen Erhebung, Fehlersuche und zur Auslieferung von Inhalten, die für spezielle Clientsoftware maßgeschneidert sind.

                            Continue reading

                            Was ist ein Content Management Systems (CMS) vs. Static Site Generators (SSG)?

                              Eine der wichtigsten Entscheidungen bei der Erstellung Ihrer Website ist die Wahl der richtigen Technologie. Content Management Systeme (CMS) und Static Site Generatoren (SSG) sind populäre Optionen, beide haben ihre Vor- und Nachteile. Wärend ein CMS es seinen Benutzern erlaubt, Inhalte wie Text, Bilder und Videos auf einer Website zu veröffentlichen, zu bearbeiten und zu verwalten. Bietet ein SSG durch das Erstellen statischer HTML-Seite Geschwindigkeit und einfacher Skalierbarkeit. In diesem Artikel beschäftigen wir uns damit, was genau ein CMS und ein SSG ist und wann man welche Technologie einsetzen sollte.

                              Continue reading

                              Wahrscheinliche Cybersecurity-Trends im Jahr 2023

                                Es ist schwierig, genau vorherzusagen, welche Cybersecurity-Trends im Jahr 2023 wichtig sein werden, denn die Landschaft der Cybersecurity ist schnelllebig und ändert sich ständig. Allerdings gibt es einige Trends, die in den kommenden Jahren wahrscheinlich an Bedeutung gewinnen werden, darunter:

                                Continue reading

                                Was ist ‘Edge Computing’?

                                  Edge Computing ist eine Methode, bei der die Ausführung von Anwendungen, Datenverarbeitung und -speicherung näher an den Ort zu bringen, an dem sie benötigt werden, anstatt sie in ein zentralisiertes Rechenzentrum zu senden. Häufig wird Edge Computing im Kontext von Internet of Things (IoT) eingesetzt, da viele IoT-Geräte an entfernten Standorten platziert sind und große Mengen von Daten generieren. Durch die Platzierung vor Ort können die Latenzzeiten verringert und die Netzwerklast reduzieren werden, indem weniger Daten über längere Distanzen übertragen werden müssen.

                                  Continue reading

                                  Was ist ‘DevNet’, ‘DevSec’, ‘DevNetOps’, ‘DevOps’ und ‘DevSecOps’ … ?

                                    DevNet, DevSec, DevNetOps, DevOps, DevSecOps, GitOps, MLOps und DevTest sind Begriffe, die in der IT-Branche verwendet werden und sich auf verschiedene Aspekte der Softwareentwicklung und -verwaltung beziehen. Hier ist eine kurze Erklärung jedes Begriffs:

                                    Continue reading

                                    Was ist ‘Free/Libre/Open Source Software (FLOSS)’?

                                      Free/Libre/Open Source Software (FLOSS) ist Software, die unter einer freien Lizenz veröffentlicht wird, die den Benutzern erlaubt, sie zu nutzen, zu verändern und weiterzuverbreiten. FLOSS ist ein wichtiger Teil der Open Source-Bewegung, die darauf abzielt, die Vorteile von offenen Standards und offener Entwicklung zu nutzen, um bessere Software zu schaffen und die Nutzerfreiheit zu fördern.

                                      Continue reading

                                      Was ist ‘Software Defined Networking (SDN)’?

                                        Software Defined Networking (SDN) ist ein moderner Netzwerkansatz, bei dem Software zur Steuerung und Verwaltung des Netzwerkverkehrs eingesetzt wird und nicht die herkömmlichen hardwarebasierten Netzwerkmethoden.

                                        Der Hauptvorteil von SDN ist die Möglichkeit, die Verwaltung von Netzwerkressourcen zu zentralisieren. Bei herkömmlichen Netzwerken hat jedes Gerät seine eigenen Steuerungs- und Verwaltungssysteme, deren Wartung zeit- und ressourcenaufwändig ist. Bei SDN ist ein zentraler Controller für die Verwaltung des gesamten Netzwerks zuständig, was den Prozess vereinfacht und eine effizientere Nutzung der Ressourcen ermöglicht.

                                        Continue reading

                                        Was ist ‘LINUX’?

                                          Linux ist ein freies und quelloffenes (Open-Source) Betriebssystem, das auf der ganzen Welt weit verbreitet ist. Es wurde in den 1990er Jahren von Linus Torvalds entwickelt und ist seitdem eine beliebte Wahl für Personal Computer (PC), doch vor allem für Server und embedded systems.

                                          Wie verbreitet ist Linux?

                                          Generell ist Linux auf Servern weit verbreitet und hat einen großen Marktanteil. Laut Schätzungen basieren 96,3% aller Webserver auf Linux. Was vielleicht nicht so bekannt ist, ist, dass 90% der Cloud-Infrastruktur auf Linux aufgebaut sind und es von 100% der 500 größten Supercomputer genutzt wird. Eine Erhebung des Statistik-Portals Global Stats Statcounters zeigt, dass der Marktanteil von Linux 2021 bei rund 2% lag im Vergleich dazu hatte Windows einen Marktanteil von etwa 75% unter Desktop-Betriebssystemen. Für IoT-Geräte gibt es leider keine genauen Daten.

                                          Continue reading

                                          Ist ‘Telegram’ sicher?

                                            Telegram wurde von russischen Programmierern entwickelt, die der staatlichen Überwachung in ihrem Heimatland entgehen wollten. Der Gründer Pavel Durov ist abgetaucht – kommuniziert nur über seinen eigenen Telegram-Kanal und Instagram.

                                            Nachfolgend möchte ich meine Recherchen und Gedanken zu diesem Messenger veröffentlichen, gegliedert in technische, ethische und technisch-ethische Punkte, die App Telegram zu löschen oder gar nicht erst zu installieren.

                                            Continue reading

                                            Suchoperatoren und Suchfilter

                                              Google ist der Name der weltweit bekanntesten Internet-Suchmaschine. 2004 hat es der Begriff „googeln“ sogar in den Duden geschafft. Doch es gibt immer mehr Konkurrenz bei der Suche im Internet. Die alternative DuckDuckGo (https://duckduckgo.com/) lockt Nutzer mit mehr Privatsphäre. Und mit „ducken“ könnte es ein weiteres Wort in den Duden schaffen. Wer die beiden verglichen möchte, findet hier https://www.heise.de/tipps-tricks/DuckDuckGo-vs-Google-ein-Vergleich-5077730.html einen guten Artikel.

                                              Suchoperatoren und -filter heben die Qualität der Suchergebnisse deutlich an. Jeder, der schonmal etwas im Internet gesucht hat kennt das Phänomen, Suchbegriffe eingegeben, enter und … nichts oder nicht das was man wissen wollte. Mit den folgenden Tricks könnte sich das in Zukunft ändern.

                                              Continue reading