プログラミングなんてわからないんですけど〜

元プログラマによるプライベートでのプログラミング日記。たぶん1/3くらいしかプログラミングの話はしません

Raspberry Piでサーバを構築する(OSインストールからssh接続まで)

f:id:kaias1jp:20180307055738p:plain
今回から数回に分けて、Raspberry Piでサーバを構築していくのを記事にしたいと思います。
今日は、OSのインストールからssh接続ができるまでです。なお、ハードはRaspberry Pi3を想定しています。

まずOSのインストールです。Raspberry Piで使用できるOSはいくつか存在しますが、今回はサーバ用途としてRaspbian Liteを選択します。このOSを選択した理由はいくつかありますが、普通使うRaspbianとの互換性があるのでネットに参考になる情報が多いのと、他のOSに比べて安定性がある点を考慮に入れました。

Raspberry PiのOSインストールですが、現状、Windows/macOS/Linuxなどが動いているコンピュータが必要だと考えています。これは、OSのイメージファイルをmicroSDに書き込む操作がこれらでしかできないからです。もし、androidやiOSなどでもできるようでしたら情報をいただけると助かります。

Raspbian Liteはイメージファイルの形式で配布されています。このファイルはSDカードへの書き込みソフトを使用することで簡単にOSのインストールができるようになっています。まずは、Raspberry Piの公式サイトからダウンロードしましょう。
www.raspberrypi.org

右下にある「RASPBIAN STRETCH LITE」の「Download ZIP」をクリックして、まずはzip形式のファイルをダウンロードしてみましょう。
f:id:kaias1jp:20180307061503p:plain

ネット回線の速度にもよりますが、1時間もあればダウンロードできるはずです。
ダウンロードしたら、zipファイルをimgファイルに変換します。方法がわからない人は、「zip 解凍」などのキーワードで検索してみてください。
imgファイルができたら、これをmicroSDに書き込みます。microSDはSDカード変換アダプタとSDカードリーダ・ライタを使用してコンピュータに接続するのが良いでしょう。書き込みにはいろいろなソフトがありますが、今回は「Etcher」というソフトを使用します。
etcher.io
書き込み用のコンピュータにインストールすると次のアイコンが追加されると思いますので、起動します。
f:id:kaias1jp:20180307062241p:plain
書き込み方法はシンプルです。

  1. imgファイルを選択する
  1. 書き込み先のSDカードを選択する
  1. 書き込む

f:id:kaias1jp:20180307062417p:plain

普通は書き込めたらすぐにでも使用できるのですが、今回はssh接続をすぐにしたいのでひと工夫。書き込みが終わると1つ以上の領域(パーティション)がコンピュータに追加で表示されるかと思います。この中の「boot」というパーティションに「ssh」というファイルを作成してください。
f:id:kaias1jp:20180307063101p:plain
windowsなどでは、ファイルの作り方によって拡張子(.txtなど)がついてしまう場合がありますので注意してください。
こうしてできたmicroSDファイルをRaspberry Piに差し込んで電源を入れれば起動できるはずです。
f:id:kaias1jp:20180307063458j:plain

ssh接続まではもう少しです。Raspberry Piを有線LANに接続してください。無線LANも使えますが、今回は方法含めて省略します。普通の環境なら、DHCPによってIPアドレスが自動で割り当てられます。そうすればネットワークに接続できた状態になります。だいだい、raspberry Piに割り当てられたIPアドレスを何らかの方法で調べて接続するのですが、Raspbian Liteは最初からmDNSという機能に対応していますので、「raspberrypi.local」という名前で接続できます。なお、接続元のコンピュータによってはmDNSに対応していない場合がありますので、その場合はIPアドレスで接続してください。

「ssh pi@raspberrypi.local」で接続するとパスワードを聞いてきますので、初回は「raspberry」と打ちましょう。これでsshでRaspberry Piに接続できました。

ssh pi@raspberrypi.local

f:id:kaias1jp:20180307064416p:plain

以上でssh接続ができるようになりました。お疲れ様でした。