Archive for the ‘ Linux ’ Category

Parallels Prüfung bestanden

Seit gestern bin ich nun "Parallels Certified Automation Engineer (PCAE) on Parallels Panel for Linux". Das heisst ich kann das Parallels Plesk Panel nun offiziell bedienen ;-)

Obwohl mir von Parallels abgeraten wurde die Prüfung ohne vorgängigen Kurs zu absolvieren habe ich diese ohne Probleme bestanden und somit viel Geld gespart.

Kernel upgrade aus der Ferne – ohne “panic”

Wenn man mal wieder einen neuen Kernel einspielen will und der Server nicht gleich um die Ecke steht, kann man häufig ein Unwohlsein verspüren.  Dies geht vermutlich nicht nur mir so.

Grub bietet die Möglichkeit bei einer "kernel panic" einen anderen Kernel zu laden, vorzugsweise einen bereits getesteten und bewerten Kernel.

Um dies zu erreichen, muss man in "/boot/grub/menu.lst" den Parameter "panic=5" bei dem zu testenden Kernel ergänzen.

Beispiel:

default         1
timeout         5

# neuer kernel, ungetestet
title           Debian GNU/Linux, kernel 2.6.18-6-686
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.18-6-686 root=/dev/sda1 ro panic=5
initrd          /boot/initrd.img-2.6.18-6-686

# getesteter, lauffähiger kernel
title           Debian GNU/Linux, kernel 2.6.18-5-686
root            (hd0,0)
kernel          /boot/vmlinuz-2.6.18-5-686 root=/dev/sda1 ro
initrd          /boot/initrd.img-2.6.18-5-686

Um nun den neuen Kernel einmalig zu starten müssen Sie folgende Schritte ausführen:

servername:~# grub
grub> savedefault --default=0 --once
grub> quit

Danach mit den Server neu starten und abwarten ob der neue Kernel gebootet wird.

servername:~# reboot

Das wars ...

QMail – Mail-Versand sehr langsam

Bei manchen Servern dauert das Versenden von eMails mit QMail als Mailserver sehr lang. Dieses Problem tritt insbesondere in Verbindung mit Plesk auf, da Plesk die Konfigurationen oft neu generiert.
Die Ursache des Problems ist, dass QMail versucht die Reverse-DNS der IP aufzulösen - passiert hier ein Fehler, gibt es einen “Timeout” und erst danach kann die Mail versendet werden. Um dies zu deaktivieren muss man in der inetd.conf einen Parameter setzen.

Um das auflösen des Reverse-DNS zu verhindern, müssen wir den -Rt0 Parameter einfügen.

In /etc/inetd.conf muss in den Zeilen smtp und smtps einfach -Rt0 nach tcp-env eingefügt werden.

Bsp:

smtp stream tcp nowait.1000 root /var/qmail/bin/tcp-env tcp-env -Rt0 /usr/bin/env […]

Danach den inetd neu starten mit

/etc/init.d/openbsd-inetd restart

Testdatei mit bestimmter Grösse erstellen

Es kommt vor. Da braucht man eine Datei bestimmter Größe und hat keine passende da. Bevor man Google bemüht, kann man auch einfach dd nutzen.

Eine 10MB große Datei aus Nullen erstellt man mit:

dd if=/dev/zero of=10mb bs=1024 count=10k

"of=10mb" gibt den Dateinamen an, in diesem Fall wird die Datei "10mb" heissen.
"count=10k" gibt die Grösse der Datei an 10'000x 1kByte = 10MB.

Wenn man die Datei lieber mit zufälligen Werten gefüllt haben möchte ersetzt man /dev/zero mit /dev/random oder gar /dev/urandom.

eAccelerator auf debian etch

HowTo für die Installation des eAccelerator auf einem debian etch System.

eAccelerator ist eine Open Source Software zum Einsatz auf Webservern, die als Beschleuniger, Optimierer, Encoder und Cache für PHP-Seiten dient.

Die neuste eAccelerator Version gibts immer unter eaccelerator.net.
Zuerst brauchen wir die Source Files von eAccelerator...

cd /usr/src/eaccelerator/
wget http://bart.eaccelerator.net/source/0.9.5.2/eaccelerator-0.9.5.2.tar.bz2

Das entpacken wir dann...

tar xvfj eaccelerator-0.9.5.2.tar.bz2
cd eaccelerator-0.9.5.2

und zu guter letzt kompilieren...

phpize
./configure
make
make install

Die Installation legt automatisch die eaccelerator.so im notwendigen Ordner ab, so dass man nur noch die php.ini editieren muss.

vi /etc/php5/apache2/php.ini

Irgendwo am Ende der php.ini fügt man folgende Zeilen hinzu...
(Dies ist eine Beispiel Konfiguration, bitte an eure Bedürfnisse anpassen)

[eAccelerator]
extension="eaccelerator.so"
eaccelerator.shm_size="32"
eaccelerator.cache_dir="/tmp"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"