Schlagwort-Archiv: howto

LAN vor WLAN im NetworkManager

Mein Arbeitsnotebook ist aus Performancegründen meistens per Kabel am Netzwerk angeschlossen, für die Mobilität im Büro besteht zusätzlich eine WLAN-Verbindung zum selben Netzwerk. Beide Verbindungen werden vom NetworkManager verwaltet, allerdings kann man hier keine Priorisierung einstellen, was zu folgender Routing-Tabelle führt:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG    0      0        0 wlan0
0.0.0.0         10.0.0.1        0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.0.0     U     0      0        0 wlan0
10.0.0.0        0.0.0.0         255.255.0.0     U     0      0        0 eth0

Die Metric steht bei beiden Interfaces auf 0, weshalb nicht eindeutig festgelegt ist, wo der Traffic nun rausgeht. Das System nimmt die erste Route, die in diesem Falle über das WLAN läuft.

Um dieses Problem zu umgehen, habe ich ein NetworkManager-Script gebastelt. Dies muss im Verzeichnis /etc/NetworkManager/dispatcher.d/ liegen und für root ausführbar sein.

#!/bin/sh
 
#wireless-metric.sh - NetworkManager script
#sets a higher metric for wireless connections to prioritize a wired connection
 
#metric that will be used for the wireless connection
METRIC=100
 
#check input parameters
if [ -z "$1" -o -z "$2" ]; then
  echo "This script is meant to be run by the NetworkManager";
  echo "Syntax: $0 <device> <up/down>"
  exit 1
fi
device=$1
updown=$2
 
#exit if the current connection isn't a wireless one
iwconfig $device > /dev/null
if [ $? -eq 161 ]; then
  exit
fi
 
#get default route and local network address
defaultgw=`ip route|grep default.*$device|awk '{print $3}'`
localnet=`ip route|grep $device|grep -v default|head -n1|awk '{print $1}'`
 
#delete the routes for the device and add new ones with the higher metric
if [ "$updown" = "up" ]; then
  route del -net $localnet dev $device
  route add -net $localnet dev $device metric $METRIC
  route del -net 0.0.0.0/0 gw $defaultgw dev $device
  route add -net 0.0.0.0/0 gw $defaultgw dev $device metric $METRIC
fi

Nachdem ich die WLAN-Verbindung getrennt und wieder aufgebaut habe, finde ich nun eine eindeutige Routingtabelle vor:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.0.0.1        0.0.0.0         UG    100    0        0 wlan0
0.0.0.0         10.0.0.1        0.0.0.0         UG    0      0        0 eth0
10.0.0.0        0.0.0.0         255.255.0.0     U     100    0        0 wlan0
10.0.0.0        0.0.0.0         255.255.0.0     U     0      0        0 eth0

Das Script wurde getestet unter Debian 7.1 wheezy AMD64 mit NetworkManager Version 0.9.4.0-10.

Debian-Paketlisten sichern und wiederherstellen

Für den Umzug auf neue Hardware möchte ich meine installierten Pakete auch auf dem neuen System installieren. Dazu sichere ich die Paketlisten mit dpkg. Dabei geht allerdings die Information verloren, ob ein Paket manuell oder aufgrund von Abhängigkeiten automatisch installiert wurde. Mit apt-mark lässt sich diese Information ebenfalls speichern.

Paketliste sichern:

dpkg --get-selections > packages.list
apt-mark showauto > packages_auto.lst
apt-mark showmanual > packages_manual.lst

Paketliste wiederherstellen:

dpkg --set-selections < packages.list
apt-get -u dselect-upgrade
apt-mark auto `cat packages_auto.lst`
apt-mark manual `cat packages_manual.lst`

Sun JRE unter Ubuntu 10.10

Canonical hat in der aktuellen Ubuntu-Version die Javapakete standardmäßig entfernt. Man wird gebeten, die freie Laufzeitumgebung aus dem OpenJDK-Projekt zu verwenden. Die Pakete der originalen Sun-JRE lassen sich dennoch recht einfach nachinstallieren:

sudo echo "deb http://archive.canonical.com/ubuntu maverick partner" >> /etc/apt/sources.list.d/canonical-partner.list
sudo apt-get update
sudo apt-get install sun-java6-jre sun-java6-plugin

Freunde der GUI (hier Gnome) gehen folgendermaßen vor:

  • Im Gnome-Menü unter System/Systemverwaltung die Synaptic-Paketverwaltung starten.
  • Im Programmenü auf Einstellungen/Paketquellen klicken.
  • Den Tab Andere Software auswählen.
  • Häkchen bei Canonical-Partner setzen.
  • Nach einem Klick auf Schließen in der Menüleiste auf Neu laden klicken.
  • Jetzt lassen sich die Pakete sun-java6-jre und sun-java6-plugin über die Paketverwaltung installieren

