Wie kann ich mit macOS und Ubuntu dieselbe Bluetooth-Tastatur und -Maus verwenden?

8

Ich habe einen iMac mit MacOS und Ubuntu. Ich möchte meine Bluetooth-Maus und -Tastatur mit beiden Betriebssystemen verwenden können, ohne sie bei jedem Betriebssystemwechsel erneut zu koppeln.

Hat jemand dieses Problem gehabt und eine Lösung gefunden?

tjespe
quelle
Wie haben Sie Dual-Boot installiert (Mac OSX mit Ubuntu 18.04?) - ist Ubuntu auf einer externen USB-Festplatte installiert und grub läuft auf einer USB-Festplatte? - oder ist es bei Ihnen anders?
dschinn1001
Ist dies nicht aus Sicherheitsgründen so, dass Bluetooth deaktiviert ist, wenn Sie das Betriebssystem verlassen? - Falls der Computer nach dem
Abmelden in Bereitschaft

Antworten:

11

Die Antworten auf diese Frage geben Ihnen eine allgemeine Vorstellung, obwohl sie auf der macOS-Seite etwas vage sind. Ich werde daher das von mir verwendete Verfahren erläutern.

Betriebssystemversionen wie folgt. Die Dateinamen und Speicherorte scheinen sich je nach Version zu ändern, daher hat dies für mich funktioniert.

  • MacOS High Sierra 10.13.1
  • Ubuntu 17.04

Ich gehe davon aus, dass Sie ein Dateisystem (USB-Stick oder was auch immer) haben, das unter MacOS mindestens schreibgeschützt und unter Ubuntu lesbar ist.

Die allgemeine Idee ist, dass beim Koppeln eines Geräts mit einem Betriebssystem ein eindeutiger Verbindungsschlüssel generiert wird, der für die Authentifizierung beim nächsten Aktivieren der Kopplung erforderlich ist. Sie können diese Link-Schlüssel von MacOS-Paarungen auf Ubuntu-Paarungen übertragen, sodass die Paarungen in beiden Betriebssystemen funktionieren.

  1. Booten Sie Ubuntu
  2. Koppeln Sie die Geräte wie gewohnt
  3. Starten Sie MacOS neu
  4. Koppeln Sie die Geräte wie gewohnt
  5. Geben Sie in einem Terminalfenster Folgendes ein : sudo defaults read com.apple.bluetoothd.plist LinkKeys. Dadurch erhalten Sie eine Ausgabe wie:
{
    "a0-99-9b-16-43-d2" = {
        "00-1f-20-47-e5-22" = <4d6b002f 37584c09 ee219365 b78ba03e>;
        "04-0c-ce-3d-15-4d" = <fe998c62 4bb29a7c 40b2e670 10db71ed>;
    };
}}

Hier a0-99-9b-16-43-d2ist die MAC-Adresse des Bluetooth-Adapters auf meinem System.

Im Anschluss an, dass die MAC - Adressen von Geräten, die ich habe gepaart ( 00-1f-20-47-e5-22und 04-0c-ce-3d-15-4dund die Verbindung mit den Tasten assoziiert Paarungen ( 4d6b002f 37584c09 ee219365 b78ba03eund fe998c62 4bb29a7c 40b2e670 10db71edjeweils).

  1. Leiten Sie diese Ausgabe in eine Datei um, die sowohl für MacOS als auch für Ubuntu sichtbar ist:
Die Standardwerte für sudo lauten com.apple.bluetoothd.plist LinkKeys> /Volumes/4T/linkkeys.txt
  1. Schalten Sie alle Geräte aus, die Sie gekoppelt haben
  2. Starten Sie Ubuntu neu. Schalten Sie nicht auf Ihre Bluetooth - Geräte vor. Hoffentlich haben Sie an dieser Stelle eine kabelgebundene Tastatur und Maus
  3. Öffnen Sie ein Terminalfenster
  4. Beenden Sie den Bluetooth-Dienst:
sudo service bluetooth stop
  1. Schauen Sie in das Verzeichnis /var/lib/bluetooth. Sie sollten einen Unterverzeichniseintrag für die MAC-Adresse des Bluetooth-Adapters sehen, der wie folgt formatiert ist A0:99:9B:16:43:D2. Darin sollten Unterverzeichnisse für jede Geräte-MAC-Adresse wie 00:1F:20:47:E5:22und angezeigt werden 04:0C:CE:3D:15:4D. In diesen Verzeichnissen finden Sie Dateien mit dem Namen info. Bearbeiten Sie diese Dateien mit Ihrem bevorzugten Editor:
sudo gedit / var / lib / bluetooth / A0: 99: 9B: 16: 43: D2 / 00: 1F: 20: 47: E5: 22 / info
sudo gedit / var / lib / bluetooth / A0: 99: 9B: 16: 43: D2 / 04: 0C: CE: 3D: 15: 4D / info
  1. In diesen Dateien finden Sie einen KeyEintrag. Dieser Schlüssel muss mit dem in MacOS identisch sein, weist jedoch einige wichtige Formatierungsunterschiede auf:
    • Leerzeichen entfernt
    • hexadezimale Ziffern in Großbuchstaben
    • Byte-getauschte 128-Bit-Ganzzahl (dh in 2 hexadezimale Chunks aufgeteilt und umgekehrt)

Sie können dies wie folgt erreichen:

$ echo 4d6b002f 37584c09 ee219365 b78ba03e | sed 's / //g;s/../\U&\n/g' | tac | tr -d '\ n'; Echo
3EA08BB7659321EE094C58372F006B4D
$ echo fe998c62 4bb29a7c 40b2e670 10db71ed | sed 's / //g;s/../\U&\n/g' | tac | tr -d '\ n'; Echo
ED71DB1070E6B2407C9AB24B628C99FE
$ 

Bearbeiten Sie diese neu formatierten Schlüssel im Schlüsseleintrag der entsprechenden Infodateien. Höchstwahrscheinlich sudowird erforderlich sein.

  1. Starten Sie den Bluetooth-Dienst neu:
sudo service bluetooth start
  1. Schalten Sie jetzt Ihre Bluetooth-Geräte ein. Sie sollten erkannt und die Paarungen sowohl unter MacOS als auch unter Ubuntu aktiv / gültig sein.

Update: Die Paarungen scheinen durch Upgrades unter MacOS und Ubuntu bestehen geblieben zu sein. Ich verwende jetzt 10.13.6 bzw. 18.04 und musste diesen Vorgang noch nicht wiederholen.

Digitales Trauma
quelle
1
Ich kann die Antwort von Digital Trauma nicht kommentieren, daher werde ich hier erwähnen, dass das Bluetooth-Schlüsselformat in MacOs kürzlich geändert wurde und die Umkehrung mittlerweile nicht mehr benötigt wird. Wenn Sie also die Schlüsselformulare von MacOs nach Linux kopieren (Schritt 12), müssen Sie nur die Buchstaben in Großbuchstaben umwandeln.
Nizar
@ Nizar danke für die Info. Sobald ich die Gelegenheit habe, es auszuprobieren, werde ich es aktualisieren.
Digitales Trauma