NFS debuggen

Um NFS-Probleme zu debuggen ist das tool: rpcdebug sehr nützlich.

Auf dem Server wird es aktiviert mittels ausführen von:

rpcdebug -m nfsd -s proc

Zum Deaktivieren:

rpcdebug -m nfsd -c

Auf dem Client wird es aktiviert mittels ausführen von:

rpcdebug -m nfs -s proc

Zum Deaktivieren:

rpcdebug -m nfs -c

Die debug log-messages werden in die syslog facility kern.debug geschrieben.

Quelle: [https://www.serverstack.com/blog/2012/11/21/debugging-nfs-file-access-on-server-and-client-side/|Debugging NFS File Access on Server and Client Side]

mysql: Incorrect key file for table ‚/tmp/#sql_[…]

mysql bringt im log die Meldung:

[ERROR] /usr/libexec/mysqld: Incorrect key file for table '/tmp/#sql_[...]

Diese Fehlermeldung ist etwas verwirrend, da temporäre Tabellen sicher nicht repariert werden müssen.

Stattdessen heisst diese Meldung einfach, dass das /tmp Filesystem voll ist und mysql seine temporären Tabellen nicht mehr speichern kann.

Abhilfe schafft ein mysql Restart und ggf. ein vergrössern des tmp Filesystems.

Quelle: mysqlperformancetuning.com: [http://www.mysqlperformancetuning.com/a-fix-for-incorrect-key-file-for-table-mysql|A fix for "Incorrect key file for table ‚/tmp/#sql_xxxx_x.MYI’" in MySQL]

roundcube: Login schlägt mit „Invalid server name“ fehl

Wenn man sich bei roundcube (0.8.4) anmelden will kommt die Meldung:

Invalid server name.

Dies scheint ein Bug in roundcube zu sein und passiert lustigerweise nur beim Zugriff mit Internet Explorer, wenn man in config/main.inc.php in der Variable $rcmail_config[‚default_host‘] mehrere Hosts konfiguriert-, aber einen oder mehrere davon auskommentiert hat.

Beispiel:
Dies würde zum o.g. Fehler führen:

$rcmail_config['default_host'] = array(
  'ssl://mail.example.org' => 'Default Server',
  /*'ssl://mail.example.org' => 'TEST Server'*/
);

Dies hingegen nicht:

$rcmail_config['default_host'] = array(
  'ssl://mail.example.org' => 'Default Server',
  'ssl://mail2.example.org' => 'TEST Server'
);

Die derzeitige Lösung ist deshalb, dass man keine "auskommentierten" hosts in der Konfiguration stehen hat.

Und falls man nur einen Server verwendet kann man diese Direktive nehmen:

$rcmail_config['default_host'] = 'ssl://mail.example.org';

Und falls man, wie ich die multi-host Variante zu Referenzzwecken im configfile haben möchte, schreibt man diese einfach unten separat hin:

$rcmail_config['default_host'] = 'ssl://mail.example.org';
// Enable this for multi-server configuration
#$rcmail_config['default_host'] = array(
#  'ssl://mail.example.org' => 'Default Server',
#  /*'ssl://mail2.example.org' => 'TEST Server'*/
#);

Edit: Das Problem wurde gerade mal wenige Minuten, nachdem ich den Bug eröffnet hatte bereits behoben!“ – So wünscht man sich Softwareentwicklung! (:wink:)

Perl-FTP bricht mit der Meldung: „Can’t use an undefined value as a symbol reference“ ab

Wenn man über das Perl-Modul Net::FTP ein file über FTP hochladen will bricht die Verbindung mit der message:

Can't use an undefined value as a symbol reference at /usr/share/perl5/Net/FTP/dataconn.pm line 54

ab.

So geschehen beispielsweise beim REOBack backup-script.
Das liegt daran, weil das Perl-Modul standardmässig Passive-FTP verwendet, mit dem manche Server Probleme haben können.

Um das Problem zu beheben, sucht man nach der Zeile:

Net::FTP->new($server, <i>[...]</i>

und fügt den Paramater "Passive => 0" an:

Net::FTP->new($server, Passive => 0, <i>[...]</i>

Quellen

Thunderbird zeigt mit sieve gefilterte Mails nicht an

Solange man den internen (lokalen) Filter von Thunderbird benutzt wird jedes neu eintreffende Mail nach der Sortierung im jeweiligen Verzeichnis angezeigt.

Filtert man nun jedoch auf dem Server mit sieve, bleibt dies aus und man sieht die neuen Mails erst, wenn man das Unterverzeichnis öffnet.

Dies lässt sich mit dem Parameter:

mail.server.default.check_all_folders_for_new

einstellen, welcher man auf true setzten muss. Ab dann werden die Verzeichnisse auch bei der sieve-Filterung sofort fett markiert und die Zahl der ungelesenen Mails darin angepasst.

Quellen:

OpenVPN: Connect script failed

Wenn man bei OpenVPN, bzw. genauer gesagt dem OpenVPN-GUI nach dem Verbinden ein script ausführt, das manchmal etwas länger dauert, bekomme man die Fehlermeldung:

openvpn connect script failed. ( exit code =1)

oder auch:

Connect script failed. Timeout after 15 secs

Dieses Timeout kann man in der Registry hoch setzen. Dazu einfach im Schlüssel: HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\OpenVPN-GUI den Wert: connectscript_timeout vom Standard 15 entsprechend setzen, z.B.: auf 60.

Quellen

apache: Umlaute werden nicht richtig dargestellt

Wenn beim apache Webserver Text oder HTML Dateien mit falschen Umlauten angezeigt werden, liegt dies meist an den Zeichensatz Einstellungen.

Mittels der [http://httpd.apache.org/docs/2.2/mod/core.html#adddefaultcharset|AddDefaultCharset]-Direktive kann ein Zeichensatz angegeben werden, der für alle Dateien gilt; dieser verändert jedoch die Standard-Einstellung des Browsers und führt so manchmal zu verkorksten Umlauten. Deshalb sollte diese Einstellung Standardmässig auf "Off" sein.
Bei RHEL/CentOS ist diese in der Standardeinstellung jedoch auf UTF-8, wahrscheinlich um Kompatibilität mit alten Scripts wo der Zeichensatz nicht definiert ist zu wahren.
Ist dies so, sollte die Einstellung in der httpd.conf erstmal auf "Off" gestellt werden.

Werden die Umlaute immer noch nicht korrekt dargestellt, kann man auf Verzeichnisebene (über .htaccess files) mit der Direktive "AddDefaultCharset" experimentieren.
Ebenfalls kann man mit der [http://httpd.apache.org/docs/2.2/en/mod/mod_mime.html#addcharset|AddCharset]-Direktive dies für einzelne Dateitypen (z.B. .txt) Einstellen.

[stextbox id=“tip“ caption=“Tip: httpd.conf Einstellungen überschreiben“]In der Zentralen httpd.conf des apache Webservers sollte so wenig wie möglich verändert werden um spätere upgrades nicht kompliziert zu machen.

Deshalb legt man am besten eine weitere Datei mit dem Namen: httpd-override.conf an und bindet diese mit der Include-Direktive am Schluss der httpd.conf ein:

Include conf/httpd-override.conf

Darin kann man dann die Standard-Einstellungen jeweils „überschreiben“.[/stextbox]

Quellen:

putty: Zeichensatz auf UTF-8 ändern

Heutzutage sind viele Systeme auf den universellen Zeichensatz UTF-8 eingestellt, so auch Linux.
Wenn man sich nun aber über putty mit SSH verbindet, wird man feststellen, dass die Umlaute, z.B. nei vi/vim oder ls nicht richtig dargestellt werden.

Schuld ist hier eine Einstellung in putty, die noch auf ISO-8859-1 eingestellt ist.

Ändern kann man dies in den putty Einstellungen über change settings -> Translation, wo der Zeichensatz auf UTF-8 umgestellt werden sollte.
Am besten macht man dies gleich auch für den "Default Settings" Eintrag, so dass neue hinzugefügte hosts automatisch diese Einstellung benutzen.

Quellen

DVDFab startet nicht

Bei Windows XP SP3 kann es vorkommen, dass die Software "DVDFab" nicht mehr startet und stattdessen einfach im Hintergrund des Tankmanagers bleibt.

Der Grund liegt am Treiber gewisser Grafikkarten. Reparieren lässt sich dies mit dem folgenden Registry-Fix:

[HKEY_LOCAL_MACHINESOFTWAREDVDFab]
"FabPlayDll"=dword:00000001

Ressourcen

DVDFab Forum: [http://forum.dvdfab.com/showthread.php?t=13199&page=3|DVDFab won’t open on XP SP3]

CentOS 5: postfix mit mysql Unterstützung

Am Anfang war der Workaround …

…welcome to the real world, admin! 😉

Leider hat das postfix-Paket im CentOS 5 (Ab CentOS 6 ist das behoben!) Standard Repository die mysql-Unterstützung nicht einkompiliert, welche man oft dringend braucht. Glücklicherweise ist diese im CentOS Plus Repository vorhanden, welches man nur noch einzurichten braucht. ABER VORSICHT: Es muss dann sichergestellt werden, dass postfix niemals mehr vom Base-Repository updatet wird, da ansonsten die mysql-Unterstützung wieder fehlt. Wir werden das hier so Einrichten.

Zuerst mal müssen wir schauen, dass in der Datei "/etc/yum.repos.d/CentOS-Base.repo"

der Eintrag für das CentOSPlus repository vorhanden und aktiviert ist; wenn nicht einfach einfügen, bzw. enabled=1 setzen. Ausserdem darauf schauen, dass unter jedem repository der Eintrag:

exclude=postfix<em>

vorhanden ist, AUSSER bei [centosplus] wo das stehen muss:

includepkgs=postfix</em>

Die Datei: /etc/yum.repos.d/CentOS-Base.repo müsste also etwa so aussehen:

[base]
name=CentOS-$releasever - Base
mirrorlist=<a href="http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os" target="blank">http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os</a>
#baseurl=<a href="http://mirror.centos.org/centos/$releasever/os/$basearch/" target="blank">http://mirror.centos.org/centos/$releasever/os/$basearch/</a>
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postfix*
 
#released updates
[updates]
name=CentOS-$releasever - Updates
mirrorlist=<a href="http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates" target="blank">http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates</a>
#baseurl=<a href="http://mirror.centos.org/centos/$releasever/updates/$basearch/" target="blank">http://mirror.centos.org/centos/$releasever/updates/$basearch/</a>
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postfix*
 
#packages used/produced in the build but not released
[addons]
name=CentOS-$releasever - Addons
mirrorlist=<a href="http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons" target="blank">http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons</a>
#baseurl=<a href="http://mirror.centos.org/centos/$releasever/addons/$basearch/" target="blank">http://mirror.centos.org/centos/$releasever/addons/$basearch/</a>
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postfix*
 
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=<a href="http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras" target="blank">http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras</a>
#baseurl=<a href="http://mirror.centos.org/centos/$releasever/extras/$basearch/" target="blank">http://mirror.centos.org/centos/$releasever/extras/$basearch/</a>
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postfix*
 
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
mirrorlist=<a href="http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus" target="blank">http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus</a>
#baseurl=<a href="http://mirror.centos.org/centos/$releasever/centosplus/$basearch/" target="blank">http://mirror.centos.org/centos/$releasever/centosplus/$basearch/</a>
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
includepkgs=postfix*
 
#contrib - packages by Centos Users
[contrib]
name=CentOS-$releasever - Contrib
mirrorlist=<a href="http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib" target="blank">http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=contrib</a>
#baseurl=<a href="http://mirror.centos.org/centos/$releasever/contrib/$basearch/" target="blank">http://mirror.centos.org/centos/$releasever/contrib/$basearch/</a>
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
exclude=postfix*