ubuntuusers.de

🚧 Am Sonntag, 5. Mai, werden ab 16 Uhr die Server aktualisiert und eine neue Inyoka-Version veröffentlicht. Das Portal wird mehrmals nicht verfügbar sein.

17. August 2011



Scheinbar ist die Mehrheit der Kinder aus der Gegend rund um Sankt Augustin in Italien oder liegt an einem Strand in Spanien oder befindet sich irgendwo anders in der Welt um Urlaub zu machen. Jedenfalls gab es Schwierigkeiten, die Workshops innerhalb des KidsTrack “FrogLabs” mit Teilnehmern zu füllen. Die Veranstalter der FrOSCon haben deshalb mit den Speakern für diese Workshops gesprochen und verschiedene Lösungen vorgeschlagen. Eine davon war, die Workshops auch für Erwachsene zu öffnen, für diese Lösung habe ich mich entschieden. Aber ich hatte ja bereits in der Ankündigung der Workshops geschrieben, dass ich nichts dagegen haben, wenn da der ein oder Erwachsene auftaucht. Das ist nun für die Masse der Workshops der FrogLabs der Fall. Da trotzdem nicht davon auszugehen ist, dass nun die Teilnehmerzahl ins unermessliche steigt, ist einfach mehr Zeit innerhalb der Workshops und ich werde wohl 2 weitere Themen mitnehmen. Also falls jemand Lust hat auf ein wenig Inkscape, einfach mal anmelden oder am Sonntag vorbeischauen.

Die Nagios Status Map ist ja eine ganz feine Sache, um sich problemlos einen Überblick über das Netzwerk zu verschaffen. Ich sehe auf einen Blick wie welche Maschinen zusammenhängen, und welche Betriebssysteme darauf jeweils betrieben werden. Doch, irgendwie sagt mir das folgende Symbol nicht viel:

Leider ist jeder Server standardmässig mit diesem Symbol ausgerüstet, was alles andere als sauber aussieht.

Um das zu ändern, muss man sich die passenden Symbole nachladen. Eine passende Auswahl dafür findet man bei Nagios Exchange.

Die Symbole werden heruntergeladen und nach /usr/local/nagios/share/images/logos (unter Ubuntu) entpackt. Nun wird eine weitere Datei mit dem Namen “hostextinfo.cfg” unter /usr/local/nagios/etc/objects zugefügt und mit folgendem Inhalt gefüllt:

define hostextinfo{
        hostgroup_name  windows-servers
        icon_image      win40.png
        icon_image_alt  Windows
        vrml_image      win40.png
        statusmap_image win40.gd2
        }

define hostextinfo{
        hostgroup_name  linux-servers
        icon_image      linux40.png
        icon_image_alt  Linux
        vrml_image      linux40.png
        statusmap_image linux40.gd2
        }

define hostextinfo{
        hostgroup_name  esxi-servers
        icon_image      esxi.png
        icon_image_alt  ESXi
        vrml_image      esxi.png
        statusmap_image esxi.gd2
        }

Die Datei wird nun noch in Nagios verlinkt.

Dazu ergänzen wir die Datei /usr/local/nagios/etc/nagios.cfg mit folgender Zeile:

cfg_file=/usr/local/nagios/etc/objects/hostextinfo.cfg

Nun aber haben wir ein Problem! Es gibt kein Symbol für ESX(i), weshalb wir da noch etwas Handarbeit tätigen müssen. Zuerst suchen wir uns ein passendes Icon. Ich habe mich für das vSphere-Symbol entschieden.
Dieses kann nun mit einem beliebigen Tool auf die passende Grösse gebraucht werden. Zum Beispiel mit Imagemagick:

convert -geometry 40x40 vsphere_logo.png esxi.png

Nun müssen wir noch eine Version im Format gd2 erstellen. Dazu habe ich das Paket “libgd-tools” installiert, womit ich nun konvertieren kann:

pngtogd2 esxi.png esxi.gd2 0 1

Ist auch das geschehen, so kann Nagios neugestartet werden und das Ergebnis bewundert werden:


Das könnte dich auch interessieren:

  1. Notification von Nagios ans iPhone Auf der Suche nach einer Lösung, wie ich die Notifications...

Nun ist es also vollbracht. Nachdem etlichen Tassen Kaffee in meinen Magen gewandert sind und ich Google mit diversen Suchbegriffen gequält habe, ist einer meiner nächster Meilenstein in Sachen XBMC / HTPC geschafft: die gleichzeitige / parallele / simultane (für die Suchbegriffe ;-) ) Ton bzw. Audio Ausgabe über den HDMI- und Klinke-Anschluss (bei zwei Soundkarten...)

Bitte beachtet, dass ich zuvor die Alsa Version wie hier beschrieben auf die neueste Version gebracht habe.

Dank des Users "the_isz", welcher sich im ArchLinux Forum mit dem gleichen Problem auseinander gesetzt hat (Beitrag hier) und seiner ausgezeichneten Analyse und Kommentierung im Script bzw. der ".asoundrc" (im home Verzeichnis), konnte ich dieses große Problem lösen.

So sieht meine .asoundrc nun aus: .asoundrc

Die Karten-Namen und Device IDs habe ich dabei mittels

aplay -l
ausgelesen. Die ausgabe sieht folgendermaßen aus:
**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SB [HDA ATI SB], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SB [HDA ATI SB], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0

Karte 0/3 = HDMI
Karte 1/0 = Klinke
Karte 1/1 = optisch

XBMC:
In den Audio-Einstellungen (Einstellungen - System - Audio Hardware) müssen noch folgende Optionen gesetzt werden (siehe Bild):

Audio Ausgabegerät: Benutzerdefiniert
Benutzerdefiniertes Audiogerät: both (klein geschrieben!)

Digitales Ausgabegerät für Passthrough: Benutzerdefiniert
Benutzerdefiniertes Audiogerät für Passthrough: both (auch klein geschrieben!)




Für alle Fälle habe ich die Arch-Linux Seite mit der Anleitung gespiegelt, da der Beitrag doch schon etwas älter ist: sicherung_1_alsa_files.tar.gz

Weitere Seiten zu diesem Thema:
https://bbs.archlinux.org/viewtopic.php?id=109370
http://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html
http://wiki.ubuntuusers.de/.asoundrc
http://forum.xbmc.org/showpost.php?p=396178&postcount=141

Und hier bin ich w.g. letztendlich fündig geworden:
https://bbs.archlinux.org/viewtopic.php?id=109370

Nun ist es also vollbracht. Nachdem etlichen Tassen Kaffee in meinen Magen gewandert sind und ich Google mit diversen Suchbegriffen gequält habe, ist einer meiner nächster Meilenstein in Sachen XBMC / HTPC geschafft: die gleichzeitige / parallele / simultane (für die Suchbegriffe ;) ) Ton bzw. Audio Ausgabe über den HDMI- und Klinke-Anschluss (bei zwei Soundkarten…)

Bitte beachtet, dass ich zuvor die Alsa Version wie hier beschrieben auf die neueste Version gebracht habe.

Dank des Users “the_isz”, welcher sich im ArchLinux Forum mit dem gleichen Problem auseinander gesetzt hat (Beitrag hier) und seiner ausgezeichneten Analyse und Kommentierung im Script bzw. der “.asoundrc” (im home Verzeichnis), konnte ich dieses große Problem lösen.

So sieht meine .asoundrc nun aus: .asoundrc

Die Karten-Namen und Device IDs habe ich dabei mittels

aplay -l

ausgelesen. Die ausgabe sieht folgendermaßen aus:

