はじめに
Oracle Cloud(OCI)のComputeではUbuntu Serverを構築することができるが、
デフォルトではCLIの操作しかできず、デスクトップ環境はインストールされていない状態となる。
今回とあるGUIアプリケーションをUbuntu上で動作させたい需要があり、
UbuntuにLXQtと呼ばれるデスクトップ環境を構築し、Windows OS標準のリモートデスクトップから接続できるような環境を整備する。
今回こちらの動画を参考にさせていただき記事を投稿致します。
LXQtとは
LXDE、LXQt共に、GNOMEやKDEと同じようにウィンドウマネージャ、ファイルマネージャなどのソフトウェアをまとめたデスクトップ環境の1つです。
LXDEはC言語で実装され、GTK+ツールキットを利用しています。一方、LXQtはC++で実装され、Qtツールキットを利用しています。LXQtはLXDEをQtを用いて書き換えたもの、と言うことができます。
LXDE、LXQtは、Windowsに似たインターフェイスを提供し、初心者にも使いやすいデスクトップ環境となっています。また、軽量に作られており、スペックの低いPCでも動作します。
早速構築
インスタンス作成
OCIのコンソール画面のコンピュート→インスタンスよりインスタンスの作成をクリック
- イメージは"Canonical Ubuntu 22.04"を選択
- Shapeは任意のものを選択
- 今回はVM.Standard.E5.Flexの2 core OCPU, 24 GB memoryを選択してみました
- プライマリネットワークやサブネットも任意になりますが、ssh(22)とRDP(3389)をセキュリティリスト or ネットワークセキュリティグループで許可するように設定ください
- 他必要項目を埋めた後に作成ください
必要なパッケージのインストール&設定
sshでログイン
#- Connect to the server
ssh -i /path/to/key ubuntu@server_ip
Rootに変更&パスワードの設定
#- Switch to root and set password for root
sudo su -
passwd
必要パッケージのインストール
# -Install desktop env. and xrdp
apt update && apt -y upgrade
apt install -y lxqt sddm xrdp
途中Pending kernel upgradeの画面が表示されますが、Ok→Okで進めてください
xrdpの有効化
systemctl enable --now xrdp
systemctl status xrdp
iptablesに3389 Portの許可
vim /etc/iptables/rules.v4
22番ポートと同様に、3389ポートも許可するように追記ください
# ~ 16行目あたり
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3389 -j ACCEPT #追記★
# ~
設定の反映をします
iptables-restore < /etc/iptables/rules.v4
.xsessionにstartlxqtを記述
# Set startlxqt in the .xsession file
echo startlxqt >> ~/.xsession
startlxqt - script to initialize and launch LXQt sessions
https://manpages.ubuntu.com/manpages/bionic/en/man1/startlxqt.1.html
以上で設定は完了です
Windowsのリモートデスクトップから接続
上記設定が正しくできていれば、Windowsのリモートデスクトップ接続からアクセスが可能です。
これで簡単にデスクトップ環境の導入が成功しました。
うまく接続できない場合は、3389がOSとOCIからそれぞれ許可されているかをご確認ください。
参考記事