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.
- Booten Sie Ubuntu
- Koppeln Sie die Geräte wie gewohnt
- Starten Sie MacOS neu
- Koppeln Sie die Geräte wie gewohnt
- 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-d2
ist 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-22
und 04-0c-ce-3d-15-4d
und die Verbindung mit den Tasten assoziiert Paarungen ( 4d6b002f 37584c09 ee219365 b78ba03e
und fe998c62 4bb29a7c 40b2e670 10db71ed
jeweils).
- 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
- Schalten Sie alle Geräte aus, die Sie gekoppelt haben
- Starten Sie Ubuntu neu. Schalten Sie nicht auf Ihre Bluetooth - Geräte vor. Hoffentlich haben Sie an dieser Stelle eine kabelgebundene Tastatur und Maus
- Öffnen Sie ein Terminalfenster
- Beenden Sie den Bluetooth-Dienst:
sudo service bluetooth stop
- 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:22
und 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
- In diesen Dateien finden Sie einen
Key
Eintrag. 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 sudo
wird erforderlich sein.
- Starten Sie den Bluetooth-Dienst neu:
sudo service bluetooth start
- 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.