web-dev-qa-db-ja.com

仮想化で動作しない追加のマウスボタン(VMware / VirtualBox、ubuntuホスト)

UbuntuでVMware WorkstationやVirtualBoxを実行しようとしています。仮想マシンは、追加のマウスボタン(前方/後方)を除き、両方のアプリケーションで完全に動作しています。 Ubuntuでは、マウスボタンはすべて機能しています。

仮想化アプリケーション:VMware Workstation 10.0.1、最新のVirtualBox

ホストとしてテストしたUbuntuバージョン:12.04、13.10、14.04ベータ

テストしたゲストOS:Windows 7、ライブモードの複数のLinux OS

テストしたマウス(すべてサイドボタン付き):Logitech M510(統合レシーバー)、古いRazer Copperhead、無名マウス

私はすでにオンラインで見つけた多くのソリューションを試しました。 VMware WSの.vmxのマウス設定の変更(mouse.vusb.enable、...)、VMware/VirtualBoxの入力設定の変更、ゲストOSのゲストツールの再インストール、...

これは、仮想化アプリケーションではなく、Ubuntuの問題だと思います。誰にもこれに対する解決策がありますか?

20
mika209

考えられる回避策:

追加するVMの.vmxファイルを編集した後

mouse.vusb.enable = "TRUE"
mouse.vusb.useBasicMouse = "FALSE"
usb.generic.allowHID = "TRUE"

vMで5ボタンマウスを使用できるようになります。これを行うには、VMを開き、Virtual Machine > Removable Devices > [Your Mouse] > Connect (Disconnect from Host)に移動します。ホストでこれ以上ほとんど使用できないという警告がいくつか表示され、[OK]をクリックします。

これで、全画面モードでもウィンドウモードでも、VM内でのみマウスを使用できます。キーボードのCtrl-Gを押して、ホストマウスアイコンを取り除き、VMに完全に没頭します。 VMの外側でもう一度マウスが必要になったら、Ctrl+Altを押してから離します。ここで、焦点はホストOSに戻ります。 Altを押しながらVを押してVirtual Machineメニューを表示し、矢印キーを使用してVirtual Machine > Removable Devices > [Your Mouse] > Disconnect (Connect to Host)に移動します。

これですべてが正常に戻りました。 UbuntuまたはVMWare Playerで何かがすぐに変更され、これよりも簡単になることを願っています。

16
MattSayar

VMwareで追加のマウスボタンを機能させるには、configfile.vmxを編集します(次の行を追加します)。

mouse.vusb.enable = "TRUE"
mouse.vusb.useBasicMouse = "FALSE"

上記の設定により、20個のボタンを持つ仮想vmwareマウスが有効になります。ただし、特定の状況では、VMwareは、ホストに到着するマウスイベントを正しいゲストイベントにマッピングしません。

正確なマウスイベントの送信に失敗する正確な理由は、説明されていない良い質問です。

ゲストOSで次を起動して実行します。ターミナルでxev | grep -i "button"を実行します。スポーンされたウィンドウに移動し、割り当てまたは交換したいボタンをクリックします。 xevは、登録されたマウスイベントを出力します。多くの場合、追加のマウスボタンは、たとえばマウスボタン8または9は、マウスボタンイベント16または17として受信されます。

マウスボタンイベントの再割り当ては、たとえばxinput、以下は、マウス8として機能するマウスボタン16とマウス9としてマウス17を持つdeviceID 8を作成します。

xinput set-button-map 8 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 8 9
8

Logitech m510マウスを使用して、Windows 10ホスト(ubuntuでも同じ)、VMwareワークステーションプレーヤー12でこれをテストしました。

これを行うと、マウスは仮想マシン上でのみ機能するため、ノートブックのように2つのマウス、またはタッチパッドとマウスがない限り、有効化および無効化するキーボードショートカットを知っている必要があります。

  1. 仮想マシンのフォルダーに移動して、.vmxファイルを見つけます。
  2. メモ帳で編集して追加します。

    usb.generic.allowHID = "TRUE"
    usb.generic.allowHID = "TRUE"
    usb.generic.allowLastHID = "TRUE"
    
  3. 仮想マシンを開き、Virtual Machine > Removable Devices > [Your Mouse] > Connect (Disconnect from Host)に移動します。実行すると、マウスは仮想マシンでのみ機能します。

  4. 仮想マシンにLogicoolマウスドライバー/ソフトウェアをインストールします(必要に応じて、すべてを実行する前にこの手順を実行できます)。
  5. 押すことができます Ctrl+G キーボードでホストマウスアイコンを取り除き、VMに完全に没頭します。
  6. ホストマシンでマウスを再び使用する場合は、 Ctrl+Alt、リリースし、仮想マシンではなくvmwareプレーヤーに焦点を合わせます。これで、通常のWindowsキーボードショートカットを使用できます。この場合 Alt+P vmwareワークステーションプレーヤーメニューを開き、キーボードの矢印キーを使用してVirtual Machine > Removable Devices > [Your Mouse] > Disconnect (Connect to Host)に移動します。
0
Lombas

すべてを試しましたが、修正はDell XPS 13、Windows 10、VMware Player 12、ゲストUbuntu 14.04で簡単でした。

コントロールパネルを起動し、マウス設定、マウスとキーボードセンター、Microsoftマウス設定、ホイールボタンを変更します。デフォルトのインスタントビューアーではなく、マウスの中クリックに設定します。

これにより、マウスの中ボタンをクリックしてUbuntuでコピーアンドペーストできます。

ジェームス

0
Jims

VirtualBoxとVMwareで3つ以上のボタンをエミュレートすることはできません。これは、ゲストシステムに(スーパー)標準3ボタンマウスを提示するためです。彼らが好きならそれは可能かもしれませんが、現時点では答えはノーです。


それでは、なぜWindowsで機能するのでしょうか? LinuxとWindowsの実装は異なるロードマップに従い、「各フロントエンドにはマウス入力を取得する独自の方法がある」ためです( source )。 これはスーパーユーザーの別の質問で見ることができます

0
Braiam