mikiyan1978’s 脱獄情報日記

脱獄に関する情報を発信します

単体theosでmake時の自動インストール

こんばんは、mikiyan1978です。 かなりお久しぶりのことと存じます。 仕事が超多忙なのと、ホームオーディオ、カーオーディオにハマってしまい脱獄そっちのけになっていました、、、

さて今回は、単体theosでコンパイル、ビルドしたdebをそのままインストールさせる方法です。 通常ならばMakefile

THEOS_DEVICE_IP = 127.0.0.1

と記述する事でインストール出来るのですが、ここ最近、この記述をしているのにも関わらず、下のようなエラーが出て困っていたので対処しました。 その対処法についてになります。

まずTerminalよりrootログインします。 次にcdにて/var/rootに移動します。

cd /var/root

そして下記コマンドを実行します。ここで注意ですが、途中でパスフレーズを要求されますが何も入力しないで下さい。今回は自動インストールさせる事が目的ですので、パスフレーズを設定してしまうと本末転倒になります。未入力のままenter keyを押して進んで下さい。

ssh-keygen && cd .ssh && cat id_rsa.pub >> authorized_keys

すると/var/rootに ./sshという隠しフォルダが作成されます。更にその中に3つのファイルが作成されていると思います。 このファイルはSSH秘密鍵,公開鍵のキーペアを作成するコマンドです。 id_rsa秘密鍵) id_rsa.pub (公開鍵) authorized_keys authorized_keysというファイルは本来、接続先のサーバーに作成配置するものですが、今回は単体theosでのインストールになります。つまり、接続先は自身となります。したがって、同じ配下に作成する必要があります。 ここまでで完了となりますが、このままコンパイルすると このようなメッセージが表示されます。これは初回SSH接続時に表示されます。 次のように、yesと打ち込みます。 これでインストールが実行されるはずです。 因みに、yesと回答する事で known_hosts というファイルが作成されます。 sshでは、2回目のログインからホスト認証が自動的に行われます。この認証では、ホスト鍵が利用されます。sshのknown_hosts とは、サーバのホスト鍵(host key)の1つのホスト公開鍵を登録するファイルです。 はじめてログインするホストのホスト鍵は、ユーザは通常は持っていないため、known_hostsに追加するか、sshコマンドによって確認されます。2回目以降のログインについては、known_hostsにホスト鍵が登録されているため、sshコマンドによって、自動的にホスト認証が実施されます。 以上で次からのコンパイルでは自動インストールされるようになります。 この./sshフォルダは別の場所へバックアップしておく事で、誤って消してしまった時などに、このディレクトリへ再度コピーするだけで済みます。