Mails mittels postfix über smtp versenden

Es kommt öfters vor, dass man aus einer Konsole / aus Shell-Scripten Mails versenden muss. Dazu kann man postfix verwenden. Einzige Voraussetzung ist, dass man einen Mailserver zur Verfügung hat, welcher smtp kann. Weiters muss der Hostname des Rechners aufgelöst werden können. Unter Fedora/CentOS kann man postfix einfach mit yum installieren.

yum install postfix

Nun in der /etc/postfix/main.cf die Parameter

myhostname = servername.domain.tld
mydomain = domain.tld

Auskommentieren und korrekt setzen. Folgende Parameter müssen zusätzlich eingefügt werden

smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/smtp_auth
smtp_sasl_security_options = noanonymous

Die Datei /etc/postfix/smtp_auth muss mit folgendem Inhalt angelegt werden

smtp.server.tld Benutzername:Passwort

Wenn dies gemacht ist, kann man postfix prüfen und anschließend starten

postfix check
postmap smtp_auth
systemctl restart postfix.service
systemctl enable postfix.service

Unter CentOS/RHEL müssen diese Dienste mittels service und chkconfig gestartet und reboot-fest gemacht werden.

Processing als normaler User verwenden

Processing ist eine IDE, mit der man schnell Programme für die serielle Kommunikation mit einem arduino schreiben kann. Unter Fedora 18 wird jedoch beim Starten der seriellen Kommunikation der Fehler angezeigt, dass keine Rechte vorhanden sind, um ein Lock unter /run/lock zu erstellen. Dies kann man temporär beheben, indem man dem lock-Verzeichnis mit

chmod 777 lock

die Schreibrechte für jeden Benutzer gibt. Dies gilt dann jedoch nur bis zum nächsten Reboot. Damit es nach einem Reboot auch noch funktioniert, muss man die /usr/lib/tmpfiles.d/legacy.conf nach /etc/tmpfiles.d kopieren und die Zeile

d /run/lock 0755 root root -

wie folgt ändern.

d /run/lock 0777 root root -

vim mit Arduino-Syntax

Die originale Arduino-IDE ist für jemand der vim gewohnt ist, nicht wirklich brauchbar. Es gibt jedoch ein Arduino Syntax File für vim welches man sich von HIER herunterladen kann. Das File muss dann unter ~/.vim/syntax abgelegt und in die ~/.vimrc folgender Eintrag eingefügt werde.

autocmd! BufNewFile,BufRead *.ino setlocal ft=arduino

Nun hat man beim öffnen/erstellen eines *.ino Files ein Syntax-Highlighting. Für das kompilieren und uploaden des Files auf den Arduino kann man immer noch die Arduino-IDE verwenden. Hier sollte man dann aber unter Preferences die Funktion “Use external editor” aktivieren. Dann wird beim kompilieren des Programms automatisch der aktuelle Code eingelesen welcher im vim gespeichert wurde.

NoMachine NX unter Fedora 18

Unter Fedora 18 macht der NX-Server von NoMachine etwas Probleme. Fragt man z.b. den Status ab, bekommt man diese Meldung.

#nxserver --status
NX> 900 Connecting to server ...
NX> 204 Authentication to NX server failed.
NX> 110 NX Server is stopped.
NX> 999 Bye.

Das starten des NX-Servers wird dann jedoch mit folgender Ausgabe kommentiert.

# nxserver --start
NX> 500 Service already running.
NX> 999 Bye.

Das Problem ist, dass NX die Authorized Keys im Verzeichnis /usr/NX/home/nx/.ssh als authorized_keys2 ablegt. Lösen kann man das ganze, indem man einen Symlink auf authorized_keys anlegt.

cd /usr/NX/home/nx/.ssh
ln -s authorized_keys2 authorized_keys

Nach dem anlegen dieses Symlinks funktioniert der NX-Server wie er sollte.

Cyborg R.A.T 5 mit X.Org

Wie im letzten Blogpost geschrieben, kann die Cyborg R.A.T 5 mittels Xmodemap unter Fedora betrieben werden. Eine weitere Möglichkeit ist, X.Org zu verwenden. Bei Fedora gibt es standardmäßig keine xorg.conf mehr. Hier kann man unter /etc/X11/xorg.conf.d eine Konfigurationsdatei anlegen. Am besten wählt man einen sprechenden Namen (z.b. 90-rat.conf). Der Inhalt sieht dann wie folgt aus.