Kurztipp: selbstsigniertes OpenSSL-Zertifikat mit einem Befehl

Es gibt Befehle, die man nicht oft genug nutzt, um sie aus dem Kopf zu wissen, aber doch in schöner Regelmäßigkeit nutzen muss.

Dazu gehört es für Testzwecke oder interne Systeme auch das Erstellen von selbstsignierten SSL-Zertifikaten. Damit geschützte Systeme sind genau so gesichert wie welche mit gekauften Zertifikaten, nur dass der Browser eine Fehlermeldung anzeigt, weil der Aussteller unbekannt ist. Für interne Zwecke also meistens durchaus ausreichend.

Weiterlesen

Kurztipp: Amavisd-new und Bitdefender for Unices

Nach einem Update auf die 64Bit-Version von Bitdefender for Unices funktionierte die Regex nicht mehr, die Amavisd-new ( hier 2.6.1 auf Debian Lenny) verwendet, um aus dem Virenscanner-Output das Scanergebnis zu lesen.

Im Syslog erscheint dazu:

Aug 22 14:11:35 www amavis[26474]: (26474-01) (!!)BitDefender av-scanner FAILED: /usr/bin/bdscan unexpected exit 0, output="BitDefender Antivirus Scanner for Unices v7.90123 Linux-amd64\nCopyright (C) 1996-2009 BitDefender. All rights reserved.\n\nInfected file action: ignore\nSuspected file action: ignore\n/var/lib/amavis/tmp/amavis-20090822T141130-26474/parts/p001  ok\n\n\nResults:\nFolders: 0\nFiles: 1\nPacked: 0\nArchives: 0\nInfected files: 0\nSuspect files: 0\nWarnings: 0\nI/O errors: 0\n" at (eval 86) line 527.

Weiterlesen

Internetsperren umgehen: Linux-Terminal schlägt Windows-GUI

Dass die angedachten und bereits vom Kabinet abgesegneten DNS-Sperren leicht zu umgehen sind, ist vielen bekannt.

Dass es aber innerhalb von Sekunden zu realisieren ist, weiß vielleicht noch nicht jeder meiner Besucher.

Anbei zwei Videos, eins für Linux, eines für Windows.

UPDATE: Da in der Auflistung ja noch mindestens Mac OSX fehlte, hat Diazepam eine “Anleitung” dafür nachgeschoben und auch sogleich den Thron erobert. (Aufgrund von Suchmaschinen und Feedcrawlern werde ich aber den Postttitel nicht mehr ändern.)

Weiterlesen

10 Gratis-PDFs zum Thema Server von TecChannel.de

Einen verspäteten Rückblick der ganz besonderen Art liefert uns der das Online-Portal tecchannel.de. Die “besten Server-Artikel 2008” werden auf der Seite kostenlos zum Download als PDF angeboten (jeweils rechts in der Sidebar). Alternativ kann man sich auch den Beitrag online auf der Seite durchlesen.

Die Themen im Überblick:

Wie man sieht, nimmt es TecChannel mit dem Begriff “Server” nicht ganz so genau und streut die Themen sehr über alles, was mit Servern zu tun hat. Vielleicht ist ja trotzdem (oder gerade deswegen) für jemanden etwas Interessantes dabei.

Viel Spaß beim Stöbern.

Link: TecChannel.de: Top Server-Artikel 2008

Postfix: Absender bei Mailversand von der Konsole anpassen

Heute war ich mal wieder auf dem Optimierungstripp und wollte endlich mal erreichen, dass die von dem Inhouse-Linux-Server abgesendeten Mails (von Cronjobs usw.) nicht immer mit dem Namen des ausführenden Users erscheinen, sondern mit etwas aussagekräftigerem. Weiterhin werde ich der Vollständigkeit halber gleich auch noch erklären, wie man die Absenderadresse so umschreibt, dass man lokalen Usern mit lokaler Domain wie root@server3 (welche aus dem Internet nicht erreichbar wären) auch vernünftig antworten kann.

Weiterlesen

Installing Duplicity on OS/X 10.5 Leopard

Über die duplicity Mailingliste kam gerade eine Mail vom Maintainer von duplicity. Dieser leitete eine Mail weiter eines duplicity-Nutzers,der wohl einige Klippen umschiffen musste, um die Software unter OSX 10.5 (=Leopard) zum Laufen zu bekommen.

