Linux Fehler „Cannot probe /dev/ttyUSB0 Port in use“

Im konkreten Fall ging es um einen Asic der nicht laufen wollte. Die Fehlermeldung deutet allerdings nicht so wirklich auf das eigentliche "Problem" hin. Und es lässt sich recht trivial lösen. 

Auftreten kann das Problem mit jedem Linux. Mir wurde es in Verbindung mit einem Mint gemeldet. Es ging um einen kleinen Bitcoin Miner der sich nicht  ansprechen lassen wollte. Die Fehlermeldung suggeriert das der Port benutzt würde was nur bedingt richtig ist. Dahinter steckt ein Berechtigungsproblem das eigentlich kein Problem, sondern ein Sicherheitsfeature ist. Aber sehen wir uns zunächst an wem diese Ports gehören. Das geht über:

ls -l /dev/ttyUSB*
 
Das erzeugt ungefähr so eine Ausgabe: 
crw-rw---- 1 root dialout 188, 0 Dez 13 16:21 /dev/ttyUSB0
 
Das Listing zeigt uns das root und die Gruppe dialout Zugriff auf diese Ports haben, was Sinn macht damit nicht jeder Benutzer direkt auf die Ports greifen kann. Für einen Benutzer der da nicht dazugehört stellt sich das so dar als würde der benutzt, was ja auch stimmt. Von jemand anderem halt. Checken wir als nächstes den Benutzer der den besagten Miner ansprechen will. Das geht über:  
 
id -Gn <username>
 
Als Ausgabe erhält man eine Liste der Gruppen der dieser User angehört, also beispielsweise das: 
<username> cdrom sudo dip plugdev lpadmin vboxsf sambashare vboxusers
 
Der Benutzer ist also nicht root und er gehört auch nicht zur Gruppe dialout was das Problem erklärt. Gelöst wird das indem wir einfach den Benutzer zur Gruppe dialout hinzufügen:
 
sudo usermod -a -G dialout <username>
 
Damit gehört der Benutzer zur Gruppe die diese Ports benutzen darf. Nach einem relog lief der Miner einwandfrei. Wer sicher gehen möchte kann natürlich einen reboot machen. Wahrscheinlich hätte es auch funktioniert dieses Programm als root zu starten, wovon ich aber aus Sicherheitsgründen abrate. Ich halte die Variante über die Gruppe dialout für besser. Ähnliche Fehlermeldungen wie "unable to open serial port“ oder so können auch dadurch entstehen. Meistens halt bei Programmen die aus der Terminal Emulation heraus gestartet werden. 
 
Diese Situation zu prüfen schadet in einem solchen Fall also nicht. 
 

 

Wenn dieser Beitrag hilfreich war oder er dir einfach nur gefallen hat dann spende einen Betrag deiner Wahl. Ich danke dir bereits im Voraus.

Spende via Bitcoin

1JDcMQFxtZJTKxzTgz5XcP4hkXqb8AmeLR

Oder via Paypal bzw. Überweisung

Bitte loggen Sie sich ein, um Ihre Spende abzuschließen.

Facebooktwittergoogle_plusredditpinterestlinkedinmail

Schreibe einen Kommentar

Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden. Damit diese Seite funktioniert ist es notwendig kleine Dateien (genannt Cookies) auf deinem Computer zu speichern. Zudem erhöhen die Cookies den Bedienungskomfort für dich. Google selbst verwendet Cookies, um Inhalte und Anzeigen zu personalisieren, Funktionen für soziale Medien anbieten zu können und die Zugriffe auf unserer Website zu analysieren. Außerdem gibt Google Informationen zur Nutzung unserer Website an dessen Partner für soziale Medien, Werbung und Analysen weiter. Die geschieht über die eingeblendeten Werbebanner. Wenn du diese Seite benutzt stimmst du der Nutzung von Cookies zu. Über Ihre Browsereinstellungen kannst du entscheiden ob Cookies angenommen werden oder nicht. Auch kannst du Cookies jederzeit und auch gezielt über den Browser löschen. Due kannst den Browser auch so konfigurieren das beim Schliessen alle Cookies automatisch gelöscht werden. Weit über 90% aller Webseiten setzen Cookies. Jedoch werden wir seit dem 26. Mai 2012 per EU Datenschutz Regelung dazu aufgefordert zuerst deine Zustimmung einzuholen.

Schließen