1
2
3
4
5
6
7
8
Section "InputClass"
  Identifier "R.A.T"
  MatchProduct "R.A.T.5"
  MatchDevicePath "/dev/input/event*"
  Option "ButtonMapping" "1 2 3 4 5 6 7 8 9 0 0 0 0 0 0 0 0"
  Option "AutoReleaseButtons" "13 14 15" 
  Option "ZAxisMapping" "4 5 6 7"
EndSection

Nachdem die Konfigurationsdatei erstellt wurde, muss nur noch der X-Server neu gestartet werden.

Cyborg R.A.T 5 unter Fedora

Die Gaming Mouse Cyborg R.A.T 5 hat einen Mode-Switch, welcher dazu führen kann, dass die Mausklicks eine unerwünschte Funktion ausführen bzw. nicht mehr funktionieren. Diesen Mode-Switch kann man mit folgendem Eintrag in der /etc/X11/Xmodmap deaktivieren.

pointer = 1 2 3 4 5 6 7 8 9 10 11 12 0 0 0 0 0

Nach dem Anpassen der Konfiguration muss der X-Server neu gestartet werden. Dies sollte auch für die R.A.T 7 und R.A.T 9 funktionieren.

Fedora 18: unlesbare Menüs in Opera

Nach dem Upgrade auf Fedora 18 waren die Menüs in Opera unlesbar. Opera versucht hier, die Desktop-Einstellungen auszulesen. Jedoch funktioniert dies nicht unter allen Desktop-Umgebungen korrekt und das Opera eigne Toolkit funktioniert hier nicht korrekt. Dies kann behoben werden, indem man opera:config aufruft und den Parameter Dialog Toolkit ändert. Diesen kann man auf folgende Werte setzen.

  • 0 – Autodetect toolkit to use for file selector (default)
  • 1 – Use QT for file selector (deprecated, will fall back to KDE)
  • 2 – Use GTK for file selector
  • 3 – Use KDE for file selector
  • 4 – Use X11 for file selector

Nach dem setzen des Parameters muss Opera neu gestartet werden. Mit dem Wert 4 werden die Menüs unter openbox wieder korrekt dargestellt.

Fontconfig warning

Wenn eine .fonts.conf im Home-Verzeichnis liegt, taucht bei diversen Programmen folgende Meldung auf.

Fontconfig warning: "/etc/fonts/conf.d/50-user.conf",
line 9: reading configurations from ~/.fonts.conf is deprecated.

In der 50-user.conf steht dann noch, dass die Zeilen in Zukunft entfernt werden. Um die Meldung zu verhindern und zu garantieren, dass die Font-Konfiguration auch in Zukunft noch funktioniert muss im Home-Verzeichnis unter ~/.config ein Verzeichnis fontconfig angelegt werden und die ~/.fonts.conf dorthin verschoben nach fonts.conf werden.

mkdir ~/.config/fontconfig
mv ~/.fonts.conf ~/.config/fontconfig/fonts.config

Nach einem erneuten Login greift dann die neue Font-Konfiguration und die Meldung taucht nicht mehr auf

Fedora 18: openbox shutdown

Unter openbox in Fedora 18 funktioniert der HIER beschriebene Weg für einen shutdown bzw. reboot nicht mehr. Stattdessen muss man im ~/.config/openbox/menu.xml für den Menüpunkt Shutdown

dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Stop

und für Reboot

dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Manager org.freedesktop.ConsoleKit.Manager.Restart

bei execute eintragen. Nach einem Reconfigure funktioniert dann der Shutdown und Reboot wie gewohnt.

Upgrade Fedora 17 nach Fedora 18 mit yum

Wichtiger Hinweis: Der Upgrade mittels yum wird vom fedoraporject nicht offiziell unterstützt. Deshalb gilt auch mit dieser Anleitung: der Upgrade mit yum wird auf eigene Gefahr hin durchführt.

Der erste Schritt beim Upgrade ist, dass unbenutzte Konfigurationsdateien entfernt werden sollen. Dies kann mit dem Tool rpmconf gemacht werden. Weiterlesen