**** List of PLAYBACK Hardware Devices ****
card 0: Generic [HD-Audio Generic], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SB [HDA ATI SB], device 0: ALC892 Analog [ALC892 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: SB [HDA ATI SB], device 1: ALC892 Digital [ALC892 Digital]
Subdevices: 1/1
Subdevice #0: subdevice #0

Karte 0/3 = HDMI
Karte 1/0 = Klinke
Karte 1/1 = optisch

XBMC:
In den Audio-Einstellungen (Einstellungen – System – Audio Hardware) müssen noch folgende Optionen gesetzt werden (siehe Bild):

Audio Ausgabegerät: Benutzerdefiniert
Benutzerdefiniertes Audiogerät: both (klein geschrieben!)

Digitales Ausgabegerät für Passthrough: Benutzerdefiniert
Benutzerdefiniertes Audiogerät für Passthrough: both (auch klein geschrieben!)

Für alle Fälle habe ich die Arch-Linux Seite mit der Anleitung gespiegelt, da der Beitrag doch schon etwas älter ist: sicherung_1_alsa_files.tar.gz

Weitere Seiten zu diesem Thema:
https://bbs.archlinux.org/viewtopic.php?id=109370
http://www.alsa-project.org/alsa-doc/alsa-lib/pcm_plugins.html
http://wiki.ubuntuusers.de/.asoundrc
http://forum.xbmc.org/showpost.php?p=396178&postcount=141

Und hier bin ich w.g. letztendlich fündig geworden:
https://bbs.archlinux.org/viewtopic.php?id=109370

NAT ist so eine Sache. Unter Vmware Workstation sehr einfach und sauber gelöst, unter ESX(i) leider gänzlich unbekannt. Eigentlich ist es auf einem Server ja auch gar nicht erwünscht, da jeder Server sowieso seine eigene, fixe IP bekommt, jedoch aber ist bei mir nur der undenkbare Fall eingetreten, dass ich zu Testzwecken eben doch NAT gebrauchen könnte.

Also gilt es, das manuell einzurichten, was Vmware Workstation mir sonst abnimmt: Mit einem weiteren virtuellen Switch und einer Installation von pfSense.

Rein logisch sollte das so funktionieren: Der Client bezieht von pfSense eine interne IP, da er am selben Switch hängt, wie der DHCP. Ein Paket geht nun vom Client über den Switch zum LAN-Interface von pfSense und dann über das WAN-Interface auf den öffentlichen Switch ins Internet. Ganz einfach oder?

Als erstes wird der virtuelle Switch zugefügt. Jedoch wird dieser nicht an ein virtuelles Interface gebunden, schliesslich soll da ja nichts nach draussen gehen.
Nun wir eine VM erstellt mit zwei Netzwerkkarten, eine ans “VM Network”, welches über das Netzwerk erreichbar ist, und eine an das eben erstellte Netzwerk, nennen wir es “NAT Network”. Darauf wird nun pfSense installiert. Die Konfiguration ist gänzlich normal, es muss nur darauf geachtet werden, dass das WAN Interface der Karte mit Anbindung an das “VM Network” und das LAN Interface der Karte mit Anbindung an das “NAT Network” entspricht.

In ESX(i) würde das nun etwa so aussehen:

Nun kann eine neue Maschine einfach dem “NAT Network” zugefügt werden, und bezieht via DHCP eine IP Adresse! So schwer ist das ja gar nicht :)


