Die Tipps des Monats

Pavel Ignatov, 123RF

ADMIN-Tipps

Hier finden Sie eine Auswahl der im wöchentlichen ADMIN-Newsletter erscheinenden Praxistipps.
Termine planen, Nachrichten austauschen, Kundendaten verwalten, am besten auch vom Smartphone aus. Das alles und noch viel mehr sollen moderne ... (mehr)

Bash-History im Griff

Die meisten Benutzer der Bash-Shell lernen ziemlich schnell die History-Funktion zu schätzen, die die meisten über die Cursor-Tasten abrufen. Alternativ geht das auch mit anderen Tasten wie [Strg]+[p] und [Strg]+[n]. Mit [Strg]+[r] lässt sich die History sogar durchsuchen, wenn man danach Teile des gesuchten Kommandos eintippt.

Trivialitäten wie »pwd« oder »cd« muss die History nicht unbedingt speichern, denn das verschwendet nur unnötig Platz im begrenzten Speicher (der sich übrigens mit der Umgebungsvariablen »HISTSIZE« einstellen lässt). Auf vielen Systemen verzichtet die Bash auch auf eine Speicherung, wenn man dem Befehl ein Leerzeichen voranstellt. Dies wird durch die Variable »HISTCONTROL« gesteuert, die dann »ignorespace« enthalten muss.

Bestimmte Befehle ignoriert die History, wenn man die Variable »HISTIGNORE« entsprechend setzt:

export HISTIGNORE="pwd:ls:ls -l:cd"

Der Befehl muss dabei genau dem aufgeführten entsprechen, damit es klappt. Mit dem Spezialzeichen »&« , das für den letzten Befehl steht, verzichtet die Bash darauf, unmittelbar aufeinander folgende doppelte Befehle zu speichern. Zum gleichen Effekt führt »HISTCONTROL=ignoredups« . Global verhindert die Einstellung »HISTCONTROL=erasedups« duplizierte Befehle.

Mit dem Befehl »history« lässt sich die History-Funktion steuern. So löscht »history -c« den aktuellen Speicher, »history -d X« löscht den letzten X-ten Eintrag, und »history -w« schreibt das Protokoll in eine Datei (per Default »~/.bash_history« ). Mehr Informationen zum History-Befehl sind übrigens in der Bash-Manpage zu finden, während »man history« Informationen zur History-Bibliothek enthält.

I/O von VMs optimieren

Wie es aussieht, laufen in Zukunft immer mehr Systeme nur noch als virtuelle Maschinen auf einem Server oder in der Cloud. Damit sie bei der Performance mit echter Hardware konkurrieren können, gibt es einige Dinge zu berücksichtigen. Bei der Linux-Virtualisierungstechnologie KVM setzt man dafür am besten die Virtio-Treiber ein, die für den Einsatz in virtuellen Maschinen optimiert sind. Auch beim Datenspeicher gibt es einige Optionen: Schneller als Image-Dateien, die auf der Festplatte des Host-Systems gespeichert sind, funktioniert beispielsweise der direkte Zugriff auf ein LVM-Volume.

Läuft in der VM eine Linux-Distribution, gibt es noch einen Trick, das I/O-System zu beschleunigen: Man setzt den I/O-Scheduler der VM auf die Option "noop", die den Scheduler quasi leerlaufen lässt. Dies ist anzuraten, weil der Scheduler des Host-Systems ja seinerseits bereits die Lese- und Schreibaufträge verwaltet. Täte die VM das auch noch, führte dies nur zu unnötigem Overhead.

Zur Laufzeit lässt sich dies in der VM mit »echo noop > /sys/block/DEVICE/queue/scheduler« erreichen. Dauerhaft wird die Einstellung mit »elevator=noop« in der Zeile mit »GRUB_CMDLINE_LINUX« der Datei »/etc/default/grub« auf dem Gast-System eingestellt.

neue Tipps im Newsletter

Jede Woche erscheint in unserem Newsletter ein neuer ADMIN-Tipp. Eine Sammlung aller Tipps finden Sie im Archiv der ADMIN-Tipps unter http://www.admin-magazin.de/News/Tipps/. Den Newsletter können Sie unter http://www.admin-magazin.de/newsletter abonnieren.

Ähnliche Artikel

comments powered by Disqus
Mehr zum Thema

ADMIN-Tipp: Bash-History im Griff

Ein paar kleine Tricks machen die Nutzung der Bash-History noch effizienter.

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019