GNU/Linux >> Linux の 問題 >  >> Ubuntu

Linux –WindowsとLinuxMint /ubuntuのデュアルブートでのBluetoothペアリング–デバイスをペアリングする必要がなくなりますか?

Windows7/10とLinuxMint/ Ubuntuをデュアルブートする場合、Bluetoothデバイスを何度も再ペアリングする必要がある場合があります。これは、OSを切り替えるたびに発生します。

では、どうすればこれを防ぐことができますか?

私は、Ubuntu14.4とLinuxMint 17.2、17.3、そして現在はLinuxMint18でテストされている次のガイドで自分の質問に答えています。x

承認された回答:

なぜこれが起こるのですか?

基本的に、デバイスをペアリングすると、Bluetoothサービスは一意のペアリングキーのセットを生成します。まず、コンピュータにBluetoothデバイスのMACアドレスとペアリングキーが保存されます。次に、BluetoothデバイスはコンピュータのMACアドレスと一致するキーを保存します。これは通常は正常に機能しますが、BluetoothポートのMACアドレスはLinuxとWindowsの両方で同じになります(ハードウェアレベルで設定されます)。したがって、WindowsまたはLinuxでデバイスを再ペアリングし、新しいキーを生成すると、そのキーがBluetoothデバイスに以前に保存されたキーを上書きします。 WindowsはLinuxキーを上書きし、その逆も同様です。

Bluetooth LEデバイス: これらは異なるペアになる場合があります。自分自身を調査したことはありませんが、これはデュアルブートBluetooth LE(低エネルギー)デバイスのペアリングに役立つ可能性があります

修正方法

以下の手順を使用して、最初にBluetoothデバイスをUbuntu / Linux Mintとペアリングし、次にWindowsをペアリングします。次に、Linuxシステムに戻り、Windowsで生成されたペアリングキーをLinuxシステムにコピーします。

  1. すべてのデバイスをMint/Ubuntuとペアリングします
  2. すべてのデバイスをWindowsとペアリングします
  3. 次の2つの方法のいずれかでWindowsペアリングキーをコピーします。
    • psexec -s -i regedit.exeを使用します Windowsから(難しい)

      1. コントロールパネルの[デバイスとプリンタ]に移動し、Bluetoothデバイスのプロパティに移動します。次に、Bluetoothセクションで一意の識別子を見つけることができます。それをコピーします(後で必要になります)。
      2. http://technet.microsoft.com/en-us/sysinternals/bb897553.aspxからPsExecをダウンロードします。
      3. ダウンロードしたzipを解凍し、管理者特権でcmdウィンドウを開きます。 ([スタート]メニューをクリックして、cmdを検索します 、次にCMDを右クリックし、[管理者として実行]をクリックします。)
      4. ダウンロードを解凍したフォルダにcdします。
      5. psexec -s -i regedit.exeを実行します
      6. HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesBTHPORTParametersKeysでキーを見つけるためにナビゲートします 。
        CurrentControlSetがない場合 、ControlSet001を試してください 。
      7. MACアドレスが記載されたキーラベルがいくつか表示されます。前にコピーした一意の識別子に関連付けられているMACアドレスを書き留めてください。
    • chntpwを使用する Linuxディストリビューションから(簡単)。ターミナルで開始し、次のようにします。

      1. sudo apt-get install chntpw

      2. Windowsシステムドライブをマウントする

      3. cd /[WindowsSystemDrive]/Windows/System32/config

      4. chntpw -e SYSTEM コンソールを開きます

      5. そのコンソールで次のコマンドを実行します:

        > cd CurrentControlSetServicesBTHPORTParametersKeys
        > # if there is no CurrentControlSet, then try ControlSet001
        > # on Windows 7, "services" above is lowercased.
        > ls
        # shows you your Bluetooth port's MAC address
        Node has 1 subkeys and 0 values
          key name
          <aa1122334455>
        > cd aa1122334455  # cd into the folder
        > ls  
        # lists the existing devices' MAC addresses
        Node has 0 subkeys and 1 values
          size     type            value name             [value if type DWORD]
            16  REG_BINARY        <001f20eb4c9a>
        > hex 001f20eb4c9a
        => :00000 XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX XX ...ignore..chars..
        # ^ the XXs are the pairing key
        
      6. どのBluetoothデバイスのMACアドレスがどのペアリングキーと一致するかをメモします。 Mint / Ubuntuの場合、間にスペースは必要ありません。 :00000を無視します 。

  4. Linuxに戻り(Linuxでない場合)、WindowsキーをLinux構成エントリに追加します。 WindowsからLinuxに移行する場合、BluetoothポートのMACアドレスの形式が異なることに注意してください。上記の例ではWindowsでaa1122334455と呼ばれています。
    Linuxバージョンはすべて大文字で、2文字ごとに「:」で区切られます。 –たとえば、AA:11:22:33:44:55。
    Linuxのバージョンに基づいて、次のいずれかを実行できます。

    • Mint 18 / 16.04より前は、次のことができました。
      1. sudo edit /var/lib/bluetooth/[MAC address of Bluetooth]/linkkeys –[BluetoothのMACアドレス]はそのBluetoothフォルダ内の唯一のフォルダである必要があります。

      2. このファイルは次のようになります。

        [Bluetooth MAC]   [Pairing key]                 [digits in pin]  [0]
        AA:11:22:33:44:55 XXXXXXXXxxXXxXxXXXXXXxxXXXXXxXxX 5 0
        00:1D:D8:3A:33:83 XXXXXXXXxxXXxXxXXXXXXxxXXXXXxXxX 4 0
        
      3. Linuxのペアリングキーを、スペースを除いたWindowsのペアリングキーに変更します。

    • Mint 18(およびUbuntu 16.04)では、次のことを行う必要があります。
      1. ルートに切り替えます:su -

      2. Bluetooth設定の場所にcdします/var/lib/bluetooth/[bth port MAC addresses]

      3. ここには、ペアリングした各デバイスのフォルダがあります。 BluetoothデバイスのMACアドレスであるフォルダ名には、単一のファイルinfoが含まれています 。これらのファイルには、次のように、Windowsのものと置き換える必要のあるリンクキーが表示されます。

        [LinkKey]
        Key=B99999999FFFFFFFFF999999999FFFFF
        
  5. 更新したら、次のいずれかの方法でBluetoothサービスを再起動すると、機能します!
    • Ubuntu、Mint、Arch:

      sudo systemctl restart Bluetooth 
      
    • または、マシンをLinuxで再起動します。

  6. Windowsで再起動–動作します!
関連:トップ30のLinuxシェルトリックチートシート
Ubuntu
  1. LinuxMintをWindows8にインストールする|デュアルブートWindows8およびLinuxMint12

  2. Windows 7/ubuntuデュアルブートヘルプ??

  3. Windows XPとUbuntuをデュアルブートする方法は?

  1. UbuntuLinuxでデュアルブートするWindows11の誤った時刻を修正する

  2. デュアルブートUbuntuとWindows10

  3. UbuntuとLinuxMintをデュアルブートする方法は?

  1. デュアルブートUbuntuLinuxおよびWindows7

  2. WindowsXPとUbuntuLinuxをデュアルブートする方法

  3. Windows 10と一緒にUbuntuをインストールする方法(デュアルブート)