/dev/tty…: Keine Berechtigung

Kurztipp: Um einem Benutzer Zugriffsrechte für eine serielle Schnittstelle zu geben, füge man ihn der Gruppe dialout hinzu. Die Änderung wirkt sich erst nach dem nächsten Login aus.

Beispiel: cutecom

dev-ttyS0

Beispiel: Direktzugriff auf das Device

dirk@n145:~$ echo "Hello World" > /dev/ttyUSB0
-bash: /dev/ttyUSB0: Keine Berechtigung

Beispiel: VirtualBox

dev-ttyS0-vb

Fehlt die Gruppenzugehörigkeit des Benutzers, der VirtualBox inklusive Durchreichen der seriellen Schnittstelle im Portmodus „Host-Schnittstelle“ verwendet, so kann die virtuelle Maschine wegen der fehlenden Zugriffsmöglichkeit gar nicht gestartet werden.

Lösung:

Nun wäre es möglich, eine Anwendung auch mittels sudo zu starten, aber oftmals ist es nicht erwünscht, dass Anwendungen mit root-Rechten laufen. Das Hinzufügen des jeweiligen Benutzers zur Gruppe dialout beseitigt das Problem.

dirk@n145:~$ sudo gpasswd --add dirk dialout
Benutzer dirk wird zur Gruppe dialout hinzugefügt.
dirk@n145:~$ logout
dirk@n145:~$ echo "Hello World" > /dev/ttyUSB0 && echo "ok" || echo "NOK"
ok

Wichtig: Erst ausloggen und wieder neu einloggen.

Ich habe mal etwas notiert

Ich habe in den letzten Tagen mal eine wenig mit Ubuntu Server 12.04 LTS herumgespielt, weil ich mich in Sachen Virtualisierung und Collaboration Platforms auf den neuesten Stand bringen will.

Als Vorbereitung auf eine Evaluierung von Zarafa wollte ich heute mal sehen, was eigentlich so zu tun ist, damit lokale Benutzer per mailx E-Mails versenden und empfangen können. Google, das Ubuntu-User-Wiki und eine FAQ von 1&1 waren meine Freunde, ich habe alles mal hier und auch hier aufgeschrieben.