Er hat dies in eine Installationsanleitung verpackt und online gestellt. Für den einen oder anderen in einer heterogenen Umgebung könnte dies ja mal nützlich sein.

Weiterlesen

Hardware-Tools: (Ich will) wissen, was in dir steckt…

Als Sysadmin hat man so einige -vermeintlich einfache- Probleme, die dann im Detail doch etwas Verrenkungen bedeuten, um sie zu lösen.

Heute galt es herauszufinden, warum die Test-Installation von Open-Xchange nicht laufen will. Ein Blick ins Log ergab, dass der Prozess 256MB Ram anforderte – etwas zuviel für den Testserver mit 256MB abzüglich einer Onboard-Grafikkarte (also 240MB effektiv).

Nun zum nächsten Problem: Wie bekomme ich heraus unter Debian-Linux in der Konsole heraus, welche Art Speicher in welcher Verteilung verbaut ist, ohne den Server auszuschalten und zu öffnen?

Weiterlesen

WordPress 2.5 ShortCodes

Beim Browsen durchs Netz fiel mir ein Artikel auf, der eine sehr gute Einführung in eine neue WordPress-Funktion namens “ShortCodes” gibt. Die Funktion wird anscheinend in dem neuen Release von WordPress 2.5 unterstützt werden.

Das Ziel dieses Features wird sein, BBCode-artige Tags definieren zu können, die durch eine Callback-Funktion dann abgearbeitet werden. Dies funktioniert offensichtlich mit und ohne Parameter sowie mit Inhalt zwischen den Tags.

Diese Idee könnte das Schreiben von Inhalt verändernden WordPress-Plugins stark erleichtern. Wenn die Zeit gekommen ist, werde ich mich dem mal weiter annehmen.

Mehr Infos und Beispiele: WordPress 2.5 ShortCodes API Overview « planetOzh

Unglaubliche Fehler: Canon-Scansoftware arbeitet nicht mit zu langem Pfad

Letztens wollte ich mal wieder was scannen und musste feststellen, dass mein lieber Scanner nicht mehr arbeiten wollte. Er war fehlerfrei installiert und auch sonst schien alles normal. Einzig beim Aufruf der Scannervorschau oder des Scanvorgangs passierte wahlweise nichts oder es kam ein aussagekräftiges “TWAIN ERROR”.

Nach vielem Googlen, Neuinstallation der Treibersoftware in verschiedenen Versionen, der Verwendung unterschiedlicher Software zum Scannen usw stieß ich auf einen Hinweis in einem Forum, völlig versteckt zwischen den ganzen zuvor genannten “Lösungen”.

Weiterlesen

Pidgin: Kodierungsprobleme lösen

Seit meinem Umstieg von Trillian Basic, über PSI zu Pidgin habe ich das Problem gehabt, dass ich viele Sonderzeichen wie Umlaute usw. nicht richtig empfangen konnte und teilweise die Nachrichten gar nicht angezeigt werden konnten, da die Fehlermeldung:

(Es gab einen Fehler beim Empfang dieser Nachricht. Entweder haben Sie und XXX unterschiedliche Kodierungen gesetzt oder XXX hat einen fehlerhaften Client.)

Diese Nachricht erschien immer, wenn ein anderer Pidgin-User mir eine Nachricht mit Umlauten sendete – sehr nervig für beide Seiten, wenn immer auf Umlaute geachtet werden muss.

In einem Forum fand ich den Hinweis auf eine fehlerhafte GTK-Version, welche mit der aktuellen Pidgin 2.4.0 gebundelt wurde. Daher deinstallierte ich nur das GTK for Windows ( 2.12.8 Rev A ) und ersetzte es mit einer älteren Version ( 2.12.1 Rev B) von der Sourceforge-Seite von Pidgin.

Ergebnis: Umlaute werden wieder fehlerfrei angezeigt und alle sind glücklich.

Links:

PS: Vielen Dank an Elisabeth für den ersten Hinweis.

Patch erzeugen mit diff

Es gibt Dinge, die macht man nicht oft genug, um sie sich wirklich zu merken. Daher kann ich ja mal meinen Blog als Notizzettel verwenden, wenn ihr gestattet.

Um einen Patch einer Datei zu erhalten macht man einfach folgendes:

diff -u datei.org datei.bearbeitet > datei.patch

Die Dateinamen sprechen für sich, die Option -u führt dazu, dass nicht nur die geänderte Zeile angegeben wird, sondern auch noch umgebende Zeilen. Wenn sich also durch Anwendung mehrerer Patches die Zeilennummern geändert haben, so findet man leichter die richtige Position.

Ein Beispiel dazu findet ihr unter der Quelle: DOLINUX Protokoll vom 21.11.2001