Michael`s Blog OSS/Linux, networking and my private life

28Okt/103

Hallo Lastpass – auf Wiedersehen 1password

An all die 1password Benutzer da draußen:

es gibt eine Alternative die sogar noch plattformübergreifend funktioniert

Zu finden ist das ganze unter Lastpass.com dabei agiert gerade die Browserintegration ähnlich zu 1password. Mit einem Master Passwort wird die Keychain freigeschalten und man kann auf die vorhandenen Passwörter zugreifen. Die Integration erfolgt ebenfalls über einen Button in Safari und eben auch Firefox, InternetExplorer, Chrome, usw. aber lest einfach selbst wo Lastpass überall funktioniert, zu finden ist das hier.

Einzig die iPhone App erfordert ein Upgrade auf die Pro Version und kostet in Form einer jährlichen Zahlung, die iPad App ist ähnlich der von 1password und sogar kostenlos.

Ich nutze Lastpass jetzt seit zwei Wochen und bin restlos begeistert, 1password ist bereits verschwunden! :)

15Aug/100

Stromsparender Fileserver mit Suspend

Nachdem jetzt eine ewige Zeit lang bei mir 24x7 ein Server lief, habe ich mich entschlossen diesen nun auszumustern und eine stromsparendere Variante zu bauen. Ziel war es einen Fileserver zu haben, der per Wake-on-LAN aufgeweckt werden kann und nicht ständig laufen muss. Wichtig war mir auch ein möglichst schnelles Aufwachen des Servers, wer will schon lange warten um auf Dokumente zuzugreifen.

Um das Problem zu lösen läuft jetzt ein Debian Lenny mit aktuellem Kernel aus den Backports.

puppy:~# uname -r
2.6.32-bpo.5-amd64

Allein das Aktualisieren des Kernels hat durch die aktivierten Stromsparfeatures (vor allem cpufreq) den Verbrauch um ca. 20 Watt verringert.

Zusätzlich will ich den Server nicht immer manuell Runterfahren müssen, also bin ich auf die Suche nach einem bereits vorhandenem Checker gegangen der zum einen prüft ob jemand per SSH verbunden ist, zum anderen aber im Netzwerk die üblichen Verdächtigen auf Aktivität prüft um sicherzustellen, daß der Server nicht runtergefahren wird wenn er benötigt wird.
Fündig wurde ich beim "server-sleepd", anscheinend wurde das Teil mal von Heise gebaut, zu finden ist das Shell Skript unter http://mercurial.intuxication.org/hg/server-sleepd.
Innerhalb des Skriptes kann unterschieden werden was mit dem Server beim Herunterfahren passieren soll, in meinem Fall wird "pm-suspend" aufgerufen um Ihn Schlafen zu legen.

Probleme hatte ich allerdings beim WOL, mir war es nicht möglich den Server wieder aufzuwecken. Der Fehler ist schlicht bei einem deaktiverem WOL auf der Netzwerkkarte und dem deaktivertem Wakeup Event der Netzwerkkarte im ACPI zu suchen.

Aussehen sollte das ganze wie folgt:

puppy:~# cat /proc/acpi/wakeup
Device	S-state	  Status   Sysfs node
PS2K	  S4	 disabled  pnp:00:0a
UAR1	  S4	 disabled  pnp:00:0b
NSMB	  S4	 disabled  pci:0000:00:01.1
USB0	  S4	 disabled  pci:0000:00:02.0
USB2	  S4	 disabled  pci:0000:00:02.1
NMAC	  S5	 enabled   pci:0000:00:07.0
P0P1	  S4	 disabled  pci:0000:00:04.0
HDAC	  S4	 disabled  pci:0000:00:05.0
BR10	  S4	 disabled  pci:0000:00:09.0
BR12	  S4	 disabled  pci:0000:00:0c.0
BR11	  S4	 disabled  pci:0000:00:0b.0
puppy:~# ethtool eth0
Settings for eth0:
	Supported ports: [ MII ]
	Supported link modes:   10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Full
	Supports auto-negotiation: Yes
	Advertised link modes:  10baseT/Half 10baseT/Full
	                        100baseT/Half 100baseT/Full
	                        1000baseT/Full
	Advertised auto-negotiation: Yes
	Speed: 1000Mb/s
	Duplex: Full
	Port: MII
	PHYAD: 1
	Transceiver: external
	Auto-negotiation: on
	Supports Wake-on: g
	Wake-on: g
	Link detected: yes

Wichtig hierbei ist, das in /proc/acpi/wakeup bei der jeweiligen Netzwerkkarte "enabled" im Status steht, ansonsten werden Events von dieser Source nicht zum Aufwecken verwendet.
Die richtige PCI ID der Netzwerkkarte findet sich über "lspci".

Gesetzt wird das ganze bei mir in /etc/network/interfaces beim Starten der Netzwerkverbindungen.

up ethtool -s eth0 wol g
up echo NMAC > /proc/acpi/wakeup

veröffentlicht unter: it, kernel, linux keine Kommentare
6Aug/100

SLES11 Mirror

Analog zum SLES10 Mirror bietet die UNI Regensburg auch wieder sämtliche Pakete für SLES11 an.
Zu finden ist der Spiegel unter http://demeter.uni-regensburg.de

5Aug/102

Alix 2D13 als Firewall

Seit kurzem betreibe ich ein Alix 2d13 als Firewall bei mir am Entertain Anschluss.

Bestellt hab ich das Teil als Bundle bestehend aus dem Alix, Gehäuse, CF-Karte und Netzteil beim Varia-Store. Als Firewall Distribution habe ich mich für IPFire entschieden, Grund hierfür war die native Alix sowie VDSL Unterstützung mit VLAN7 und 8 für IPTV, zusätzlich gibt es ein Paket für den notwendigen igmpproxy.

Das ganze Teil funktionert wirklich perfekt und die Performance gerade beim VPN ist deutlich besser als bei meinem vorherigen Telekomrouter bzw. der gefritzten Version davon. Die Installation ist sogar Schritt für Schritt in der Dokumentation beschrieben.

Das letzte große Update von IPFire 2.5 auf 2.7 hat zwar bei der Installation ein wenig Zeit erfordert hat aber in Summe ohne Fehler funktioniert, spricht also für die Qualitativ hochwertige Arbeit in der IPFire Distribution

Alles in allem ein gelungenes Paket und jedem weiter zu empfehlen der ein Händchen für Hardware und Linux hat.

veröffentlicht unter: it, linux, networking, routing 2 Kommentare
10Dez/090

rootdelay beim Linux Boot

Gerade eben hatte ich bei einer nagelneuen Linux Installation ein Problem beim ersten Booten des neuen Systems. Der Fehler war nicht von Anfang an ersichtlich, nach längerem Debugging hat sich der Fehler wie folgt dargestellt:

Beim Übergang vom Initrd zum Kernel und dem Mounten des Filesystems meldete Grub folgenden Fehler:

ALERT! /dev/sda2 does not exist. Dropping to a shell!

Danach begrüßte mich eine BusyBox Shell von der ich leider nicht weiter kam.

Problem war schlicht das beim Laden des SAS-Controller Modules (mptsas) braucht das System viel zu lange um die Platten zu finden und bricht mit einem Timeout ab.

Der Fehler lässt sich durch den Parameter

rootdelay=45

in der Kernel Commandline beheben.

Siehe auch hier bei Launchpad beschrieben.

26Jan/091

Umstellung auf lighttpd

Nachdem ich mich vor kurzem dazu entschlossen habe diesen Webserver von Apache auf Lighttpd umzustellen hier ein Load-Graph aus dem NagiosGrapher der den Zeitpunkt der Umstellung relativ genau erahnen lässt:

Load Graph

Wie man sieht hat sich vom 19.01. bis zum 20.01. die Load des Servers geringfügig nach unten verändert ! :)

Alle meine Websites laufen mittlerweile mit Lighttpd, ich bin echt begeistert davon.

8Dez/080

Vergleich gängiger Dateisysteme unter Linux

Oft steht man bei der Installation eines Servers vor der Wahl welches Dateisystem genommen werden soll.

Hier ein Vergleichen verschiedener Filesysteme (xfs,jfx,reiserfs und ext2/3)

17Nov/080

SLES10 Mirror

Nachdem ich immer häufiger nach einem SLES10 Mirror im Netz gesucht habe hier mal ein reminder.

Auf: http://demeter.uni-regensburg.de/ sind sämtliche Pakete zu finden.

Vielen Dank an die Uni Regensburg hierfür.

24Okt/084

Apache2 mpm-worker und fcgid

Nachdem gefühlt der Apache auf dieser Website gelegentlich mal denkpausen gebraucht hat habe ich mich dazu entschlossen die mpm-prefork mit der mpm-worker Version zu ersetzen, zusätzlich wird nun PHP durch FastCGI aufgerufen.

Anbei eine kleine Konfigurationsanleitung.

  • Installation der benötigten Pakete:

aptitude install libapache2-mod-fcgid apache2-mpm-worker php5-cgi

  • Konfiguration des Apache

a2dismod php5
a2enmod actions
a2enmod fcgid

  • Anpassen der Apache Konfigurationen

/etc/apache2/mods-enabled/fcgid.conf

    AddHandler fcgid-script .fcgi
    SocketPath /var/lib/apache2/fcgid/sock
    IPCConnectTimeout 60

/etc/apache2/conf.d/php5-fcgid.conf

    # Path to php.ini – defaults to /etc/phpX/cgi
    DefaultInitEnv PHPRC=/etc/php5/cgi

    # Number of PHP childs that will be launched. Leave undefined to let PHP decide.
    #DefaultInitEnv PHP_FCGI_CHILDREN 3

    # Maximum requests before a process is stopped and a new one is launched
    DefaultInitEnv PHP_FCGI_MAX_REQUESTS 2500

    # Define a new handler "php-fcgi" for ".php" files, plus the action that must follow
    AddHandler php-fcgi .php
    Action php-fcgi /fcgi-bin/php-fcgi-wrapper

    # Define the MIME-Type for ".php" files
    AddType application/x-httpd-php .php

    # Define alias "/fcgi-bin/". The action above is using this value, which means that
    # you could run another "php5-cgi" command by just changing this alias
    Alias /fcgi-bin/ /var/www/fcgi-bin.d/php5-default/

    # Turn on the fcgid-script handler for all files within the alias "/fcgi-bin/"

        SetHandler fcgid-script
        Options +ExecCGI

  • Anlegen des Wrapper unter

/var/www/fcgi-bin.d/php5-default/php-fcgi-wrapper

#!/bin/sh
# Wrapper for PHP-fcgi
# This wrapper can be used to define settings before launching the PHP-fcgi binary.

# Define the path to php.ini. This defaults to /etc/phpX/cgi.
#export PHPRC=/var/www/fcgi-bin.d/php5-web01/phprc
export PHPRC=/etc/php5/cgi

# Define the number of PHP childs that will be launched. Leave undefined to let PHP decide.
export PHP_FCGI_CHILDREN=5

# Maximum requests before a process is stopped and a new one is launched
export PHP_FCGI_MAX_REQUESTS=5000

# Launch the PHP CGI binary
# This can be any other version of PHP which is compiled with FCGI support.
exec /usr/bin/php5-cgi

  • den neuen Wrapper ausführbar machen

chmod +x /var/www/fcgi-bin.d/php5-default/php-fcgi-wrapper

  • Schließlich muss der Apache noch neu gestartet werden

/etc/init.d/apache2 restart

20Sep/081

Samba Performance optimierungen

Nachdem ich aktuell immer wieder auf der Suche nach diversen "verschnellerungen" für mein Heimnetzwerk bin war jetzt Samba an der Reihe, zu beginn waren maximal 6Mbit Übertragungsrate egal ob über PowerLAN oder WLAN.

Verwendet wird bei mir das standart Debian Etch Paket, folgende Änderungen haben in kombination für eine Verbesserung um ca. 14 MBit gesorgt:

write cache size = 262144
max xmit = 131072
use sendfile = yes
strict locking = no
socket options = IPTOS_LOWDELAY TCP_NODELAY SO_RCVBUF=65536 SO_SNDBUF=65536

Die größte Verbesserung wurde allerdings durch erhöhung der SO_RCVBUF und SO_SNDBUF Variablen erzielt, vorher war hier jeweils 8192 hinterlegt.

Mittlerweile bin ich bei knapp 20Mbit da geht aber sicher noch was.