Raspbian初期セットアップの備忘録

  • 107
    いいね
  • 0
    コメント
この記事は最終更新日から1年以上が経過しています。

Mac用。RaspbianでもChefが使えるのでknife-soloを実行するまでのメモ。

RaspbianをSDカードに焼く

  1. DownloadからRaspbianイメージをダウンロードする
    • .zipの場合は.imgファイルに展開しておく
  2. SDカードを指す
  3. df -hでSDカードのディスク名をチェックする
    • /dev/diskNsXがディスク名なら /dev/rdiskN がrawディスク名となる
    • 例えば /dev/disk1s1 なら /dev/rdisk1
  4. ddコマンドでイメージを焼く

Macがインストールされたハードドライブを間違えて更新しないように指定するディスクは注意して確認すること

実行例: SDカードが/dev/disk2s1~/Download/2015-05-05-raspbian-wheezy.imgを焼く場合

Terminal(OSX)
cd ~/Downloads
sudo diskutil unmount /dev/disk2s1
sudo dd bs=1m if=2015-05-05-raspbian-wheezy.img of=/dev/rdisk2
sudo diskutil eject /dev/disk2s1

raspi-config

最初の起動時にraspi-configが起動する。しない場合はTerminalから sudo raspi-configを実行する。任意のタイミングでraspi-configは呼び出せる。

設定後、rebootを促されたら再起動する。

パーティションの拡張

初期イメージのままだと2GBまでしか使えないのでSDカードをフルに利用するためにパーティションの拡張を実行する。

  • Expand Filesystem

日本仕向け設定

日本語フォントがないとja_JP.UTF-8で文字化けするのでLocaleの設定はPCからリモートで繋いでからでも良いかもしれない。

  • Internationalisation Options > Change Locale > ja_JP.UTF-8
  • Internationalisation Options > Change Timezone > Asia > Tokyo
  • Internationalisation Options > Change Keyboard Layout > Generic 101-key PC > Other > Japanese > Japanese > The default for the keyboard layout > No compose key

ホスト名設定

ホスト名を変更しておく、デフォルトだとraspberrypiなので複数台管理するとややこしくなる。

  • Advanced Options > A2 Hostname > rpi01

無線LANの設定

優先LANを使うのであれば必要なし、USB無線LANアダプタ使う場合は無線LANの設定をする。

(Raspbian)
sudo vi /etc/wpa_supplicant/wpa_supplicant.conf
/etc/wpa_supplicant/wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
    ssid="YOUR_SSID"
    psk="YOUR_PASSWORD"
    # 0: default, 1: stealth
    scan_ssid=0
}

YOUR_SSIDYOUR_PASSWORDを置き換えて、ステルスSSIDならscan_ssid1に設定するなど。

(Raspbian)
sudo reboot

IPアドレスのチェック

リブート後、Username: pi Password: raspberry でログインし、IPアドレスを調べる。

(Raspbian)
ifconfig

実行するコマンドをコピペしていきたいのでIPアドレスがわかったらPCからsshで接続する。(192.168.1.30を置き換えて読む)

Terminal(OSX)
ssh pi@192.168.1.30

パッケージを更新

パッケージを更新。時間がかかるのでしばし待つ。

(Raspbian)
sudo apt-get update
sudo apt-get upgrade

vimを使う

nanoが使いこなせないので /usr/bin/vim.tiny を使う。

(Raspbian)
sudo apt-get install -y vim
sudo update-alternatives --set editor /usr/bin/vim.tiny

ユーザの作成

電気工作で遊ぶだけならpiユーザのままでいいけど、外部公開するサーバの場合は以下のような対応を行うのが良いと思われる。(<youraccount>のところを自分のアカウント名に置き換えて読む)

  • piユーザでpasswdコマンドを実行しpiユーザのパスワードを変更しておく
  • sudo passwdコマンドを実行しrootのパスワードを変更しておく
  • sudo adduser <youraccount>でユーザを追加する
  • sudo visudo<youraccount> ALL=(ALL) NOPASSWD: ALLを最後に追加する
    • Chef Soloを使うため パスワード無しsudoを実行できるようにしておく
#includedir /etc/sudoers.d
pi ALL=(ALL) NOPASSWD: ALL
<youraccount>  ALL=(ALL) NOPASSWD: ALL

sshの設定

sshの公開鍵を送りつける。(ssh-copy-idはHomebrewからインストールできる)

Terminal(OSX)
ssh-copy-id 192.168.1.30

追加できたらパスワードなしでssh出来るかチェック。

Terminal(OSX)
ssh 192.168.1.30

ログインできたらsudo vi /etc/ssh/sshd_configで編集してrootのログインとパスワード認証を無効にしておく。外部公開するサーバならポートも変更しておく。

/etc/ssh/sshd_config
#PermitRootLogin yes
PermitRootLogin no
...
#PasswordAuthentication yes
PasswordAuthentication no

一番最後に以下を追加してLAN内からはパスワード認証を許可しておく。

/etc/ssh/sshd_config
Match Address 192.168.*.*
  PasswordAuthentication yes

ssh再起動

(Raspbian)
sudo /etc/init.d/ssh restart

Chefでセットアップ

chef-soloでセットアップしたい人向け。

jessieではRaspbian側にruby2.1-devを入れておかないとknife solo prepareでchefがインストールされなかった、以下でruby2.1-devをインストールする。

(Raspbian)
sudo apt-get install ruby2.1-dev

Ruby 2.2.2以上が必要なRack 2.0がインストールされるようになりknife solo prepareでchefがインストールされない場合、自分でchefをインストールする。

(Raspbian)
sudo gem i rack -v 1.6.4 --no-ri --no-rdoc
sudo gem i chef --no-ri --no-rdoc

あとはChefのレシピ書いてMacからknife-soloで頑張る。

Terminal(OSX)
knife solo prepare 192.168.1.30
knife solo cook 192.168.1.30

ChefでPlatformを使って分岐する場合、Raspbianは以下のような値を持つ。

key value
platform raspbian
platform_family debian

その他