Come posso usare la stessa tastiera e mouse Bluetooth con macOS e Ubuntu?


8

Ho un iMac con macOS e Ubuntu su di esso. Voglio essere in grado di utilizzare il mouse e la tastiera Bluetooth con entrambi i sistemi operativi senza effettuare nuovamente l'associazione ogni volta che cambio sistema operativo.

Qualcuno ha avuto questo problema e ha trovato una soluzione?


Come hai installato il dual-boot (Mac OSX con Ubuntu 18.04?) - Ubuntu è installato su hard disk USB esterno e grub è in esecuzione su hard disk USB? - o è diverso sul tuo sito?
dschinn1001,

non è questo per motivi di sicurezza, che il bluetooth è disabilitato, quando si lascia il sistema operativo? - nel caso in cui il computer fosse in stand-by dopo il log-out ... e nel caso in cui il bluetooth fosse abilitato, allora ci sarebbe meno sicurezza ...
dschinn1001

Risposte:


11

Le risposte a questa domanda ti danno l'idea generale, anche se un po 'vaga sul lato macOS, quindi spiegherò la procedura che ho usato.

Versioni del sistema operativo come segue. I nomi e le posizioni dei file sembrano essere soggetti a modifiche in base alle versioni, quindi questo è ciò che ha funzionato per me.

  • MacOS High Sierra 10.13.1
  • Ubuntu 17.04

Suppongo che tu abbia un filesystem (chiave USB o qualsiasi altra cosa) che sia almeno in lettura-scrittura in MacOS e leggibile in Ubuntu.

L'idea generale è che quando si accoppia un dispositivo a un sistema operativo, viene generata una chiave di collegamento univoca, necessaria per l'autenticazione la volta successiva che l'associazione è attiva. È possibile trasferire queste chiavi di collegamento dagli accoppiamenti MacOS agli accoppiamenti Ubuntu in modo tale che gli accoppiamenti funzionino in entrambi i sistemi operativi.

  1. Avvia Ubuntu
  2. Associare i dispositivi come al solito
  3. Riavvia in MacOS
  4. Associare i dispositivi come al solito
  5. In un tipo di terminale: sudo defaults read com.apple.bluetoothd.plist LinkKeys. Questo ti darà un output simile a:
{
    "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>;
    };
}

Ecco a0-99-9b-16-43-d2l'indirizzo MAC dell'adattatore bluetooth sul mio sistema.

Seguenti che sono gli indirizzi MAC dei dispositivi che ho appaiati ( 00-1f-20-47-e5-22e 04-0c-ce-3d-15-4de le chiavi di collegamento associati a tali accoppiamenti ( 4d6b002f 37584c09 ee219365 b78ba03ee fe998c62 4bb29a7c 40b2e670 10db71edrispettivamente).

  1. Reindirizza questo output su un file visibile a MacOS e Ubuntu:
per impostazione predefinita sudo leggi com.apple.bluetoothd.plist LinkKeys> /Volumes/4T/linkkeys.txt
  1. Spegni tutti i dispositivi associati
  2. Riavvia in Ubuntu. Non accendere ancora i dispositivi Bluetooth. Spero che tu abbia una tastiera e un mouse cablati da usare a questo punto
  3. Apri una finestra del terminale
  4. Interrompere il servizio bluetooth:
servizio bluetooth stop sudo
  1. Cerca nella directory /var/lib/bluetooth. Dovresti vedere una sottodirectory per l'indirizzo MAC dell'adattatore bluetooth, formattato come A0:99:9B:16:43:D2. Al suo interno dovresti vedere le sottodirectory per ciascun indirizzo MAC del dispositivo, come 00:1F:20:47:E5:22e 04:0C:CE:3D:15:4D. All'interno di quelle directory troverai file denominati info. Modifica questi file con il tuo editor preferito:
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 questi file troverai una Keyvoce. Questa chiave deve essere identica a quella che hai trovato in MacOS, ma con alcune importanti differenze di formattazione:
    • spazi rimossi
    • cifre esadecimali in maiuscolo
    • intero a 128 bit scambiato in byte (ovvero diviso in 2 blocchi di cifre esadecimali e invertito)

È possibile ottenere questo come segue:

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

Modifica queste chiavi riformattate nella voce Chiave dei file di informazioni appropriati. Molto probabilmente sudosarà richiesto.

  1. Riavvia il servizio bluetooth:
sudo service bluetooth start
  1. Ora accendi i tuoi dispositivi bluetooth. Dovrebbero essere riconosciuti e gli accoppiamenti attivi / validi in MacOS e Ubuntu.

Aggiornamento: gli accoppiamenti sembrano essere persistiti attraverso gli aggiornamenti su MacOS e Ubuntu. Ora sto eseguendo rispettivamente 10.13.6 e 18.04 e non ho ancora dovuto ripetere questa procedura.


1
Non posso commentare la risposta di Digital Trauma, quindi menzionerò qui che il formato della chiave bluetooth in MacOs è stato modificato di recente e nel frattempo non è più necessario il contrario. Quindi, quando si copia la chiave da MacOs a Linux (passaggio 12), è sufficiente trasformare le lettere in maiuscolo.
Nizar,

@Nizar grazie per le informazioni. Quando avrò la possibilità di provarlo, lo aggiornerò.
Digital Trauma
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.