Raspbian Jessie Lite は、Raspbian の GUI 無し版。
サーバ用途で使う場合には、Lite の方が都合が良いこともある。
Headless インストールとは、Raspberry pi にディスプレイやキーボードをつながないという意味。
サーバ用途の場合は運用開始後は画面やキーボードは不要なことが多いので、どうせなら初めからつながずに動かせたらうれしいよね。
0. 作業手順(目次)
- OSイメージのダウンロード
- SDカードへの書き込み
- OSイメージに対する初期設定
- Raspberry pi の起動
- Raspberry pi での設定
1. OSイメージのダウンロード
ここからダウンロード。
2. SDカードへの書き込み
Mac で作業したので、dd コマンドを利用した。
たくさん説明してくれてるサイトがある。例えばここ。
うっかりミスると、 Mac 等のホストマシンのシステムを壊しかねないので注意して行う必要がある。
3. OSイメージに対する初期設定
ここがこのポストの重要なところ。SDカードに書き込んだマシンで、SDカードをマウントして設定を行う。
やることとしては、以下の3つ。
- SSH サーバの有効化
- ホスト名の変更(任意)
- 一時ファイルの RAM ディスク化設定(任意)
3.1 SSH サーバの有効化
A SECURITY UPDATE FOR RASPBIAN PIXEL によると、
If you want to enable SSH, all you need to do is to put a file called
ssh
in the/boot/
directory.
とあるので、以下のようにすればOK。boot パーティションが /mntpoint にマウントされている場合、
$ touch /mntpoint/boot/ssh
3.2 ホスト名の変更
Raspbian では、avahi が自動で起動するようになっているので、ipアドレスがわからなくても、Zeroconf に対応したクライアントからであればホスト名でアクセスできる。
ホスト名はデフォルトでは、raspberrypi.local なんだけど、複数台使いたい場合はホスト名変えないといけない。
そのためには、2 で書き込んだイメージのファイルを編集してしまえば OK。
第2パーティションが ext4 フォーマットになっているので、それをマウントして、
- etc/hostname
- etc/hosts
で raspberrypi となっている部分を設定したいホスト名に変えれば OK。
(Mac では、ext4 をマウントするためには ext4fuse を入れる必要がある。)
3.3 一時ファイルの RAM ディスク化設定(任意)
SDカードの寿命を長くするために一時ファイルをメモリ上に置くようにする。
etc/fstab に以下を追記しておく。
tmpfs /tmp tmpfs defaults,size=32m,noatime,mode=1777 0 0 tmpfs /var/tmp tmpfs defaults,size=16m,noatime,mode=1777 0 0 tmpfs /var/log tmpfs defaults,size=32m,noatime,mode=0755 0 0
4. Raspberry pi の起動
SDカードを挿し、電源とネットワークを繋いで起動する。ネットワークは DHCP サーバが動いていることが前提。
5. Raspberry pi での設定
WiFi 接続設定は、やり方さえ別れば、2. で行うこともできる。
その場合は有線LANも不要でセットアップ可能。