はじめに
間に合わせで購入した中古ノートPCが、突然フリーズしてHDDが吹っ飛んでしまった(実は、2017年、年始の話)。
SSDのご時世、HDDだったのも悪いのですが、えぇい、ならばCloudじゃー。
ということで、勢いで、GCE上にデスクトップ環境を作ってしまった時の作業メモです。
当時はUbuntu 16.04 LTSで構築したのですが、最近、Ubuntu 17.04でも試したので、それも記載しておきます。
なぜgnomeなんて重たいものを?とツッコまれそうですが、使い物になるか試してみたかったんです。
構成
Client Server(GCE)
+----+ +++----------+
| |<---->|||xrdp |
+----+ RDP +++----------+
||VNC Server |
++-----------+
|X Server |
+------------+
RDPのポートなら、ファイアウォールルールの設定がデフォルトでされているのもうれしいです。
ちなみに、Ubuntu 17.04では、xrdpのバージョンが新しく、VNC Serverを入れる必要がありません。
Ubuntuのインストール
ふつーにGCEのインスタンスを作成してください。16.04 LTSでも17.04でもお好きな方を。
タイムゾーンの設定
デスクトップとして使うので、タイムゾーンの設定をしましょ。
sudo dpkg-reconfigure tzdata
sudo apt-get update
タイムゾーンを変えたら、一旦apt-get updateしといた方がいいみたい。apt-get installする時に、先にupdateしろ!と怒られました。
gnome-shellを入れる
パッケージの指定は適当でよいです。依存関係は、aptが解決してくれるので。
たぶん、gnome-shellだけでも大丈夫だと思います。
大量のパッケージのインストールが始まるので、コーヒーでも飲んで静かに待ちましょう。
ここでX関連もインストールされます。
最初、aptitudeを入れて、aptitudeでGnome Desktop Environmentのインストールをしました。
そしたら、sshdも更新されたらしく、Google Cloud Consoleのsshでログインが出来なくなったので、手動で入れてます。
sudo apt-get install gnome-core gnome-shell gnome-software
tigervncserverを入れる(16.04 LTSの場合のみ)
[Debian 8のGNOME3デスクトップにVNC/XRDPでリモート接続する](https://www.hiroom2.com/2016/05/24/debian-8%E3%81%AEgnome3%E3%83%87%E3%82%B9%E3%82%AF%E3%83%88%E3%83%83%E3%83%97%E3%81%ABvnc-xrdp%E3%81%A7%E3%83%AA%E3%83%A2%E3%83%BC%E3%83%88%E6%8E%A5%E7%B6%9A%E3%81%99%E3%82%8B/
https://github.com/TigerVNC/tigervnc/releases)
こちらのサイトで述べられていますが、tigervncserverでないと、うまく接続できません。
Debianの場合、このサイトに記載されている作業をしなければいけませんが、Ubuntuの場合、tigervncserverのサイトでパッケージが用意されています。それをインストールするのがよいです。
リリースページから、ダウンロードのページまでのリンクがわかりづらいですが、最終的に以下のページにバイナリが置いてあります。
https://bintray.comのダウンロードページ
こちらから、16.04 LTS用のパッケージをダウンロードします。
そしたら、aptでインストールします。
sudo apt install ./tigervncserver_1.7.0-1ubuntu1_amd64.deb
私が入れたバージョンは1.7.0でしたが、1.8.0が出てますね。
xrdpを入れる
やっと、xrdpを入れる準備が整いました。
sudo apt-get install xrdp
ログイン用の一般ユーザを作成
Google Cloud ConsoleのsshでログインするGoogleのアカウントとは分けた方がよさそうです。
(Googleのアカウントだとsudo時にパスワードをきいてこなく、rootに近い扱いになってますし)
こちらの一般ユーザは、パスワードを設定します。
sudo adduser foo
一般ユーザでもさすがにsudoができないと不憫なので、sudoができるようにします。
sudo gpasswd -a foo sudo
これでsudoできるようになりますが、sudo時にパスワードはきかれます。
リモートでのログインする許可をする(17.04の場合のみ)
16.04 LTSでは不要でしたが、17.04では、設定を変えないとリモートからログインできませんでした。
XRDP – HowTo install on Ubuntu Gnome 17.04 – easy way
こちらに解決方法が書いてあります。
/etc/X11/Xwrapper.configのallowed_userを変更します。変更後は、マシンを再起動したほうがよいでしょう。
これで、リモートからログインできるようになります。
日本語環境を入れる
日本語の環境を入れます。
sudo apt-get install language-pack-gnome-ja
language-pack-gnome-jaを入れると、check-language-supportというコマンドが使用可能になります。
このコマンドは、該当する言語サポートで足りないパッケージを一覧で出力します。
なので、
sudo apt-get install $(check-language-support)
とすれば、あと必要なパッケージを入れることができます。
(もしかしたら、IMEは別途入れる必要あるかもしれません。私はmozcを入れました)
後は、設定のregion & languageから言語の選択で日本語が選択肢として表示されるので、それを選択してください。
何かcolor managed device作成の認証が毎回出る
XRDP – HowTo install on Ubuntu Gnome 17.04 – easy way
先ほど引用したサイトのLast Tweakに記載されています。
私の場合、16.04 LTS、17.04のどちらでも出ました。
/etc/polkit-1/localauthority.conf.d/ディレクトリに、02-allow-colord.confを作成し、設定を記述すればよいです。
終わりに
勢いでやってしまいましたが、以下の設定で、意外と使えるレベルになっています。
- 背景は画像でなくする
- gnome-shellのTweakでアニメーションをしないよう変更する
- それでもだめなら、画面の解像度・色数を下げる
いったい、誰得な記事なんだ、これは。