粗大メモ置き場

個人用,たまーに来訪者を意識する雑記メモ

Barrierを用いて複数のPC間でマウス・キーボード共有を行う(2019年秋Ver)

複数PCでのマウス・キーボード共有

複数のPCで作業する時に,マウスやキーボードをシームレスに共有するという思想が世の中には存在します。

Logicool社のFlowなんかもそうです。

www.youtube.com

FLowの場合,対応したマウスやキーボード機器を整える必要があり,またWindows間のみでの対応になります。


一方で,ソフトウェアのみをインストールすることで同様の機能を実現できるSynergyというソフトが存在します。 元がオープンソースなので古いverやソースコードは無料で手に入ったようですが,2019年現在実行ソフトを入れようとすると$29~39かかります(買い切り)。

SynergyではFlowでは対応していないWindowsLinux間での連携特別なハードウェアなしに実現可能な点が利点と言えます。 一方で,Linuxディストリビューションが多岐にわたり,完全な動作保証がしづらい点やLogicoolという大企業と比較すると購入後のサポート・保証にやや不安があります。 価格も買い切りとはいえ安いとは少し言いづらいので導入には少し気が引けます。


ということでSynergyから分岐したフリー版SynergyともいえるBarrierというソフトをお試しで浸かってみた記録をここに記します。

下記のサイトが大変参考になりました。 gihyo.jp

ざっくりBarrierの動作紹介

BarrierはWindowsLinux共に使用可能と説明があります。手持ちのWindows10,Ubuntu16.04を用いて試験をしました。

Barrierをインストールした後に起動すると,サーバーかクライアントかを選択します。メインでマウスとキーボードを使う側をサーバーとし,サーバー側PCから操作したいPCをクライアントと設定します

  • PCどうし接続するには同じWifi(回線)上に居なければならない(多分pingが通ればOK)
  • 設定した画面端にマウスを動かすと別のPC上でのマウスとキーボード操作に切り替わる
  • Windows間ではクリップボードの共有が可能(Linuxではまだとのこと)
  • ドラッグ&ドロップでファイル移動ができるとあるが動作を確認できず
  • Ubuntu16はそもそも非対応

Barrier試用結果まとめ

忙しい人用。

  • 無料でマウス&キーボード共有が可能
  • Windows間ならクリップボードも共有
  • Ubuntu16では正常に動作できなかった


インストールから設定まで

基本的にWindows版前提で話を進めていきます。Ubuntu18以降はgyhyo様のサイトに詳しく載っているので割愛します。

ソフトの入手・インストール

オープンソースなのでgitレポジトリから入手してコンパイルすることも可能ですが,実行ファイル形式でDLした方が手間が無いです。

f:id:ossyaritoori:20190926205847p:plain
このときはv2.3.1を使いました。
ダウンロード後管理者権限で実行すればすぐにインストール画面に進みます。

まともな日本語がきちんと整備されているので安心して言語選択で日本語を選べます。

インストール後,Bonjourというソフトをインストールするか聞かれます(オートコンフィグの為らしい)がなんとなくNoを押しました。 おそらくClient側からの自動接続機能用でしょうが,IPアドレスを手打ちすればいい話と思ったので

サーバー・クライアント共通の設定

共通の設定の設定から入ります。

f:id:ossyaritoori:20190926150439p:plain
Barrierの起動後に現れる画面

  • 設定を開く

「Barrier」→「Change Settings」或いは「F4」キーを押して設定を開きます。

f:id:ossyaritoori:20190926150544p:plain
この画面が現れます

  1. スクリーン名をわかりやすいものに変更(後の配置時に使います。)
  2. Enable SSLのチェックを外す。

「OK」を押して終了です。

注)接続がうまく行かないときは,ポート番号を変えるとうまくいくなどの報告があるのでポート番号をキチンと確認しておきましょう。

サーバーの設定

続いて,サーバー側の設定です。

  • サーバーの設定を開く

