Pacman-Cache mit paccache aufräumen

Arch Linux unterscheidet sich von anderen Distributionen insbesondere dadurch, dass hier mit pacman ein ganz anderer Paketmanager eingesetzt wird. Bei allen Softwareinstallationen und -updates lädt er die Installationspakete erst in das Verzeichnis /var/cache/pacman, bevor er die jeweiligen Pakete installiert. „Pacman-Cache mit paccache aufräumen“ weiterlesen

wttr.in spricht Deutsch

Wer mir bereits auf Twitter unter @vemgar folgt, hat bereits heute morgen schon gesehen, dass Igor Chubin seinen CLI-Wetterdienst wttr.in um weitere Sprachen erweitert hat. wttr.in habe ich bereits mehrmals im Blog vorgestellt.

Die Sprache lässt zum einen über den GET-Parameter „lang“ spezifizieren.

Zum anderen wird eine noch elegantere Methode zur Verfügung gestellt, die auf das HTTP-Headerfeld Accept-Language zurückgreift (RFC 2616). Mit CURL sieht das ganze dann so aus:

Mit dem Headerfeld lässt sich auf HTTP-Ebene angeben, welche Sprachen bevorzugt werden. Dies lässt sich sogar mit Gewichtungen verfeinern.

In meinen Augen eine nette Verbesserung.

Dateien teilen mit Ad-hoc Webservern

Um Dateien im Netzwerk freizugeben, gibt es diverse Möglichkeiten: NFS, Samba sowie weitere speziellere Lösungen. Manchmal möchte man aber eine Datei einfach von A nach B bringen und auf Umwege wie E-Mails an sich selbst verzichten. „Dateien teilen mit Ad-hoc Webservern“ weiterlesen

Tipp: LVM-Partitionen einhängen

Wer mit einer Live-CD wie z.B. der SystemRescueCD extern auf eine Partition zugreifen möchte, macht dies meist über ein Kommando wie:

Hierbei wird die die erste Partition der ersten Festplatte/USB-Stick in den Mountpoint /mnt eingehängt. Danach kann je nach Dateisystem ganz normal auf den Inhalt zugegriffen werden. Sofern die Partition allerdings mit dem Logical Volume Manager (LVM) eingerichtet wurde, ist das nicht so einfach möglich. Versuche, die logischen Volumes aufzufinden oder einzuhängen, schlagen scheinbar fehl, da bei LVM die Partitionen an ganz anderen Orten liegen.
„Tipp: LVM-Partitionen einhängen“ weiterlesen

.tar.gz mit vim auflisten

Vim ist eines der wenigen Werkzeuge unter Linux, die richtig unscheinbar und komplex daher kommen, in Wirklichkeit aber regelrechte Schweizer Taschenmesser sind. Eigentlich wird Vim als Editor eingesetzt, der sich dank seiner Syntax zu komplexen Operationen eignet.

Was aber wenige wissen: mit ihm lässt sich auch der Inhalt von .tar.gz-Archiven auflisten. Normalerweise geht das mit tar und den Flags tvf, sodass ein Archiv mittels tar -tvf archive.tar.gz aufgelistet wird.

Mit Vim geht das aber eleganter: hier wird das Archiv wie eine ganz normale Datei aufgerufen. Dann listet der Editor den Archivinhalt read-only auf.

Neben .tar.gz-Archiven werden auch z.B. .tar.xz-Archive unterstützt.

Ein cleverer Tipp für alle, die gerne mit Vim arbeiten.

Erreichbarkeit von Ports mit netcat ermitteln

Beim Testen von Serverdiensten stellt sich oft die Frage, ob ein gewünschter Port erreichbar ist. Ports ordnen Endpunkte zwischen Verbindungen zu und sind wichtiger Bestandteil der TCP/UDP-Protokolle. (vgl. [1]) Während bei der Ermittlung der Erreichbarkeit eines Computers mittels IP-Adresse in der Regel der Ping hilft, werden für einzelne Ports andere Mittel benötigt. Die einfachste Möglichkeit für die HTTP(S)-Ports 80 und 443 ist der Browser. Gibt es beim Verbindungsaufbau keine Probleme, so ist der Port erreichbar. Bei Diensten wie einem Mail Transfer Agent (Port 25) ist das nicht so einfach. „Erreichbarkeit von Ports mit netcat ermitteln“ weiterlesen

Standardgateway unter Linux ermitteln

Wenn man unter Linux-Distributionen Netzwerke konfiguriert oder administriert, möchte man oftmals wissen, an welchen Router bzw. „Standardgateway“ der Rechner angebunden ist. Das Standardgateway ist üblicherweise ein Netzwerkgerät, an das die Netzwerkteilnehmer Pakete für andere Subnetze senden. Heutzutage sind das meist Router. Während in Heimnetzwerken oft nur ein Router arbeitet, sind es bei größeren Netzwerken nicht selten mehrere. Andere Betriebssysteme zeigen das Standardgateway beispielsweise unter dem Befehl ipconfig an, unter Linux gibt es bekanntermaßen ähnliche und spezielle Wege, die zum Ziel führen. „Standardgateway unter Linux ermitteln“ weiterlesen

Tipp: bash_history mit Zeitstempel versehen

Nachdem ich vor gut zwei Monaten erklärt habe, wie man Kommandos in der bash_history versteckt, möchte ich das Thema heute auf Timestamps ausweiten. Die bash_history erfässt alle eingegebenen Kommandos aus der Bash in einer Datei. Leider lässt sich in der Grundkonfiguration damit schlecht ermitteln, wann welches Kommando ausgeführt worden ist. Mit einer Variable können wir dies allerdings aktivieren. „Tipp: bash_history mit Zeitstempel versehen“ weiterlesen

Solved: Error 403 in Munin

In diesem Blogeintrag berichte ich von einer Lösung für einen kleinen Fehler, der (nicht nur bei mir) in der Installation von Munin auftritt. Munin ist ein Monitoring-Tool, das Statistiken eines Computers mit z.B. Linux sammelt und mit Grafiken in HTML ausgibt. Da es allerdings keinen eigenen Webserver mitliefert, muss es sich in einen bestehenden integrieren. Oft kommt hier Apache zum Einsatz.

Bei einer Installation auf Debian 8.3 Jessie verlief bei mir die Installation ohne Probleme. Bei einer Anzeige der Webseite mit einem Computer im Netzwerk erschien jedoch dann der Error 403. Irgendwas stimmt also mit den Zugriffsrechten nicht.

Lösung

Die Lösung ist recht simpel. Die Apache-Konfiguration muss externe Zugriffe erlauben. Die Apache-Konfiguraitonsdateien für die Munin liegen in /etc/munin. Allerdings unterstützt Apache 2.4 unterstützt die alte „Order allow,deny“-Schreibweise für die Zugangskontrolle nicht mehr. Deswegen muss durch die neue „Require“-Schreibweise ersetzt werden. Konkret sieht das folgendermaßen aus:

  1. Die Datei /etc/munin/apache24.conf (nicht apache.conf!) öffnen.
  2. Unter <Directory /var/cache/munin/www> muss die Zeile „Require local“ in „Require all granted“ (= alle dürfen zugreifen!) geändert werden.
  3. Options FollowSymLinks“ setzen, damit symbolischen Links gefolgt wird.
  4. Abspeichern und Apache-Config neueinlesen (z.B. sudo systemctl reload apache2.service)
  5. Im Webbrowser das Ergebnis überprüfen.

Fertig!