M1世代のMacbook airのマウス・キーボードを使ってwndowsを操作する方法を紹介します。
Barrierという無償のソフトを使うとMac, Windows, Linux間でマウスとキーボードを共有できます。
MacBook Airのキーボード・マウスでwindowsを操作したい
M1世代のMacBook Airとデスクトップのwindowsを使用しています。
MacBook AIrのキーボードとタッチパッドでwindowsを操作したいことはありませんか?
リモートデスクトップでは画面をmac側で移すのでもたつきがあり、切替できるキーボードなどは物理的にスイッチなどで変更するのでめんどくさいです。
- リモートデスクトップ
- 切替可能なマウスとキーボード
そこで、マウスとキーボードだけをネットワーク内で共有できるアプリを探したところ、「Barrier」がヒットしました。
Barrierの良いところ
Barrierの良い点
- 無償(似たもので有償のSynergyがある)
- mac, windows, Linuxの主要三台OSで利用可能
です。
無償なのでサポートはなく自分で調べながら設定が必要ですが、有名なのでネット上にトラブルシューティングが転がっています。
インストール方法
mac (server: マウスとキーボードを使う側)
macではbarrierをbrewを使ってインストールします。
homebrewを入れていない場合は下記を参考に使えるようにしてください。
HomeBrewの特徴 インストール方法brew install barrier
# sslを利用する場合
brew install openssl
1.インストールが完了したら「finder」でbarrierを検索します。
2. 右クリックから「開く」を選択する
3. 「開発元を検証できません・・」と表示されるので「開く」を押す。
4.「アクセシビリティ機能を利用して制御することを求めています。」と表示されるので「システム設定を開く」をクリック
5. アクセシビリティの下にある🔐マークをクリックして解除した後に、Barrierの左にあるチェックマークを入れて再度🔐を閉じてウィンドウを閉じます。
6. 再度FinderからBarrierを開きます。
7. F4キーを押す
8. SSLを使用のチェックを外してOK
サーバ側の設定はひとまず終了です。
windows側の設定 (クライアント側: macのキーボードで操作される側)
windowsでもBarrierのインストールが必要です。
windowsではchocolateyを使ってインストールします。
管理者権限でPowerShellを起動します。
choco install barrier
2. インストールが完了したら、Windowsメニューからbarrierを起動します。
3.クライアントにチェックをいれてmacのIPアドレス:に記載しているIPをサーバIPに入力し、「モニター名」をコピーします。
4.F4キーを押して設定を開き、macと同様に「SSLを使用」のチェックマークを外します。
MAC側の操作
5.mac側のbarrierで「サーバーの構成設定」をクリック、出てきたスクリーンをドラックします。
ドラッグしたスクリーンがwindowsの画面位置になります。macよりも上側に配置したい場合はドラッグしたスクリーンも上側にします。スクリーンの名前(windowsって書いてる所)はwindows側のbarrierでコピーしたモニター名です。
6. OKを押して閉じて、適用を押して開始します。
Windows側の操作
7. Barrierの適用を行なって開始します。
これでマウスが動くようになっているはずです。
SSLの適用方法について
SSLを使っていないのでキーボードの内容は暗号化されずに送られています。同じネットワーク内だけなので基本的に問題はないと思いますが、暗号化したい場合はSSLを有効化します。
当初SSLを有効化した際にはエラーが出てうまくSSL化できずにあれこれ設定を変更したところできるようになりました。もしかしたら不要な操作があるかもしれませんがご了承ください
Mac, windows共にopensslをインストールする
Macはbrew, Windowsはchocolateyでopensslをインストールします。おそらくこれは必須です。
・Mac
$ brew install openssl
・windows
# choco install openssl
サーバ側で証明書を作成する
opensslコマンドで秘密鍵とcsrを作成して、証明書を作成します。csrにはお所やCNなどを入力するように出てきますが適当でOKです。パスワード的なものは入力しないでエンターで良いです。
${user}には自身のユーザ名が入る
$ cd /Users/${user}/Library/Application\ Support/barrier/SSL/
$ openssl genrsa -out Barrier.key 2048
$ openssl req -new -key Barrier.key -out Barrier.csr
$ openssl req x509 -days 1825 -key Barrier.key -in Barrier.csr -out Barrier.crt
$ openssl req -x509 -days 1825 -key Barrier.key -in Barrier.csr -out Barrier.crt
$ cat Barrier.crt Barrier.key > Barrier.pem
Mac, Win共にチェックを外したSSLを使用を有効化する
Mac, Windows共にBarrier、F4の設定でSSLを使用のチェックマークを外していると思うのでこのチェックを入れ直します。Macのサーバ側はRequire Client Certificate(クライアント側の証明書を要求する)にもチェックを入れます。
両方とも入れたら保存して適用→停止→開始でBarrierを再起動します。
うまくいくmac, とwindows側でフィンガープリントの認証画面が出てくるのでOKすると接続が開始されて🔐マークがでてSSL通信でマウス・キーボードが動かせるようになっているはずです。
ちなみにLinuxのubuntuでも試してみましたが、Linuxからwindows, Macも操作可能でした。マルチOS環境の人で困っている人がいたらおすすめです。
Macのキーバインドやキーマップがwindowsと違う
Macのキーボードがwindowsで動かせるようになりましたが、windowsとmacのキーマップが違うせいで日本語入力の切り替えができなかったり不便だと思います。
これはBarrier側ではどうにもならなそうなので、Windows側でmacようにキーバインドを作成したりしてしのいでいます。
英数・かながwindowsで認識されないのでこれがうまく認識されれば良いのですが…
何か良い方法があったら紹介します。
設定がうまくいかない、動かないとき
Barrierではログが出力されていますので、ログを確認しましょう。Warningなどの重要なログを見てそれをそのまま検索してみてください。何かわかるかもしれません。
どうしてもできなかったら潔くあきらめましょう。