クロームを通じてLinuxにリモートアクセスする方法と黒い画面の問題の解決方法
概要
Linuxの場合、Chromeリモートデスクトップへの接続がWindowsほど簡単ではない。黒い画面とカーソルだけが表示され、使用できないという問題があるため、これを解決する方法を見てみよう。簡単な作業ではないが、初心者でも見て従うことができるようにできるだけ簡単に書いた。
ガイド
接続を試みるクライアントclient側をオリジンorigin、接続を許可するサーバserver側をリモートremoteと呼ぶ。
1. リモートデスクトップアプリのインストール
リモートで作業する。
https://dl.google.com/linux/direct/chrome-remote-desktop_current_amd64.deb
リモート側で上記リンクをクリックして chrome-remote-desktop_current_amd64.deb
ファイルをダウンロードしてパッケージをインストールする1。最近では、LinuxでもDebianファイルマネージャを通じてダブルクリックで簡単にインストールできる。
2. SSHを通じたリモートデスクトップの設定
オリジンで作業する。
リモートデスクトップページで上記のような g.co/crd/headless ページまたは https://remotedesktop.google.com/headless リンクに遷移するように案内される。オリジンでアクセスしてみると、次のように案内が表示される。
承認/次へなどのボタンをクリックしていくと、上記のように長く複雑なコマンドが提供されるページに到達する。赤い四角で示されたボタンを押してコマンドをクリップボードにコピーする。
sshを通じてリモートに接続した後、コピーしたコマンドをペーストすると6桁以上のPIN(パスワード)を設定するように案内される。sshでの接続方法がわからない場合はCLIによるSSHサーバ接続の方法ポストを参考にする。
最後にリモート側でパスワードを入力すると、次のようにホストが正常に開始されたというメッセージが表示される。
3. スクリプトの修正 2
リモートで作業する。ここからが本格的に難しい。
3-1. アプリの停止
sudo cp /opt/google/chrome-remote-desktop/chrome-remote-desktop /opt/google/chrome-remote-desktop/chrome-remote-desktop.orig
/opt/google/chrome-remote-desktop/chrome-remote-desktop --stop
リモート側でリモートデスクトップページを確認すると、「このデバイス」にあったインストール案内の代わりにリモートデバイスが追加された。スクリプトを編集する前に、まず上記のコマンドを実行してスクリプトをバックアップし、実行中のChromeリモートを停止しよう。
3-2. ディスプレイ番号
echo $DISPLAY
sudo gedit /opt/google/chrome-remote-desktop/chrome-remote-desktop
ディスプレイ番号を確認し(おそらく0であろう)、geditを使ってスクリプトファイルを開こう。
FIRST_X_DISPLAY_NUMBER
を確認したディスプレイ番号に変更する。デフォルト値は20であろう。
3-3. get_unused_display_number
の修正
while os.path.exists(X_LOCK_FILE_TEMPLATE % display):
display += 1
get_unused_display_number
関数を見つけ、上記の while
文をコメントアウトする。
3-4. launch_session
の修正
display = self.get_unused_display_number()
self.child_env["DISPLAY"] = ":%d" % display
launch_session
関数を見つけ、self._setup_gnubby()
から self.launch_x_session()
または self.launch_desktop_session()
までをコメントアウトする。そして上記のコードをコメントの直下に挿入する。
4. 接続の確認
/opt/google/chrome-remote-desktop/chrome-remote-desktop --start
再度Chromeリモートのスタートアプリを実行する。
オリジンからLinuxリモートに正常に接続できることを確認する。
環境
- Linux Mint 21.2 Cinamon v5.8.4
- NAVER Whale v3.26.244.21