/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.