Das könnte dich auch interessieren:

  1. Installation von Moodle unter Debian Moodle ist eine Lernplattform auf Basis von Opensource, welche bereits...

    Kostenlos und einfach eine wirkungsvolle Slideshow von Bildern erstellen und anschließend auf CD oder DVD brennen oder ins Internet stellen? Das geht unter Linux sehr einfach, und zwar mit dem Programm Photofilmstrip.

    Das Programm ist sehr einfach strukturiert, was die Bedienung wirklich sehr vereinfacht. Gleich der Programmstart erleichtert einem den Einstieg: Seitenverhältnis einstellen, Bilder importieren. Die importierten Fotos und Grafiken werden unten als Filmstreifen dargestellt. Hier kann die Reihenfolge beliebig per drag& drop oder die dafür vorgesehenen Button geändert werden.

    Klickt man ein Bild an, kann man den Zoombereich für den Ken-Burns-Effekt einstellen. Auch die Bildübergänge kann man für jedes Bild festlegen. Auch Untertitel kann man für jedes Bild separat einfügen.

    PhotoFilmStrip mit intuitiver Bedienoberfläche

    Über die Eigenschaften des Projektes kann man ein Audiostück für den Hintergrund wählen, welches während der Wiedergabe abgespielt wird.

    Wenn man mit seinem Ergebnis zufrieden ist, kann man es in zahlreiche Videoformate umwandeln lassen, selbst Full-HD Videos kann man damit erstellen. Die Umwandlung in das Video erfolgt schließlich mit Mencoder. Dies kann je nach Leistung des PCs einige Minuten dauern. Leider kann Photofilmstrip bisher nur einen Kern verwenden, es nutzt also bei modernen Computern nicht die vollständige Leistung aus.

    Das Programm liegt auf der Homepage des Projekts bzw. auf Sourceforge für Linux und Windows bereit.

    Eine fertige Slideshow in Full-HD sieht dann etwa so aus:

    One Evening on the Fun Fair from Benni Julia on Vimeo.

    Fast zeitgleich mit dem Browser Firefox hat Mozilla dessen Schwesterapplikation – den freien und plattformunabhängigen E-Mail-Client Thunderbird – in der Version 6.0 veröffentlicht.

    Thunderbird 6.0 enthält zahlreiche Stabilitäts- und Geschwindigkeitsverbesserungen sowie Sicherheitskorrekturen.

    Die Überprüfung, ob Thunderbird als standardmässiger Mail-Client eingerichtet ist, funktioniert nun auch mit neueren Linux-Distributionen.

    Gemäss mozillaZine wurde ausserdem das Erscheinungsbild (“Theme”) des E-Mail-Programmes der Aero-Oberfläche unter Windows Vista/7 überarbeitet und der Client unterstützt nun sogenannte “Jump lists”. Desweiteren wurde die Outlook-to-Thunderbird Importfunktion verbessert.

    Wie man den Release Notes ausserdem entnehmen kann, setzt Thunderbird nun – genauso wie die aktuelle Firefox-Version – auf die neueste Gecko-Rendering-Engine 6.0.

    Thunderbird kann unter anderem für die Betriebssysteme GNU/Linux, Mac OS X sowie Windows von der Mozilla-Seite heruntergeladen werden.

    Benutzer von Ubuntu 10.04 und 10.10 können sich Thunderbird 6.0 über das offizielle Mozilla PPA-Repository installieren:

    sudo add-apt-repository ppa:mozillateam/thunderbird-stable
    sudo apt-get update && sudo apt-get upgrade
    sudo apt-get install thunderbird-locale-de

    Alternativ dazu kann man sich anhand der Anleitung von UbuntuFlo eine portable Version des E-Mail- Programmes basteln. Der Vorteil der portablen Variante ist, dass man beim Testen die bereits bestehende Thunderbird-Version und deren Daten nicht gefährdet. Ein weiterer Vorteil ist, dass man Thunderbird portable – wie der Name bereits vermuten lässt – z.B. auf einem USB-Stick oder einer externen Festplatte mit sich tragen kann.

    Es ist davon auszugehen, dass die meisten Linux-Distributoren die neue Thunderbird-Version in den nächsten Tagen in die Paketquellen laden werden. Zumindest Ubuntu 11.04-User sollten das Update schon bald automatisch über die Systemaktualisierung eingespielt bekommen.

    Fazit: Optisch hat sich an Thunderbird unter Linux zwar nichts geändert, doch die Aktualisierung hat sich zumindest sicherheitstechnisch gelohnt. Die meisten meiner Erweiterungen (Lightning, Provider für Google Kalender, Google ContactsEnigmail) funktionieren auch nach dem Update reibungslos.

    Obschon es zunächst so schien, dass es heuer keine Ubucon geben würde, ist die grösste Veranstaltung im deutschsprachigen Raum rund um Ubuntu gesichert. Sie findet vom 14. bis 16. Oktober 2011 in der Universität zu Leipzig statt. Der Call for Papers läuft schon seit einiger Zeit. Die Veranstaltung lehnt sich am Konzept der Unkonferenz beziehungsweise des Barcamps an, sie lebt von den Teilnehmern, die sich zu Teilgebern wandeln. Die Ubucon bildet die Gemeinschaft so ab, wie wir sie aus ihren Quellen der Anarchie kennen; vereint mit der Gemeinschaft und dem Gemeinsinn und dem Willen, sich und seine Ideen unabhängig der kommerziellen Interessen durchzusetzen. Mittlerweile eroberte sich der (seriöse) Kommerz einen angemessenen Platz innerhalb der Community, auch wenn er nicht überall gerne gesehen wird.

    Wie dem auch sei; auch dieses Jahr verweile ich während den Tagen im Oktober im Osten Deutschlands, geniesse das Wiedersehen mit alten Freunden aus der Welt der freien Software und trage meinen kleinen Teil zu dieser Veranstaltung bei. Zusammen mit Dirk unter dem Deckmantel von DeimHart bieten wir eine Session an, deren Inhalt ich hier noch nicht verraten will. Daneben helfe ich zwei alten Haudegen bei einer Doppelsession zum Thema Community und Organisation. Ob und in welcher Form RadioTux wie im letzten Jahr vor Ort sein wird, ist noch nicht klar.

    Während den folgenden zwei Wochen können weitere Vorschläge zu Vorträgen und Workshops eingereicht werden. Auf ubuntuusers.de ist dazu zu lesen:

    Die Organisatoren der diesjährigen Ubucon weisen darauf hin, dass noch zwei Wochen Vorträge zur Ubucon eingereicht werden können. Bisher haben sich schon einige Vorträge und Workshops gefunden, die ein interessantes Programm versprechen. Bei dem Schwerpunkt der Desktop-Oberflächen haben sich bisher erst Vorträge zu KDE und Unity gefunden. Die Oberflächen Gnome (3), LXDE, XFCE oder auch ganz andere Fenstermanager werden noch vermisst. Wer in diesem Bereich oder auch in einem anderen einen Vortrag, Workshop oder eine Diskussionsrunde leiten will, kann seine Vorschläge mit einer kurzen Zusammenfassung und einem aussagekräftigen Titel bis zum 31. August 2011 an das Organisationsteam unter idee@ubucon.de schicken.

    Traut Euch und meldet Eure Ideen an die Organisation der Ubucon 2011! Diese Veranstaltung lebt von dem, was die Gemeinschaft aus sich selbst schöpft. Ausserdem ist Leipzig immer eine Reise wert, die Social-Events an den Abenden entschädigen für den langen Weg und ausserdem bietet Leipzig eine ganze Menge. Wer nach Mitfahrgelegenheiten oder nach günstigen Übernachtungsmöglichkeiten sucht, wird hier fündig. Die Anmeldung zur Ubucon wird ab Anfang September möglich sein. Wie seit zwei Jahren üblich ziehen die Veranstalter einen kleinen Obolus für die Unkosten ein. Damit wird erfolgreich verhindert, dass sich zu viele Leute anmelden und dann nicht zur Veranstaltung erscheinen. Im Beitrag sind die Verpflegung während der Ubucon und weitere Goodies enthalten. Bei Fragen und Anregungen zur Ubucon wendet Euch bitte an diese Kontaktmöglichkeiten.

    PDF-Datei dieses Artikels erzeugen

    Ähnliche Artikel

    16. August 2011

    Die aktuelle Ubuntu-Version 11.04 liefert den zur heutigen Veröffentlichung angekündigten Firefox 6 direkt über die Paketquellen aus. Das Update sollte dort bald ankommen. [Das Update ist mittlerweile verfügbar] Auch Nutzer von Ubuntu 10.04 und 10.10 können die Version nutzen. Firefox 6 lässt sich über das Firefox-Stable-PPA einfach installieren.

    Hierfür muss man, sofern noch nicht geschehen, das PPA hinzufügen, ein Update durchführen und ggf. das Sprachpaket installieren:

    sudo add-apt-repository ppa:mozillateam/firefox-stable
    sudo apt-get update && sudo apt-get upgrade
    sudo apt-get install firefox-locale-de

    Hat man wichtige Erweiterungen, auf die man nicht verzichten möchte, sollte man vorher nachschauen, ob diese bereits mit dem Firefox 6 laufen. Ist das nicht der Fall wäre es sinnvoller mit dem Update noch ein paar Tage zu warten bis die Add-on-Entwickler nachziehen.

    Nachdem ich den Ton über einen HDMI Switch mittels Cinch abgegriffen habe, wollte ich nun zusätzlich einen Kopfhörer direkt am HTPC anschließen. Die Überraschung war groß, als sich Ubuntu strickt weigerte, diesen Anschluss anzusprechen... von gleichzeitiger Ausgabe auf HDMI und Klinke mal ganz abgesehen (was noch auf der Todo-Liste steht). Auch viel Recherchieren und noch mehr Probieren half da nichts, denn wie sich später heraus stellen sollte, war schlicht das verwendete Alsa zu alt. Wer also dieser Anleitung zum Installieren von XBMC gefolgt ist: Anleitung und die Version von nemek laufen hat, nutzt Ubuntu 10.10 und damit Alsa 1.0.23

    Die Alsa Version kann mit folgendem Terminal-Befehl augeselesen werden:

    cat /proc/asound/version


    Nun haben aber die beiden User soundcheck und Temüjin von Ubuntuforums.org ganze Arbeit geleistet und ein Update-Script für Alsa geschrieben, was auch ganz vorzüglich funktioniert hat:

    Volle und ausführliche Anleitung hier: http://ubuntuforums.org/showthread.php?t=1681577

    Kurzfassung:
    1. Script herunterladen und irgendwo speichern
    2. cd "der_Download_Ordner"
    3. tar xzvf AlsaUpgrade-1.0.24-2.tar.gz
    4. chmod +x AlsaUpgrade-1.0.24-2.sh
    5. sudo ./AlsaUpgrade-1.0.24-2.sh -d
    6. sudo ./AlsaUpgrade-1.0.24-2.sh -c
    7. sudo ./AlsaUpgrade-1.0.24-2.sh -i
    8. sudo shutdown -r 0

    Datei: AlsaUpgrade-1.0.24-2.tar.gz

    Spiegel auf oyox.de: AlsaUpgrade-1.0.24-2.tar.gz

    Nachdem ich den Ton über einen HDMI Switch mittels Cinch abgegriffen habe, wollte ich nun zusätzlich einen Kopfhörer direkt am HTPC anschließen. Die Überraschung war groß, als sich Ubuntu strickt weigerte, diesen Anschluss anzusprechen… von gleichzeitiger Ausgabe auf HDMI und Klinke mal ganz abgesehen (was noch auf der Todo-Liste steht). Auch viel Recherchieren und noch mehr Probieren half da nichts, denn wie sich später heraus stellen sollte, war schlicht das verwendete Alsa zu alt. Wer also dieser Anleitung zum Installieren von XBMC gefolgt ist: Anleitung und die Version von nemek laufen hat, nutzt Ubuntu 10.10 und damit Alsa 1.0.23

    Die Alsa Version kann mit folgendem Terminal-Befehl augeselesen werden:

    cat /proc/asound/version

    Nun haben aber die beiden User soundcheck und Temüjin von Ubuntuforums.org ganze Arbeit geleistet und ein Update-Script für Alsa geschrieben, was auch ganz vorzüglich funktioniert hat:

    Volle und ausführliche Anleitung hier: http://ubuntuforums.org/showthread.php?t=1681577

    Kurzfassung:
    1. Script herunterladen und irgendwo speichern
    2. cd “der_Download_Ordner”
    3. tar xzvf AlsaUpgrade-1.0.24-2.tar.gz
    4. chmod +x AlsaUpgrade-1.0.24-2.sh
    5. sudo ./AlsaUpgrade-1.0.24-2.sh -d
    6. sudo ./AlsaUpgrade-1.0.24-2.sh -c
    7. sudo ./AlsaUpgrade-1.0.24-2.sh -i
    8. sudo shutdown -r 0

    Datei: AlsaUpgrade-1.0.24-2.tar.gz

    Spiegel auf oyox.de: AlsaUpgrade-1.0.24-2.tar.gz

    Ich habe auf ein webupd8.org ein Video entdeckt, in welchem die aktuelle Ubuntu 11.10 Oberfläche zu ‘bewundern’ ist.

    Die Änderungen welche mir auf den ersten Blick aufgefallen sind waren sinnvoll, beispielsweise wurden die Einstellungsmöglichkeiten für Unity erweitert (bspw. die Icon-größe der Launcherbar ist jetzt leichter konfigurierbar). Auch das Such-Menü wurde überarbeitet und bietet jetzt mehr sinnvolle Optionen und (für die die es nutzen) das Ubuntu-Software-Center ist noch ein bisschen bunter geworden, über den Sinn dieser Änderung lässt sich sicher streiten…


    Inhalt
    Das Nagios-Plugin check_oracle_health wurde ursprünglich für Linux geschrieben. Da es sich um ein Perlscript handelt, sollte es doch auch unter Windows lauffähig sein. Gerhard Lausser hat eine Anleitung für den Betrieb unter Windows geschrieben. Hier noch ein paar zusätzliche Tipps dazu.

    Warum unter Windows?

    Es kann mehrere Gründe geben, warum man das Nagios-Plugin (z.B. durch nrpe) unter Windows laufen lassen will / muss.

    • Auf dem Nagios-Server ist kein Oracle-Client installiert oder es gab Probleme bei der Installation der Oracle (Instant-) Clients.
    • Die Datenbanken sind – aus welchen Gründen auch immer – nicht direkt von den Nagios Servern erreichbar
    • Das Plugin soll vor dem produktiven Einsatz getestet werden

    Perl

    Vorsicht:

    Oracle benutzt ggf. auch perl. Seid vorsichtig, dass Ihr Eure Umgebung nicht ‘zerschießt’!

    Auf einem Windows Datenbankserver sollten keine zusätzlichen Tools (perl, cygwin) ‘einfach so’ installiert werden!

    Für Windows gibt es

    DBD::Oracle

    Wenn check_oracle_health direkt auf die Datenbanken zugreifen soll, muss DBD::Oracle installiert werden.
    Bei Verwendung des Parameters “–method sqlplus” ist DBD::Oracle nicht erforderlich, da dann alle Zugriffe über Oracle’s sqlplus erfolgen. sqlplus muss dann natürlich installiert sein.

    configure; make install

    Das unter Linux ganz normale “configure; make; make install” wird dem normalen Windows Benutzer schwer fallen.
    In einer cygwin – Umgebung (Linux unter Windows) oder einem ‘richtigen’ Linux ist dies einfach zu bewerkstelligen.

    Technisch wird bei diesem Vorgang aus check_oracle_health.pl und mehreren Moduldateien das Endergebnis check_oracle_health erstellt. Diese Datei ist alles, was genötigt wird; sie ist alleine lauffähig. Für alle, die kein Linux zur Hand haben, gibt es ausnahmsweise und ohne Gewähr hier die Version 1.6.9 in fertiger Form (.pl-Datei und .bat Datei als Alternative). Die offizielle Version und Dokumentation findet Ihr auf der check_oracle_health Homepage unter Downloads. Eine Aternative ist die Open Monitoring Distribution OMD (für Linux!), hier ist das Plugin auch schon fix-und-fertig mit dabei.

    Umgebungsvariable PERL5LIB

    Manche Oracle-Installationen setzen die Umgebungsvariable PERL5LIB auf die (alten) Perl-Libraries, die mit Oracle 10 mitgeliefert werden.

    Die Umgebungsvariable muss man löschen:

    set PERL5LIB=

    Sonst bekommt man z.B. diese Fehlermeldung (Oracle’s perl.exe im Pfad ist zu alt!):

    e:\...\check_oracle_health-1.6.9\plugins-scripts>.\check_oracle_health
    Use of :unique is deprecated at G:\oracle\product\10.2.4\db_1\perl\5.8.3\lib/MSWin32-x86-multi-thread/Config.pm line 39.
    Use of :unique is deprecated at G:\oracle\product\10.2.4\db_1\perl\5.8.3\lib/MSWin32-x86-multi-thread/Config.pm line 80.
    Perl lib version (v5.8.3) doesn't match executable version (v5.12.4) at G:\oracle\product\10.2.4\db_1\perl\5.8.3\lib/MSW
    in32-x86-multi-thread/Config.pm line 32.
    Compilation failed in require at G:\oracle\product\10.2.4\db_1\perl\5.8.3\lib/MSWin32-x86-multi-thread/DynaLoader.pm lin
    e 25.
    BEGIN failed--compilation aborted at G:\oracle\product\10.2.4\db_1\perl\5.8.3\lib/MSWin32-x86-multi-thread/DynaLoader.pm
     line 25.
    Compilation failed in require at G:\oracle\product\10.2.4\db_1\perl\5.8.3\lib/MSWin32-x86-multi-thread/Time/HiRes.pm lin
    e 7.
    Compilation failed in require at .\check_oracle_health line 3786.
    BEGIN failed--compilation aborted at .\check_oracle_health line 3786.

    oder diesen Fehler (PERL5LIB stört):

    Perl lib version (v5.8.3) doesn't match executable version (v5.12.4) at ...

    pl2bat

    Mit pl2bat kann man sich aus check_oracle_health (dem vollständigen Perl-Script) eine Batchdatei check_oracle_health.bat erstellen lassen.

    pl2bat check_oracle_health

    Das macht den Aufruf und das Testen erheblich einfacher.
    Wie oben schon beschrieben, gibt es u.U. Probleme mit der Umgebungsvariable PERL5LIB. Daher noch eine kleine Anpassung an der .bat-Datei

    @rem = '--*-Perl-*--
    @echo off
    
    @rem MN: Unset PERL5LIB (otherwise Oracle's outdated libraries would be used)
    @set PERL5LIB=
    
    if "%OS%" == "Windows_NT" goto WinNT
    perl -x -S "%0" %1 %2 %3 %4 %5 %6 %7 %8 %9

    Zusätzlich kann (und sollte?) man hier noch den absoluten Pfad zu dem ‘richtigen’ perl eintragen (2 Stellen!).

     

    Vorsicht:

    Die .bat-Datei unterstützt nur 9 Kommandozeilenparameter (%1 – %9). Das kann schon mal eng werden. sql-Statements lassen sich unter Windows nicht so einfach übergeben wie unter Linux (wegen der schlechten / fehlenden Quotes). Für die normalen Checks sollte es aber reichen.

    perl2exe

    Gerhard Lausser beschreibt in check_oracle_health unter Windows einen anderen Weg:

    • keine (zusätzliche) Perlinstallation auf dem Zielsystem
    • Vorbereitung auf einer anderen Maschine
    • Erzeugen von check_oracle_health.exe mit pp aus dem CPAN Modul PAR::Packer
    • Übertragen der .exe auf die Zielmaschine

    Leider hat das bei mir nicht funktioniert. Mein Virenscanner mag keine Programme, die aus .pl-Dateien Executables erstellen.

    SIGALRM unter Windows32

    Unter Windows gibt es keine Signals. Dies ist anscheinend unter Win32 ein besonderes Problem.
    (Siehe: http://www.perlmonks.org/?node_id=794938)

    e:>.\check_oracle_health.bat --connect=//localhost:1521/nie1.world --username=nagios --password=nagios --mode=connection-time
    CRITICAL - cannot connect to //localhost:1521/nie1.world.
    Your vendor has not defined POSIX macro SIGALRM,
    used at .\check_oracle_health.bat line 4700

    Wenn dies Problem auftritt, wird check_oracle_health im ‘Native Mode’ (mit Zugriff DBD:.Oracle) nicht funktionieren.

    Abhilfe: –method=sqlplus

    Mit “–method=sqlplus” läuft das Programm auch unter win32.

    Mit ‘normalem’ Connect (Eintrag in tnsnames.ora erforderlich):

    e:>.\check_oracle_health.bat --method=sqlplus --connect=nagios/nagios@nie1.world  --mode=connection-time
    OK - 0.30 seconds to connect as NAGIOS | connection_time=0.2956;1;5

    oder mit EZCONNECT:

    e:>.\check_oracle_health.bat --method=sqlplus --connect=//localhost:1521/nie1.world --username=nagios --password=nagios --mode=connection-time
    OK - 0.23 seconds to connect as NAGIOS | connection_time=0.2325;1;5

    In diesem Beispiel wird Easy-Connect (EZCONNECT) anstatt “–connect=user/passwort@servicename” verwendet.
    Vorteil: Es wird keine tnsnames.ora benötigt. Nachteil: es muss auf Client und Server erlaubt sein (sqlnet.ora) bzw. darf dort nicht verboten sein.

    Siehe auch: Check_oracle_health kann EZCONNECT von Gerhard Lausser.

    Fazit

    Es funktioniert. Spannend kann es bei eigenen Checks mit den Limitierungen auf der Kommandozeile unter Windows werden. Die Windows-Admin wünschen sich wahrscheinlich eine .exe, die stand-alone läuft. Die kann ich aber nicht bereitstellen.

     

     

    check_oracle_health unter Windows: zusätzliche Tipps ist ein Beitrag von: kenntwas.de - Technische Tipps

    15. August 2011

    Morgen erscheint offiziell Mozillas Firefox 6. Intern wird derzeit wieder mal um die Versionsnummern diskutiert. So wird überlegt, diese künftig mehr oder weniger abzuschaffen. Die Nummern sollen nach dem Vorschlag in Bugzilla aus dem About-Fenster entfernt werden. So wäre die exakte Versionsnummer dann nur noch über about:support zu finden. Stattdessen soll im About-Fenster nur noch eine Info erscheinen, wann der Firefox das letzte mal aktualisiert wurde und ob ein Update zur Verfügung steht.

    Ich sehe hier allerdings das Problem, dass weniger technisch versierte Nutzer nicht wissen, dass man unter about:support die Versionsnummer trotzdem noch sehen kann. Extremetech.com nennt hier als Beispiel Probleme mit dem Online-Banking, bei denen der Nutzer von einem Support mit Sicherheit nach der Browser-Version gefragt wird. Zudem ist bei jedem anderen Programm auf der Welt im About-Fenster die Versionsnummer zu finden.

    Was haltet ihr davon, die Versionsnummern (zumindest sichtbar) abzuschaffen?

    Wir haben noch ein altes Powerbook (Unibody, 2008), bei dem die serienmäßige 160GB-Platte arg klein geworden ist. Die sollte nun gegen eine Momentus-Hybrid-Platte ausgetauscht werden. Geplant war, die Platte mit “dd” zu klonen und anschließend mit dem “diskutil” oder dem Festplattendienstprogramm zu strecken. Ging nicht, weil das Festplattendienstprogramm irritiert davon ist, dass die Schattenkopie der GPT nicht am Ende der Platte liegt.

    Ich bin dann so vorgegangen:

    1. Beide Platten mit einem SATA2USB-Adapter an den Linux-Desktop-Rechner angeschlossen

    2. Mit
      dd if=/dev/sdx of=/dev/sdy bs=1M
      die alte (sdx) auf die neue (sdy) Platte geklont

    3. Mit
      gdisk /dev/sdy
      die Platte im GPT-Partitionierungstool geöffnet und eine Partition vom Typ 0700 auf dem Rest der Platte angelegt, mit w bestätigt – das korrigiert die Position der Backup-GPT

    4. Die Platte abgestöpselt und in den Mac eingebaut

    5. Den Mac gebootet und dort im Festplattendienstprogramm die leere Partition gelöscht und die OS X Partition etwas gestreckt

    Klappte prima und erspart mir eine Neuinstallation von OS X. Ich habe jetzt noch Platz, um demnächst Ubuntu drauf unterzubringen.

      Vom 8. Juli bis einschließlich 11. August hat Canonical Bilder gesammelt, die als Standardhintergrundbilder für Ubuntu Oneiric Ocelot in Frage kommen. Wir Ubuntufreunde und (Hobby-)Fotografen hatten die Möglichkeit, unsere Fotografien und Grafiken in eine Flickr-Gruppe zu werfen und sie somit als potentielles Hintergrundbild vorzuschlagen. Bis zum Einsendeschluss am vergangenen Donnerstag wurden 1.936 Fotos in den Pool aufgenommen (zusätzlich noch Bilder, die auf andere Wege teilgenommen haben).

      Der Ablauf für die Wahl der Standard Hintergrundbilder sieht wie folgt aus: Das Team fasst die Einsendungen zu einer kleineren Vorauswahl zusammen und anschließend werden die Gewinner des letzten Wettbewerbs (also die Fotografen der Natty Hintergrundbilder) die Gewinner für die kommende Version bestimmen.

      Und wie lange wird das dauern? Nun, Canonical gibt sich selbst für die Vorauswahl „etwas mehr als eine Woche“, danach kommen die Gewinner des letzten Wettbewerbs. Diese müssen sich bis zum 25. August entschieden haben, denn dann ist der UserInterfaceFreeze.

      Egal wie das Rating auch ausfallen wird, und auch unabhängig davon, welches Betriebssystem ihr benutzt, hier sind einige meiner Einsendungen, und die dürft ihr gerne als Hintergrundbilder benutzen :)

      Macro CropsCornfield 4/5 Background 1/5125 years Coca Cola TinHat Lady MannequinRaupeCamden Town
      Noch mehr schöne Fotos gibts in meinem Fotoblog auf 18-200mm.de

      14. August 2011

      Inhalt
      Zur Analyse der Performance von Webseiten gibt es einen neuen Dienst GTmetrix. GTmetrix fasst die Ergebnisse der Klassiker YSlow von Yahoo und Pagespeed (beides Browser-Plugins) zusammen und generiert daraus einen Report.

      GTmetrix ist ein reiner Online-Dienst, eine Installation der Plugins ist nicht erforderlich.

      GTmetrix Eingabemaske für URL

      GTmetrix Eingabemaske für URL

      Die Ergebnisse

      Nach der Analyse kann man sich die Ergebnisse von YSlow und Pagespeed getrennt anschauen.

      Interessant ist auch ein Export als .pdf. Hiermit kann man sich die Ergebnisse archivieren, um später zu überprüfen, ob die Optimierungen an den Webseiten etwas gebracht haben (Baseline ermitteln).

      GTmetrix: Ergebnisse

      GTmetrix: Ergebnisse

      Timeline

      Für das Ladeverhalten der Webseite ist die Timeline sehr aufschlussreich. Da Browser Requests für Bilder, css, js – Dateien  nicht gleichzeitig abfragen, bietet diese Darstellung weiteres Potential für Optimierungen.

      GTMetrix: Timeline

      GTMetrix: Timeline

       

      Alternativen

      www.webpagetest.org

      www.webpagetest.org gibt es schon länger. Die Darstellung ist etwas übersichtlicher als bei GTmatrix. Ein großes Plus ist die Möglichkeit Standort und Browsertyp auszuwählen. In der Geschwindigkeit macht es schon einen Unterschied, ob die Seite aus den USA oder aus Deutschland aufgerufen wird.

      Webpagetest

      www.webpagetest.org

      Pagespeed Online

      Googles Pagespeed gibt es auch als Pagespeed Online. Auch hier wird kein Browser Plugin benötigt.

      Whichloadsfaster

      Auf whichloadsfaster.com kann man die Ladegeschwindigkeit von 2 Webseiten vergleichen (Try my own Matchup auswählen).
      Welche Seite ist schneller – Deine oder die Deiner Freundin?

      Syntax-Checker

      Vor der (und während) der Optimierung sollte man auch die Syntax seiner Webseiten überprüfen.

      Klassiker sind die W3C – Tools (Validatoren)

      Fazit

      Die Tools sind praktisch, gehen aber ziemlich ans ‘Eingemachte’. Sie sind nicht für Anfänger geeignet. Meine Erfahrungen mit W3TC , einem Cache-Plugin für WordPress – sind teilweise recht leidvoll.

      Die Tools eignen sich nur für online erreichbare Seiten. Wenn Seiten im Intranet testen will, muss die Browser-Plugins verwenden.  Alle Tools liefern eine Prioritätenliste von Problemen, die man dann ‘abarbeiten’ kann.

      Linktipp: Webseiten Performance analysieren mit GTmetrix ist ein Beitrag von: kenntwas.de - Technische Tipps

      Die Meldung ist zwar schon ein paar Tage alt, ich wollte es hier aber nicht unerwähnt lassen: Mozilla Thunderbird wird der neue Standard-Email-Client in der kommenden Ubuntu-Version 11.10 “Oneiric Ocelot”. Damit löst er Evolution ab, das bisher in der Standardinstallation enthalten war. Wer lieber Evolution weiter nutzen möchte, kann die Groupware natürlich auch weiterhin aus den Paketquellen nachinstallieren.

      Thunderbird ist schon eine Weile in den Testversionen zu Ubuntu 11.10 enthalten, es wurde aber bisher immer wieder betont, dass man von jetzt auf gleich wieder auf Evolution wechseln könnte, sollte sich der Client aus dem Hause Mozilla nicht zufriedenstellend integrieren lassen. Nun wurde aber vor ein paar Tagen offiziell bestätigt, dass Thunderbird auch in der finalen Version, die am 13. Oktober veröffentlicht werden soll, als Standard dabei sein wird.

      Hierfür arbeitet man unter anderem mit Mozilla an einer Erweiterung, die den Evolution Data Server (EDS) in Thunderbird integriert. EDS ist zum Beispiel für das Adressbuch, den Kalender und die Aufgabenverwaltung zuständig. Das ganze ist noch recht experimentell, aber in einem Video kann man sich schon mal anschauen, wie das ganze funktioniert.

      Ich finde es gut, dass Thunderbird nun zum Standard wird, da ich den Client schon immer Evolution vorgezogen habe. Durch die Integration des Evolution Data Server wird Nutzern der Wechsel von einer zur anderen Anwendung, oder auch ein Zusammenarbeiten der beiden Programme, deutlich erleichtert. Das ist eine Entwicklung, über die man sich als Nutzer wohl in jedem Fall freuen kann.

      Bei anontux.com findet man eine Übersicht frei verfügbarer Onlineproxys, vergleichbar mit Hidemyass, dem wohl bekanntesten Service auf diesem Gebiet. Man kann sich die gelisteten Proxys nach Geschwindigkeit, Land etc. sortieren lassen. Alles in allem eine gute Übersicht für den schnellen Proxy-Gebrauch. Diese Übersicht kann auch ganz hilfreich sein, sollte ein oder mehrere der bekannten Services im Netzwerk geblockt sein, so kann man einfach durchporbieren. ;) Danke an DidiProxy für den Tipp! :)


      13. August 2011

      Diese Woche hatte ich mich dann endlich entschlossen, von dem so langsam einrostenden Debian 5 Lenny auf meinem vServer, auf das neue Debian 6 zu wechseln. Aber es war nicht nur dieser eine Wechsel, sondern gleichzeitig der Wechsel von Architekturen (i386 auf amd64) und als Control Panel von Confixx auf Froxlor, dem sysCP-Fork.

      Bei dem vServer-Paket von Alfahosting ist, wie so oft, schon eine Confixx Lizenz mit enthalten und Debian 5 gab es im Bundle mit Confixx, also fiel mir die Entscheidung zu Anfang nicht sonderlich schwer. Denn was ist einfacher, als eine Perl-Datei auszuführen und ein paar Einstellungen einzutippen? Nunja, dies lief jetzt seit ca. 6 Monaten ziemlich gut, inklusive Teamspeak 3 Server, Minecraft-Server und Shoutcast-Server. Jedoch war mir die Software unter Lenny irgendwann nicht mehr aktuell genug (phpMyAdmin z.B. war total veraltet), sodass ich mich entschloss auf ein neueres System zu bauen. Zur Auswahl standen das LTS-Release 10.04 von Ubuntu (32bit), CentOS 5 (32bit), OpenSuse 11.4 (32bit), Fedora 11 (32bit) und eben jenes Debian 6 (64bit).
      Nach reichlicher Überlegung, Konversationen mit Freunden und Bekannten über Vor- und Nachteile der Systeme entschied ich mich dann für den Klassiker – Debian. Nichts spektakuläres also, denn von einer auf die andere Version sollte sich ja nicht allzu viel geändert haben. Falsch gedacht !
      Geändert in dem Sinne jedoch eigentlich nicht, eher optimiert. Ich mochte das Paket-System und APT unter Debian (auch Ubuntu, welches ich auf dem Desktop nutze) schon immer, was also auch ein Pluspunkt war. Dazu kam die wirklich ausgesprochen stabile, und doch recht aktuelle Softwareumgebung die so ein Squeeze mit sich bringt.
      Nunja, nach diversen Problemen mit meinem Anbieter, dessen Hostsystem-Kernel nicht immer Debian 6 unterstützten (anschließender Umzug auf ein anderes Hostsystem) ging dann alles recht schnell. Mithilfe des offiziellen Froxlor-Repositories (hier zu finden: http://froxlor.org/repositories.html) konnte ich einfach über das APT das Paket froxlor installieren, welches direkt auch Abhängigkeiten zu Paketen wie apache2, php5, mysql, postfix, proftpd (und was sonst alles noch zu einem Server gehört, auf dem man Webseiten betreiben möchte). Dabei musste ich nicht einmal Gebrauch vom Wiki machen, welches nebenbei erwähnt sehr gut gemacht ist, da wie gesagt durch die Abhängigkeiten schon alles installiert war und ich nur noch Froxlor konfigurieren musste. Wie gewohnt von sysCP generiert Froxlor die passenden Konfigurationsdateien im Panel, sodass man nur wenige Stellen ersetzen oder abändern muss. Sogar die auszuführenden Befehle sagt Froxlor vor, jedoch sollte man trotz des guten Systems von Froxlor nicht auf einen guten Menschenverstand verzichten! Was mir noch außerordentlich an dem Froxlor-Repository gefällt ist, dass es da es direkt von Froxlor betrieben wird, sehr aktuell ist und ich somit über das APT
      Nach ca. 1 Stunde hatte ich das Grundsystem aufgebaut und alles funktionierte soweit, dass ich beginnen konnte die Daten einzupfläuchen. Diese hatte ich auf dem Server eines Bekannten zwischengelagert, sodass ich sie per ncftp kopieren und dann einzeln in die Ordner verteilen konnte.
      Über den Umzug des Teamspeak-Servers werde ich einen extra Artikel schreiben, auch da es ja einen Wechsel der Architektur gab, was nicht ganz trivial ist, wie ich finde.

      Das System läuft jetzt seit ca. 2 Tagen wieder und, meiner Meinung nach schneller als zuvor. Wie bzw. ob (wollen wir es hoffen) das System in 1-2 Monaten noch läuft, werde ich euch wohl dann berichten ;) .

      Solltet ihr Fragen zum Thema haben, so könnt ihr diese in den Kommentaren gerne stellen.

      Zwei Monate nach dem Release von Firefox 5.0 wird Mozilla am 16. August 2011 die Version 6.0 des populären Webbrowsers veröffentlichen. Doch schon jetzt gibt es auf einigen FTP-Spiegelservern bereits die finale Version zum Download.

      Nachdem Mozilla die Veröffentlichungsstrategie und Versionsnummerierung seiner Programme bereits beim letzten Release derjenigen der Konkurrenz von Google Chrome angepasst hat, erscheinen nun öfters neue Major-Versionen.

      In diesem Beispiel ist mozilla.com eingeschwärzt und der Rest der URL ist in grau dargestellt.

      Optisch ist mir beim Testen der neuen Firefox-Version zuerst aufgefallen, dass Firefox nun den Domain-Namen in der URL-Leiste in schwarz und alle anderen Zeichen in einem hellen Grau darstellt. Für Chrome-Benutzer dürfte dies nichts spezielles sein; der Google-Browser beherrscht dieses “Feature” bereits seit längerem.

      Eine weitere Neuerung ist die optimierte Darstellung des Speichermanagements. Gibt der User den Befehl about:memory in die URL-Leiste ein und drückt die ENTER-Taste, erscheint der momentane Speicherverbrauch mitsamt einigen Details.

      Beim Acid3-Test, welcher die Konformabilität von Browsern in Sachen Web-Standards prüft, erreicht Firefox mit der neuen Version 6.0 nach wie vor 97 Punkte. Zum Vergleich: Microsofts Internet Explorer schafft es nur auf 55 von 100 möglichen Punkten. Opera und die Webkit-basierten Browser Chrome und Safari erreichen – wie gewohnt – die Maximalpunktzahl.

      Mit dem Befehl about:permissions kann der Benutzer nun ausserdem die Berechtigungen von Websiten bezüglich den gespeicherten Passwörter, Standortabfrage, Cookies, Pop-up-Fenstern und den im Cache gespeicherten Offline-Daten kontrollieren und verwalten.

      Hier kann der Benutzer die Berechtigungen der Websiten verwalten.

      Die Installation unter Ubuntu ist eigentlich ganz einfach. Wie das funktioniert lest Ihr am Besten im Blog von Christoph Langner nach.

      Fazit: Bis Dienstag wird sich bei Mozilla wahrscheinlich nichts weltbewegendes mehr tun. Deswegen habe ich mir die neue Version des Feuerfuchses schon mal heruntergeladen und angeschaut. Bezüglich der Geschwindigkeit konnte ich weder Fort- noch Rückschritte feststellen; der Speed ist etwa auf dem Niveau des Vorgängers geblieben. Aufgrund der neuen Features lohnt sich ein Update aber auf jeden Fall.

      Vielleicht kennt ihr das Problem ja auch: Man hat vom Format her eine korrekte E-Mail-Adresse, trotzdem wird sie nicht zugestellt, weil das Ziel dem Mail-Server unbekannt ist. Eine formal richtige E-Mail-Adresse wäre zum Beispiel lpage@google.com. Sollte ich aber an diese Adresse eine E-Mail schicken, würde ich folgende Antwort erhalten:

      Delivery to the following recipient failed permanently:
       
           lpage@google.com
       
      Technical details of permanent failure: 
      Google tried to deliver your message, but it was rejected by the recipient domain. We recommend contacting the other email provider for further information about the cause of this error. The error that the other server returned was: 550 550-5.1.1 The email account that you tried to reach does not exist. Please try
      550-5.1.1 double-checking the recipient's email address for typos or
      550-5.1.1 unnecessary spaces. Learn more at                             
      550 5.1.1 http://mail.google.com/support/bin/answer.py?answer=6596 c20si4840621fai.47 (state 14).

      Wie kann ich also im Vorfeld prüfen, ob eine E-Mail-Adresse [nicht] existiert, ohne eine Test-Mail zu versenden? Zum Beispiel mit den beiden Kommandozeilen-Tools nslookup und telnet, die bei Gnu/Linux, MacOS X und Windows standardmäßig dabei sind. Allerdings muss man unter Windows 7 den Telnet-Client erst aktivieren, bevor man ihn nutzen kann.

      Zuerst benötigen wir für dieses Beispiel den Mail-Exchanger von Google, den man in der Konsole mit nslookup ermittelt. Das Beispiel ist aus der Bash mit nslookup unter Ubuntu 10.04. In anderen Konsolen unter anderen Betriebssystemen kann die Ausgabe des Befehls leicht anders aussehen. Das Prinzip ist aber dasselbe:

      nslookup -q=mx google.com
      Server:		192.168.178.1
      Address:	192.168.178.1#53
       
      Non-authoritative answer:
      google.com	mail exchanger = 50 alt4.aspmx.l.google.com.
      google.com	mail exchanger = 10 aspmx.l.google.com.
      google.com	mail exchanger = 20 alt1.aspmx.l.google.com.
      google.com	mail exchanger = 30 alt2.aspmx.l.google.com.
      google.com	mail exchanger = 40 alt3.aspmx.l.google.com.

      Ich entscheide mich für den Mailserver mail exchanger = 10 aspmx.l.google.com und baue über telnet eine Verbindung zu ihm auf:

      telnet aspmx.l.google.com 25
      Trying 74.125.39.27...
      Connected to aspmx.l.google.com.
      Escape character is '^]'.
      220 mx.google.com ESMTP 3si5028908fav.179

      Nach dem Befehl telnet folgt die Adresse des Mailservers aspmx.l.google.com und zum Schluss noch der Port, über den kommuniziert werden soll, also Port 25 für SMTP. Da ich ein höflicher Mensch bin, sage ich dem Server erstmal “Hallo”.

      helo hi
      250 mx.google.com at your service

      Und der Server antwortet mit 250, was bedeutet, dass meine Anfrage erfolgreich beantwortet wurde und sagt mir, dass er zu meinen Diensten steht. Sehr schön. Danach gebe ich ein, von wem die E-Mail kommen soll. In diesem Fall also von mir:

      mail from: <christian.imhorst@mail.ru>
      250 2.1.0 OK 3si5028908fav.179

      Die spitzen Klammern vor und nach der E-Mail-Adresse sind wichtig. Ansonsten erhält man einen Syntax Error. Dann schaue ich nach, ob die E-Mail-Adresse existiert:

      rcpt to: <lpage@google.com>
      550-5.1.1 The email account that you tried to reach does not exist. Please try
      550-5.1.1 double-checking the recipients email address for typos or
      550-5.1.1 unnecessary spaces. Learn more at                             
      550 5.1.1 http://mail.google.com/support/bin/answer.py?answer=6596 3si5028908fav.179

      Wie man sieht, existiert diese E-Mail-Adresse leider nicht. Der Server antwortet mit 550 und sagt mir damit, dass meine Anfrage nicht erfolgreich war. Aber da ich weiß, das mein Ansprechpartner Larry mit Vornamen heißt, probiere ich das folgende Muster:

      rcpt to: <larry.page@google.com>
      250 2.1.5 OK 3si5028908fav.179

      Der Server meldet zurück, dass ihm diese E-Mail-Adresse bekannt ist. Ob das auch wirklich der Larry Page ist, den ich anschreiben möchte, ist eine andere Frage, zumindest aber existiert diese E-Mail-Adresse. Mit dem Befehl quit schließt man die Telnet-Sitzung wieder.

      Manche Mail-Server haben übrigens ein Catch-All für E-Mails, dann laufen alle E-Mails mit einer formal richtigen E-Mail-Adresse der Domain in der gleichen Mailbox zusammen und der Mail-Server antwortet in diesem Fall bei jeder formal gültigen Adresse mit einem “OK”. [Update:] Wie man in den ersten beiden Kommentaren nachlesen kann, gibt es noch weitere Möglichkeiten, die dieses Verfahren hinfällig werden lassen, wie Graue Listen, Sender Policy Framework (SPF), Konformitätsprüfung oder ein rDNS lookup der Client-IP durch den MSA. Letztendlich lässt sich mit dem Verfahren nur ermitteln, ob zum Zeitpunkt der Abfrage der Mailserver bereit oder in der Lage ist, den Mailversand zu einer bestimmten E-Mail-Adresse durchzuführen.

      Was kann man mit diesem Wissen, ob zum Zeitpunkt der Abfrage der Mailserver bereit oder in der Lage ist, den Mailversand zu einer bestimmten E-Mail-Adresse durchzuführen, nun anfangen? Zur Validierung von E-Mail-Adressen ist das Verfahren aus den oben genannten Gründen nur begrenzt geeignet. Abgesehen davon, kann die valide E-Mail-Adresse auch eine kurzfristige bzw. Wegwerf-E-Mail-Adresse z.B. von 10minutemail.com sein. Aber man kann mit diesem Verfahren seinen eigenen oder den Mailserver des Providers testen und dessen Funktionsweise überprüfen. So kann man eine Fehlerdiagnose durchführen, indem man mit dem Server direkt in einer seiner Protokollsprachen kommuniziert: SMTP, POP3 und IMAP.

        Canonical, die Firma um Ubuntu, hat in den letzten Jahren viel in das Design von Ubuntu investiert. Das Ergebnis ist recht ansprechend geworden, wie ich finde.

        Wem das Design so sehr gefällt, dass er es auch auf seinem Smartphone haben will, der muss darauf nicht verzichten. Zumindest für Android gibt es mehrere Möglichkeiten, seinem System äußerlich ein bisschen mehr Ubuntu-Feeling zu verpassen.

        Die einfachste Möglichkeit ist natürlich, die Standard-Ubuntu-Wallpaper als Hintergrundbild zu verwenden.

        Die Hintergrundbilder liegen in /usr/share/backgrounds  und können einfach von dort auf das Telefon kopiert werden.

        Wer noch etwas mehr Ubuntu-Feeling haben will, für den gibt es mehrere Möglichkeiten.

        Launcher mit Unity-Theme

        Launcher mit Unity-Theme

        Wenn man anstelle des Standard-Launchers den ADW Launcher benutzt, so kann man gleich unter zwei verschiedenen Ubuntu Themes auswählen.

        Zum einen gibt es das Ubuntu Theme, ein Theme, dass die Icons der Ubuntu-Standard-Installation benutzt und den Stil vom Ambiance im Dock.
        Zum Anderen gibt es noch das Ubuntu 11.04 Theme, ein, im Gegensatz zur ersten Anwendung nicht kostenloses Theme, das wie der Name schon andeutet, ein Theme im Stil von Ubuntu 11.04/Unity ist.
        Ein Kritikpunkt an beiden Themes ist der Mangel an Icons.
        Nur die meistverwendeten Anwendungen haben ein eigenes Icon, alle anderen sind noch die Standard-Icons.

        Go Launcher EX mit Unity Theme

        Go Launcher EX mit Unity Theme

        Eine Alternative zu den Themes für den ADW Launcher ist ein Theme für GO Launcher EX
        Das Theme heißtGO Ubuntu Unity und ist ein Unity-Theme für Android.
        Ein Vorteil an diesem Theme ist, dass es einige Icons gibt, und die restlichen Icons werden mit einem farblich mehr oder weniger passendem Rahmen unterlegt, so wie man es vom Unity-Dock her kennt. Dadurch hat das ganze ein weitaus passenderes Aussehen als die anderen Themes.

        Mir persönlich gefällt das letzte Theme am besten, unter anderen wegen den Icons und weil mir der GO Launcher besser gefällt als der ADW Launcher ;)

        Seit ich meinen neuen Arbeitsweg antrete und täglich ca eine Stunde im Zug verbringe, höre ich umso mehr Podcasts. Besonders gut finde ich http://ulm.ccc.de/dev/radio/. Es ging unter anderem um Algorithmen und Kryptologie im Allgemeinen. Unter anderem eben auch die ROT13 Verschlüsselung.

        Grafik aus Wikipedia unter Public Domain

        Ich habe mir überlegt wie schwierig es wohl sein kann, diesen in Bash zu implementieren. Nach kurzem googlen findet man immer wieder eine kleine wirklich ausgefuchste, trickreiche Zeile:

        $ tr A-Za-z N-ZA-Mn-za-m

        Irgendwie war mir das aber zu langweilig, mir die Arbeit von einem vorgefertigten Binary erledigen zu lassen. Ich wollte es in echtem Bash selbst schreiben. Was ich dann auch getan habe.

        Usage:

        $ ./rot13 "hello world"
        uryyb jbeyq

        $ echo "hello world" | ./rot13
        uryyb jbeyq

        # Verschlüsseln und entschlüsseln hintereinander.
        $ echo "hello world" | ./rot13 | ./rot13
        hello world

        # Zeichentabelle anzeigen
        $ ./rot13 -t

        Sollten Zeichen vorkommen, die sicht nicht im Table befinden, werden diese automatisch erkannt und bleiben unverschlüsselt.

        $ ./rot13 "Ich wollte nur [...] und dann ist das Universum explodiert."
        Ipu jbyygr ahe [...] haq qnaa vfg qnf Uavirefhz rkcybqvreg.

        Genau genommen ist es sogar mehr als nur ROT13. Mit wachsendem Zeichen-Table wächst auch automatisch die Verschiebung der Stellen mit. Es ist also möglich einen eigens definierten Table mit Zeichen anzulegen und diesen zu nutzen. Einzige Bedingung: Es muss eine gerade Anzahl von Zeichen sein.

        Und zum Schluss: Danke an /dev/radio für die erhebliche Verkürzung meiner Zugfahrten :)

        Linux / Unix: Erste Hilfe für die Kommandozeile

        Inhalt

        Tipps für nicht mehr reagierende Kommandozeilen

        Was kann man tun, wenn die Kommandozeile mal nicht mehr reagiert? Oder die Anzeige auf dem Terminal / der Konsole plötzlich nicht mehr funktioniert? Besonders peinlich ist dies, wenn man gerade nur genau ein Terminal zur Verfügung hat (z.B. im Single-User Modus).
        Hier ein paar Erste-Hilfe Tipps für die Kommandozeile.

        Control – Codes

        In vielen Fällen kann man sich mit Control-Codes aus der Affaire ziehen.
        In den Beispielen bedeutet ^C

        eine Tastatureingabe mit gedrückter <Control>-Taste (oder <Strg>) , also <ctrl>c bzw. <Strg>c.

        stty

        Die Control-Codes können umdefiniert werden. Die aktuellen Einstellungen lassen sich mit dem Programm stty ausgeben oder umsetzen.
        Hier die Ausgaben unter Ubuntu.

        $ stty -a  # Ausgabe der Terminaleinstellungen
        speed 38400 baud; rows 28; columns 133; line = 0;
        intr = ^C; quit = ^\; erase = ^?; kill = ^U;  eof = ^D; eol = M-^?; eol2 = M-^?; swtch = M-^?;  start = ^Q; stop = ^S; susp = ^Z;
        rprnt = ^R; werase = ^W; lnext = ^V; flush = ^O; min = 1; time = 0;
        -parenb -parodd cs8 hupcl -cstopb cread -clocal -crtscts
        -ignbrk brkint -ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl ixon -ixoff -iuclc ixany imaxbel iutf8
        opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab0 bs0 vt0 ff0
        isig icanon iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt echoctl echoke

        Backspace-Taste

        Wenn die Backspace Taste umdefiniert wurde, kann man sie wieder ‘auf den Standard’ zurücksetzen. stty benutzt symbolische Namen für die verfügbaren Funktionen. erase steht für: Löschen des Zeichens links vom Cursor.

        $ stty erase ^?

        Anstatt ^? drückt man einfach die <Backspace>-Taste.

        Manchmal muss man die Taste mit ^V  ‘escapen’. Also “stty erase ^V<backspace-Taste>”.
        ^V (crtl-V) bedeutet in der Bash und im vi: “Interpretiere das nächste Zeichen nicht“. Damit kann man z.B. ein \r (^M) auf der Kommandozeile eingeben: (Tasten <ctrl>-V und <ctrl>-M nacheinander drücken: ^V^M).

        Wenn die Backspace-Taste nicht funktioniert, kann man oft mit ^H (ctrl-H) arbeiten.

        Blockierende Programme

        Die Konsole reagiert nicht mehr. In vielen Fällen liegt dies an dem letzten Befehl, den man eingegeben hat.

        Warten auf Eingabe: ^D

        Wenn man ein Programm aufruft, das auf Eingaben von der Standardeingabe (stdin) erwartet, ändert sich das Prompt. Auf den ersten Blick sieht es so aus, als ob das Programm hängt. Dabei wartet es nur auf eine Eingabe.

        Mit ^D (End of File) beendet man die Eingabe (^Z unter DOS / Windows).

        $ cat
        ^D

        Vorsicht:
        Wenn man ^D direkt in der Bash-Kommandozeile eingibt, wird sie sich beenden (Shortcut für exit).
        Mit export IGNOREEOF=1 kann man das ausschalten.

        SIGINT: ^C

        Die meisten Programme kann man mit ^C unterbrechen. Technisch wird dem Programm ein Signal gesendet. Das Programm kann die Eingabe aber abfangen. Dann reagiert es entweder gar nicht oder ‘mit Verzögerung’.

        SIGQUIT: ^\

        Programme, die auf ^C nicht (mehr) reagieren, kann man eventuell noch mit ^\ zum Beenden zwingen.

        Programm in den Hintergrund: ^Z

        Wenn man versehentlich ein Programm im Vordergrund gestartet hat (& vergessen), kann man es mit ^Z (suspend) in Hintergrund verschieben. Es wird dann angehalten. Mit dem bg-Kommando kann man es dann in den Hintergrund (Background) schicken.

        $ xclock    # im Vordergrund gestartet
        ^Z
        [1]+  Angehalten              xclock
        
        $bg %1
        [1]+ xclock &

        Das bg-Kommando erwartet eine Prozess-Id oder einen Shortcut (%1, %2,…). Die Bash gibt den Shortcode ([1] -> %1, [2] -> %2,…) aus.

        Mit “fg %1″ kann man den Prozess übrigens wieder in den Vordergrund (Foreground) holen. “jobs” gibt alle Hintergrund-Prozesse aus, die aus der aktuellen Shell gestartet wurden.

        ^Z ist auch nützlich bei hartnäckigen Programmen. Mit “kill %1″ oder “kill -9 %1″ kann man das (hartnäckige) Programm dann endgültig beenden.

        Ausgabe anhalten: ^S / ^Q

        Die Ausgabe eines Programms kann man mit ^S (Stop) unterbrechen. Mit ^Q wird die Ausgabe fortgeführt.
        Wer ‘versehentlich’ ^S drückt kann auch das Gefühl haben, sein Programm sei ‘stehen geblieben’. Mit ^Q gehts in diesem Fall weiter.

        Reparieren der Anzeige

        satty sane

        Versehentlich eine Binärdatei auf dem Terminal ausgegeben? Stimmt die Anzeige nicht mehr?
        Ungewollte Control-Codes können das Terminal durcheinander bringen.

        Das stty-Kommando hat einen ‘Sanitäter’-Modus:

        $ stty sane

        Auch wenn man auf dem Terminal nichts mehr sehen kann (keine Ausgabe), weil es komplett verstellt ist, tippt man einfach blind

        ^C^Jstty sane^J

        ^C (ctrl-C) unterbricht dabei eventuell vorher eingegebene Fehlversuche. ^J (ctrl-J) ist der Steuercode für einen Newline (\n).

        tset, reset

        Mit

        $ reset

        lässt sich ein Terminal auch erneut initialisieren.

        TERM-Variable

        Wichtig ist auch die Umgebungsvariable TERM. Sie muss zu dem Programm passen, mit dem man die Kommandozeile aufgerufen hat. Gebräuchliche Werte sind

        • export TERM=xterm
        • export TERM=vt100     Ein uraltes Standard-Terminal

         putty: UTF-8

        Wenn Steuerzeichen (anstatt Umlauten) in putty ausgegeben werden, lohnt es sich vielleicht, putty auf UTF-8 umzustellen.

        Putty auf UTF-8 umstellen

        Putty auf UTF-8 umstellen

         

        Zeilen und Spalten verstellt: eval `resize`

        Der vi benutzt nur ein halbes Fenster? xterm nach einem resize (unter X) verstellt?

        Das Programm resize macht nichts anderes, als Zeilen und Spalten auszugeben.

        $ resize
        COLUMNS=110;
        LINES=25;
        export COLUMNS LINES;

        Es ist in Ubuntu bei dem Paket xterm enthalten (apt-get install xterm).

        Mit

        eval `resize`

        werden Zeilen und Spalten wieder korrekt dargestellt. (Achtung: Backticks `). Der Befehl “stty size” gibt Zeilen und Spalten auch aus, kann aber nicht einfach so mit eval verwendet werden wie resize.

        Escape-Codes für andere Programme

        Manche Programme (z.B. telnet) haben einen speziellen Escape-Character, mit dem man in einem speziellen Modus landet.

        telnet

        Telnet gibt sein Escape-Zeichen (manchmal) beim Start aus. Unter Linux ist des meistens ctrl-].

        # Linux
        $ telnet localhost 80
        Trying ::1...
        Trying 127.0.0.1...
        Connected to localhost.
        Escape character is '^]'.

        Unter Windows ist es ^+

        c:\Dokumente und Einstellungen\nie> telnet
        Willkommen
        
        Das Escapezeichen ist 'CTRL++'
        
        Microsoft Telnet>

        Mit quit kann man telnet beenden. ‘help’ gibt eine Hilfe aus.

        ssh: ~

        Auch die ssh hat einen Eecape-Character. Die Tilde (~) am Anfang einer Zeile ist das Escape-Zeichen.

        • ~.    Beendet die Verbindung
        • ~^Z Schickt die Connection in den Hintergrund
        • ~~  Erlaubt die Eingabe einer Tilde am Anfang der Zeile

        Mit dem Parameter -e kann das Escape-Zeichen bei telnet und bei der ssh gesetzt werden.

        -e escape_char
        Sets the escape character for sessions with a pty (default: ‘~’).  The escape character is
        only recognized at the beginning of a line.  The escape character followed by a dot (‘.’)
        closes the connection; followed by control-Z suspends the connection; and followed by itself
        sends the escape character once.  Setting the character to “none” disables any escapes and
        makes the session fully transparent.

        Verbindung beenden: ~.

        $ ssh someone@localhost
        someone@localhost's password:
        Welcome to Ubuntu 11.04 (GNU/Linux 2.6.38-10-generic i686)
        
         * Documentation:  https://help.ubuntu.com/
        
        5 packages can be updated.
        3 updates are security updates.
        
        You have new mail.
        Last login: Sun Jul 17 17:59:51 2011 from bubuntu
        someone@bubuntu:~$~. # (~. eingeben!) Connection to localhost closed.

        In den Hintergrund: ~^Z

        Die ssh fängt ^Z ab. Wenn man die komplette ssh in den Hintergrund schicken möchte, muss man ~^Z (~ ctrl-Z) eingeben. Danach kann man auf der lokalen Maschine (da wo die ssh gestartet wurde) weitere Kommandos eingeben. Mit “fg %2″ kann man die ssh wieder in den Vordergrund holen.

        Last login: Sat Aug 13 13:10:26 2011 from bubuntu
        someone@bubuntu:~# ~^Z [suspend ssh]
        
        [2]+  Angehalten              ssh someone@localhost

        Screen / byobu

        Das Steuerzeichen bei screen und byobu ist ^A. Danach kommt ein Befehlszeichen (^AH für Hilfe, ^AQ für Quit, ^AN nächtes ‘Fenster’). Mit ^A[ aktiviert man den Scrollbuffer.

        Fazit

        Das waren meine Tipps zum Überleben an der Kommandozeile. Vielleicht habt ihr ja noch weitere.

        Linux / Unix: Erste Hilfe für die Kommandozeile ist ein Beitrag von: kenntwas.de - Technische Tipps