記事一覧へ English

Internet of Tomohiro

よろしければ投げ銭をお願いします。


sshでGoogle Colaboratoryを使う

2022/9/15: Google ColaboratoryでリモートデスクトップまたはSSH を使うことは許可されなくなりました

VNCを使ってGoogle Colaboratory上のデスクトップ環境を使うこともできます。

必要なもの

手順

詳しい手順は以下のサイトをご覧下さい。

https://github.com/demotomohiro/remocolab/blob/master/README.md

うまくいかないときは以下のページが参考になるかもしれません。

https://github.com/demotomohiro/remocolab/wiki/Frequently-Asked-Questions

  1. ngrok にサインアップ
  2. コードをセルへコピペする
  3. 左上の再生ボタンのようなところをクリック
  4. ngrokのauthtokenをコピペする

    ngrokのauthtokenをコピペするようメッセージが表示されるのでngrokにログインして左のメニューからAuthをクリックし、Copyをクリックし、Google Colaboratoryの画面に戻ってペーストしてエンターキーを押して下さい。

  5. ngrok regionを訊かれるので自分に一番近い場所を選んで入力

    今日本にいるならjpと入力してエンターキーを押します。

  6. SSHサーバ立ち上がるまで待つ
  7. サーバにログイン

仕組み

Google Colaboratory ではpythonのコードだけでなく先頭に!をつけることでbashコマンドも実行することができます。 コマンドはrootユーザとして実行されるので aptpip でパッケージを追加したり wget でどこかからファイルをダウンロードして実行することもできます。 なので簡単にopensshをインストールしてsshdを起動することができます。 sshdを普通に実行しただけではインターネット経由でログインすることはできないのでngrokを使ってログインできるようにしています。 しかしsshでのアクセスが常にngrokのサーバを経由するため遅延が大きくなります。

【おまけ】Nimをインストールして使ってみる

Pythonよりも使いやすくて高速な Nim 言語をインストールしてみます。 以下のコマンドを実行します。

$ curl https://nim-lang.org/choosenim/init.sh -sSf | sh

インストールが終わると

export PATH=/home/colab/.nimble/bin:$PATH

~/.bashrc に追加するよう言われるのでそうします。

以下のようにNimが使えるようになります。

$ echo "echo \"Hello Nim!\"" > hello.nim
$ nim c -r hello.nim

by Tomohiro

記事一覧へ