「サーバーを設定」から開きます。以下のような画面が出てきます。「画面とリンク」でPC同士の画面の配置,「サーバーの詳細な設定」のタブでその他設定を調整します。

f:id:ossyaritoori:20190926183200p:plain
PCを三台配置してみた。の図。

  • PCの画面の配置

上の図にもあるように最大25個の画面を配置するスペースがあります。25個も配置できるのかはよく知りませんが。PCはドラッグアンドドロップで配置を変更できる上,右上から追加,左上のアイコンから削除ができます。


  • 詳細な設定

詳細な設定を押すと以下の画面が現れます。Linux版はファイル転送やクリップボードのシェアが未実装なのでチェックを外すようですが,Windows版では特にいじらなくても平気です。

f:id:ossyaritoori:20190926202233p:plain

以上の設定の後に「開始」ないし「更新」を押すと設定が保存されプログラムがスタートします。

クライアント側からの操作

クライアント側からはサーバーのIPアドレスを入力すればOKです。ローカルな通信をしていますが,これってグローバルなIPでやってもできるんでしょうかね?

f:id:ossyaritoori:20190926202643p:plain

外部ディスプレイとの競合チェック

ここまでやって気になるのは外部ディスプレイ接続との競合です。

知見1:外部ディスプレイの先にアクセスできない

例えば右側にBarrierでディスプレイを設定した後に,外部ディスプレイでメインPCのディスプレイを右に拡張した場合,Barrierの移動が無効化されるようです。

f:id:ossyaritoori:20190926183115p:plain
外部ディスプレイとの相性① 外部ディスプレイの先には配置できないっぽい?

逆に左側でも同様でした。

f:id:ossyaritoori:20190926203652p:plain
左側に外部のディスプレイを設置するとその先にはアクセスできない。

知見2:なんか右方向は苦手

拡張ディスプレイの向きをBarrierの配置と干渉しないようにした結果,何故か右方向のディスプレイに移動できないことを発見しました。 なお,この構成だと拡張したディスプレイの左側からもBarrierの左でディスプレイにアクセスできます

f:id:ossyaritoori:20190926203345p:plain
上に拡張した場合,何故か右側にはアクセスできない。

下においた場合も同様です。

知見3:Barrier接続面の位置をあわせること

先程の試験で拡張したディスプレイからもBarrierのディスプレイにアクセスできることを確認しましたが,以下のように横のアライメントが合わないと拡張したディスプレイ側からは移動できなくなります。 マウスポインタの座標かなんかを使ってスイッチしているからでしょうか。

f:id:ossyaritoori:20190926204244p:plain
メインディスプレイの左端から左にはアクセスできる。

拡張ディスプレイの解像度の設定をいじっている人は気をつけるべきと思います。

なにやってんだろ。。。

おまけ

最適構成例?

先程のまとめで左側に配置したほうが安定していたので,左に拡張していったほうがやりやすいっぽいです。 皆さん右を向いて作業しましょう。

f:id:ossyaritoori:20190926204942p:plain
左に拡張していくのが最も安牌っぽい?

コピペの限界について

Windowsならクリップボードの内容を保持できるとのことですが,ファイルそのもののコピペはできません。 これはWindowsではファイルコピペ時にはデータのアドレスを操作しているからです。

ファイルの移動で、コピーより切り取りの方が速い理由 - t-hom’s diary

その代わり,スクリーンショットなどの画像データに関してはきちんとコピペを行うことが出きます。実際この記事のいくつかのスクショはBarrier経由で引っ張ってきています。

ファイル移動機能が使えない?

使えたらさぞかし便利なのでしょうが私の環境では使えませんでした。Issueもいくつか立っているので有名な問題のようです。

github.com

解決したら教えて。

まとめ

Barrierは設定が簡単な割には面白い使い方ができるソフトだと思います。 ファイル送信のバグが取れたら誰か連絡ください。