はじめに

こんにちは!ゆうきです🤗
これまでの記事ひとりでできるもんシリーズはいかがでしたでしょうか?
まだご覧になっていない方は、今回は関連の記事になりますので、是非あわせてご覧くださいね。

今回はLinuxサーバのGUIアプリケーションをWindows端末上で操作する、接続方法を紹介していきたいと思います。


本記事では、実機操作を通して情報処理技術の理解を深めることを目的としており、
皆様の環境での動作を保証するものではありません。👀

環境のおさらい

他の記事でLinuxサーバに、WindowsクライアントからTera TermでSSH接続する環境を作りました。

今回はこの環境のWindows OSにXmingを導入して、X Window Serverを起動し、
Windows端末の画面にLinuxのGUIを表示して
Linux OSの搭載されたサーバに KVM が接続されていなくても
リモート接続端末から設定ができるようにする方法を確認していきましょう。

今回は、Windows端末のTera Termを使用します。あらかじめ準備しておきましょう😊

Xmingのインストール

以前掲載した記事を応用して、Xmingをダウンロードします。
今回は本記事執筆時点で最新の6.9.0.31をダウンロードしました。

Setupウィザードを開き、Nextをクリックしてセットアップを開始します。

インストール先を指定してNextをクリックします。
基本的にはデフォルトのままで困りません。

インストールしたいコンポーネントを選択します。

参考までに、今回執筆のためにインストールで選択したコンポーネントは次の通りです。

よくわからない場合はフルインストールしてみるのも一つの手段です。

 

 

 

 

スタートメニューフォルダの名前を指定してNextをクリックします。

追加で実施したいタスクがある場合、チェックをしてNextをクリックします。

指定した内容に間違いがないことを確認してInstallをクリックします👀

Finishをクリックします。

スムーズにインストールできましたでしょうか🍀

 

 

Xmingの起動

XLaunchを起動します。

Multiple windowsにチェックをして「次へ」をクリックします。

Start no clientにチェックをして「次へ」をクリックします。

No Access Controlにチェックをして「次へ」をクリックします。

「完了」をクリックします。

正常に動作すれば、タスクバーにXming Serverのアイコンが表示されます。

GUIアプリケーションの起動

Tera Termを起動します。
(インストールしていない場合はこちらの記事を参考に導入してみてください。)
設定 > SSH転送
と選んでいって、「SSHポート転送」の画面を表示します。

「リモートのXアプリケーションをローカルのXサーバに表示する」にチェックを入れて「OK」をクリックします。

GUIアプリケーションを起動するユーザでログインします。
(直接ログインしたユーザでGUIアプリケーションを起動します)

GUIアプリケーションを起動します。

GUIアプリケーションが操作できることを確認します👀

あたかもWindows上のアプリケーションを操作しているかのように見えますが、実際の処理はLinuxサーバ側で行われています👀

 

 

 

 

LinuxのGUIをWindowsで動かす仕組み

Linuxサーバに KVM が搭載されている場合は、それを使って GUI 操作をすれば問題ありませんが、
KVM がサーバラックに無い場合の GUI 操作回避策として今回の手法をご紹介しています🍀

次の図はLinuxサーバに KVM が搭載されている場合を表しています。

KVM からGNOME 端末にコマンドを打ち込んで
GUI アプリケーションが起動してX Window Serverから KVMGUI が映ります。
Linux OS内でクライアントとサーバが動作していることがわかりますね。

次の図はLinuxサーバに KVM が搭載されていない場合を表しています。
今回ご紹介している手法がこの図の通りです。

Tera TermからコマンドをSSH Serverに連携して GUI アプリケーションを起動してXmingに GUI が映ります。
操作は全部Windowsで完結して、処理はサーバで実行されていることがわかりますね。

Linux OSを搭載しているのがサーバ筐体なので、X Window Systemに関してもWindowsがクライアントでLinuxがサーバと思われがちですが、
実際はWindowsがサーバでLinuxがクライアントになります。
これを理解していれば、Windowsのソフトウェアファイアウォールの設定をどうしたらいいかがおのずとわかると思います🤗

おわりに

Linuxの GUI アプリケーションをWindows上で操作することはできましたでしょうか👀

操作方法を覚えることは大切ですが、使用しているソフトウェアがどのように動作しているのか理解しておくことも同じように大切です。
複雑なので仕組みまで調べないで進んでしまいがちですが、少しでいいので仕組みにも目を向けていくと応用が利くようになります。

隙間時間などを利用していろいろ調べてみると、楽しく学べるかもしれませんね。

ご覧いただきありがとうございました😆

 

投稿者プロフィール

技術チーム
技術チーム
DBひとりでできるもんを盛り上げるべく、技術チームが立ち上がり早6年。ひとりでできるもんと言いつつ、技術者が読んでプッとなるような、極めてピンポイントでマニアックな技術ネタを執筆しています!