SplashtopのGNU/Linuxクライアントのインストール方法
概要
12月第2週から派遣社員として就職して仕事をしている。勤務先は基本的にフルリモートワークでの就業となっている。リモートワークにあたって,Splashtopというソフトウェアを使って就業場所のWindows PCにリモート接続して作業するという形態だった。
こちらのSplashtopはホスト (サーバー) とクライアントの2種類のアプリケーションがある。ホスト側はSlpashtop Streamerという製品名で,こちらはGNU/Linuxも正式に対応している。
クライアントアプリは用途ごとに何種類か存在しており,今回はSplashtop Business Appを使う。しかし,肝心のクライアントアプリはGNU/Linuxに正式対応していない。
当初はGNU/Linux (Ubuntu 20.04) からの接続がうまくできず,しかたなくVirtualBox上のWindows 10から接続していた。しかし,VirtualBoxはやはり重く,ときどきフリーズしてしまい,効率が悪かった。
なんとか方法がないかと試行錯誤した結果,GNU/LinuxからSplashtop Business Appを使う方法を見つけてうまくできたので,方法を記す。
結論としては,Windows用のインストーラーをWineでインストールして,[Video Rendering Options] を変更することでリモート接続できた。
Chromiumブラウザー
Ubuntu 12.04くらいまでであれば,GNU/Linux用のクライアントアプリを配布していたことがあったようだが,現在はGNU/Linux用のクライアントアプリは公式からは提供されていない。
代わりに,「Does Splashtop support linux? – Splashtop Business – Support」に情報が掲載されている。
こちらによると,Google ChromeなどのChromium系のWebブラウザーであれば,my.splasthtop.comのマイページから,Webブラウザー経由でリモート接続できるらしい。
但し,Webブラウザー経由でリモート接続する際には問題が生じる。それは,初回接続時のみ管理者に承認が必要な点だ。
Splashtop Businessは企業毎に導入されている製品となっている。この場合,初回接続時に管理者にメール通知され,管理者に承認されて初めて接続が可能になる。
そして,このメール通知時にはマシンの情報が一緒に送付される。こちらの情報がどういうものかは正確にはわからないのだが,本来であればおそらくマシンのホスト名が添付されている。
しかし,Webブラウザー経由であれば,このマシンの情報がメールに含まれておらず,管理者からマシンを識別できないため承認されない。
そのため,こちらのWebブラウザーを使う方法は採用できない。
Wine
Webブラウザーの代わりに成功したのがWineを使う方法だ。WineはWindows環境のエミュレーターであり,Wine経由でSplashtopをインストールして実行する。
実際に,Wineでの動作状況がまとめられている「WineHQ – SplashTop Business App」で動作することが報告されている。SplashTop Business App v3.4.0.1がWine 5.0.2で動作したらしい。
こちらの情報を頼りに試したところ,SplashTop Business v3.4.2.0がUbuntu 20.04のWine 5.0.3で動作した。手順を記す。
1. まず,公式の配布元「Download Splashtop Remote Desktop & Remote Support Software」からWindows用のクライアントアプリをダウンロードする。
注意点として,ここでは一番上の (exe | msi) をダウンロードする。2番目の (portable version / zero install /run from USB drive) のスタンドアローン版はWineでは動作しなかったので注意する。
当初は2番目のスタンドアローン版を試してうまくいかなかったので,諦めてしまった。その後,exe版をダウンロードしてうまくいった。
2. ダウンロードしたら,そのままダブルクリックでWine経由でインストールする。
3. インストールが完了すると,OSにインストールされるので,[Activities] から [Splashtop Business] を起動する。
4. 起動時にSplashtopのアカウントの入力画面が表示されるので,こちらを入力する。
5. アカウントにログインすると,管理者にメール通知されるので承認を待つ。
6. 承認後に再ログインすると,リモート接続対象マシンが表示される。右のウィンドウマークを選んで接続する。
7. デフォルトだと以下のエラーが表示される。
Failed to initialize video device. Please see our support article for possible solutions.
エラーメッセージ内のリンクの記事に回避方法が書いてある。DirectXドライバー関係のエラーらしく,Direct3Dが必要らしい。その他,[Video Rendering Options] で回避できるらしい。
こちらの設定について調査すると,「Video Rendering Options – Windows Splashtop Business App – Splashtop Business – Support」に記事を見つけ,こちらの記事の設定で解決できた。
8. [File]>[Options]>[Advanced]>[Video Rendering Options]=[SDL with YUV]>[OK] を選ぶ。
[Video Rendering Options] のデフォルト値が [Direct3D with YUV (Default)] となっており,WindowsのDirect3Dを使うようになっていたのが問題だった。
今回は,記事で推奨されていた通り,[SDL with YUV] を選んだ。[SDL with YUV] だと [screen recording] の機能を使うと,性能が著しく悪くなるらしい。万が一,こちらでもダメなら [Software] を選ぶ。
こちらの設定を変えただけで,無事にSplashtop Business Appでリモート接続できた。
結論
SplashtopのGNU/LinuxクライアントアプリであるSplashtop Business Appのインストール方法を解説した。
この方法でGNU/LinuxからSplasthtopでリモート接続できる。重たいVirtualBoxのWindowsを使わずに済み,足枷から解き放たれた気分だ。
Windowsアプリが必要なときは,Wineでの動作状況を真っ先に確認することが重要なことを痛感したできごとだった。今回をきっかけに,Wineでの稼働状況を自分も登録していくことにする。