2015-05-05-raspbian-wheezy (2015/05/10)

Raspbian の新バージョンの 2015-05-05-raspbian-wheezy が 5月7日に公開されました。Debian の新しいバージョン(8.0)「jessie」が4月25日に公開されたので、Raspbian も jessie ベースを期待していましたが、まだ「wheezy」でした。 その代わり、デスクトップのユーザインターフェイスが改善されました。


2015年5月以前のデスクトップの右上のメニューバーは上のようなものでした。 今回の新しいバージョンではネットワークの状態と音量調整用のアイコンが増えています。ちょっと便利になりました。 無線LANの設定も簡単になっています(後述)。


2015-05-05-raspbian-wheezy のインストール

バージョンアップは以下のコマンドを実行するだけですが、ここではディスクイメージ (2015-05-05-raspbian-wheezy.img) からインストールしてみました。

sudo apt-get update
sudo apt-get dist-upgrade

作業を行うSD カードはデータがすべて初期化されるので、新しいカードやデータが不要で消去してもいい SD カードを使って下さい。

いつものように MacBook Pro17(MacOSX 10.10.3) でインストール作業した記録です。 MacOS X ではデバイス名の指定方法が異なるだけで、Linuxと同じく dd コマンドを使ってSDカードに ディスクイメージを書き込みます。 以下の例は、私のMacBookでの例です。今回の作業では SDカード が /dev/disk3 で認識されています。適宜読み替えてください。

dd コマンドのデバイスの指定を間違えると最悪ハードディスクがすべて消えるなどの悲惨な結果が待っています。十分に注意して行なってください。

$ uname -rsv
Darwin 14.3.0 Darwin Kernel Version 14.3.0: Mon Mar 23 11:59:05 PDT 2015;
root:xnu-2782.20.48~5/RELEASE_X86_64

ダウンロードしたディスクイメージは以下のサイズです。

$ ls -lt
-rw-r--r--@ 1 jun  staff  1038523231  5  7 18:54 2015-05-05-raspbian-wheezy.zip

イメージのハッシュ(SHA-1 Checksum)が公式サイトにある cb799af077930ff7cbcfaa251b4c6e25b11483de であることを確認します。

$ shasum 2015-05-05-raspbian-wheezy.zip
cb799af077930ff7cbcfaa251b4c6e25b11483de  2015-05-05-raspbian-wheezy.zip

いつものようにMacBook Pro17 にUSB接続のmicroSDカードリーダを接続して、SDカードをアンマウントします。

$ df -k
Filesystem   1024-blocks    Used Available Capacity  iused   ifree %iused  Mounted on
 略
/dev/disk3s1   15343616      2400  15341216     1%      0       0  100%   /Volumes/NO NAME

$ diskutil unmount /dev/disk3s1
Volume NO NAME on disk3s1 unmounted

今回のSDカードは、安かったので microSDHC 16GB Class10 を新しく3枚買ったうちの1枚です。

$ sudo fdisk -i /dev/disk3
Password:
fdisk: could not open MBR file /usr/standalone/i386/boot0: No such file or directory

  -----------------------------------------------------
  ------ ATTENTION - UPDATING MASTER BOOT RECORD ------
  -----------------------------------------------------

Do you wish to write new MBR and partition table? [n] y

パーティションを確認。

$ sudo fdisk /dev/disk3
Disk: /dev/disk3  geometry: 1911/255/63 [30703616 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
*1: AB    0   1   1 - 1023 254  63 [        63 -      16384] Darwin Boot 
 2: AF 1023 254  63 - 1023 254  63 [     16447 -   30687169] HFS+        
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused      
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused

zipファイルを展開します。

$ unzip 2015-05-05-raspbian-wheezy.zip 
Archive:  2015-05-05-raspbian-wheezy.zip
inflating: 2015-05-05-raspbian-wheezy.img

$ ls -lt 2015-05-05-raspbian-wheezy.*
-rw-r--r--@ 1 jun  staff  1038523231  5  7 18:54 2015-05-05-raspbian-wheezy.zip
-rw-r--r--@ 1 jun  staff  3276800000  5  7 09:00 2015-05-05-raspbian-wheezy.img

SDカードに書き込みます。

$ sudo time dd bs=1m if=2015-05-05-raspbian-wheezy.img of=/dev/rdisk3
3125+0 records in
3125+0 records out
3276800000 bytes transferred in 292.948926 secs (11185568 bytes/sec)
      293.05 real         0.01 user         2.32 sys

ブート領域のファイルを確認します。

$ cd /Volumes/boot
$ ls -lt
total 38320
-rwxrwxrwx  1 jun  staff      137  5  7 00:31 issue.txt
drwxrwxrwx  1 jun  staff     8192  5  6 23:23 overlays
-rwxrwxrwx  1 jun  staff      120  5  6 23:23 cmdline.txt
-rwxrwxrwx  1 jun  staff     1584  5  6 23:23 config.txt
-rwxrwxrwx  1 jun  staff    18693  4 27 13:40 COPYING.linux
-rwxrwxrwx  1 jun  staff     1447  4 27 13:40 LICENCE.broadcom
-rwxrwxrwx  1 jun  staff     4702  4 27 13:40 bcm2708-rpi-b-plus.dtb
-rwxrwxrwx  1 jun  staff     4423  4 27 13:40 bcm2708-rpi-b.dtb
-rwxrwxrwx  1 jun  staff     5690  4 27 13:40 bcm2709-rpi-2-b.dtb
-rwxrwxrwx  1 jun  staff    17900  4 27 13:40 bootcode.bin
-rwxrwxrwx  1 jun  staff     6161  4 27 13:40 fixup.dat
-rwxrwxrwx  1 jun  staff     2366  4 27 13:40 fixup_cd.dat
-rwxrwxrwx  1 jun  staff     9216  4 27 13:40 fixup_db.dat
-rwxrwxrwx  1 jun  staff     9214  4 27 13:40 fixup_x.dat
-rwxrwxrwx  1 jun  staff  3974884  4 27 13:40 kernel.img
-rwxrwxrwx  1 jun  staff  3930004  4 27 13:40 kernel7.img
-rwxrwxrwx  1 jun  staff  2664088  4 27 13:40 start.elf
-rwxrwxrwx  1 jun  staff   567672  4 27 13:40 start_cd.elf
-rwxrwxrwx  1 jun  staff  4644712  4 27 13:40 start_db.elf
-rwxrwxrwx  1 jun  staff  3621768  4 27 13:40 start_x.elf
-rwxrwxrwx  1 jun  staff    18974  9 25  2013 LICENSE.oracle

Raspberry Pi2用のカーネルイメージの kernel7.img がこれまでより増えています。 また、bcm2708-rpi-b-plus.dtb、bcm2708-rpi-b.dtb、bcm2709-rpi-2-b.dtb の3つのファイルがデバイスツリーのファイルとして新しく増えています。さらに、 overlays というディレクトリも追加されています。

$ cd overlays/
$ ls -l
total 480
-rwxrwxrwx  1 jun  staff  15653  4 27 13:40 README
-rwxrwxrwx  1 jun  staff   2394  4 27 13:40 ads7846-overlay.dtb
-rwxrwxrwx  1 jun  staff    446  4 27 13:40 bmp085_i2c-sensor-overlay.dtb
-rwxrwxrwx  1 jun  staff    409  4 27 13:40 ds1307-rtc-overlay.dtb
-rwxrwxrwx  1 jun  staff   1367  4 27 13:40 enc28j60-overlay.dtb
-rwxrwxrwx  1 jun  staff    779  4 27 13:40 hifiberry-amp-overlay.dtb
-rwxrwxrwx  1 jun  staff    655  4 27 13:40 hifiberry-dac-overlay.dtb
-rwxrwxrwx  1 jun  staff    783  4 27 13:40 hifiberry-dacplus-overlay.dtb
-rwxrwxrwx  1 jun  staff    783  4 27 13:40 hifiberry-digi-overlay.dtb
-rwxrwxrwx  1 jun  staff   2428  4 27 13:40 hy28a-overlay.dtb
-rwxrwxrwx  1 jun  staff   2899  4 27 13:40 hy28b-overlay.dtb
-rwxrwxrwx  1 jun  staff   1519  4 27 13:40 i2c-rtc-overlay.dtb
-rwxrwxrwx  1 jun  staff    775  4 27 13:40 iqaudio-dac-overlay.dtb
-rwxrwxrwx  1 jun  staff    775  4 27 13:40 iqaudio-dacplus-overlay.dtb
-rwxrwxrwx  1 jun  staff   1428  4 27 13:40 lirc-rpi-overlay.dtb
-rwxrwxrwx  1 jun  staff   1865  4 27 13:40 mcp2515-can0-overlay.dtb
-rwxrwxrwx  1 jun  staff   2673  4 27 13:40 mz61581-overlay.dtb
-rwxrwxrwx  1 jun  staff    405  4 27 13:40 pcf2127-rtc-overlay.dtb
-rwxrwxrwx  1 jun  staff    405  4 27 13:40 pcf8523-rtc-overlay.dtb
-rwxrwxrwx  1 jun  staff   2609  4 27 13:40 piscreen-overlay.dtb
-rwxrwxrwx  1 jun  staff   2658  4 27 13:40 pitft28-resistive-overlay.dtb
-rwxrwxrwx  1 jun  staff   1003  4 27 13:40 pps-gpio-overlay.dtb
-rwxrwxrwx  1 jun  staff    643  4 27 13:40 rpi-dac-overlay.dtb
-rwxrwxrwx  1 jun  staff   2365  4 27 13:40 rpi-display-overlay.dtb
-rwxrwxrwx  1 jun  staff    771  4 27 13:40 rpi-proto-overlay.dtb
-rwxrwxrwx  1 jun  staff    330  4 27 13:40 spi-bcm2835-overlay.dtb
-rwxrwxrwx  1 jun  staff   5042  4 27 13:40 tinylcd35-overlay.dtb
-rwxrwxrwx  1 jun  staff   1124  4 27 13:40 w1-gpio-overlay.dtb
-rwxrwxrwx  1 jun  staff   1291  4 27 13:40 w1-gpio-pullup-overlay.dtb

デバイスツリーの定義ファイルが増えています。ハードウェアの違いを吸収するため、色々なハードウェアの個別の設定値をカーネルの外で用意しておいて、起動時にカーネルに渡すことで1種類のカーネルで多くのハードウェアに対応する仕組みです。 ここで用意されている拡張子が dtb のファイルは既に市販されている HAT(Hardware Attached on Top) と呼ばれる拡張ボードに対する設定になっています。 これまでは拡張ボードを購入してもLinuxに詳しくないと使えなかったりしていたものが、メーカ側で用意したファイルを/boot/overlays/ 以下に置いて、/boot/config.txt にちょっと追加すれば比較的簡単に使えるようになるのでしょう。

/boot/config.txt を確認するとデバイスツリー関連の記述が追加されています。

$ cat config.txt
# For more options and information see 
# https://www.raspberrypi.org/documentation/configuration/config-txt.md
# Some settings may impact device functionality. See link above for details

# uncomment if you get no picture on HDMI for a default "safe" mode
#hdmi_safe=1

# uncomment this if your display has a black border of unused pixels visible
# and your display can output without overscan
#disable_overscan=1

# uncomment the following to adjust overscan. Use positive numbers if console
# goes off screen, and negative if there is too much border
#overscan_left=16
#overscan_right=16
#overscan_top=16
#overscan_bottom=16

# uncomment to force a console size. By default it will be display's size minus
# overscan.
#framebuffer_width=1280
#framebuffer_height=720

# uncomment if hdmi display is not detected and composite is being output
#hdmi_force_hotplug=1

# uncomment to force a specific HDMI mode (this will force VGA)
#hdmi_group=1
#hdmi_mode=1

# uncomment to force a HDMI mode rather than DVI. This can make audio work in
# DMT (computer monitor) modes
#hdmi_drive=2

# uncomment to increase signal to HDMI, if you have interference, blanking, or
# no display
#config_hdmi_boost=4

# uncomment for composite PAL
#sdtv_mode=2

#uncomment to overclock the arm. 700 MHz is the default.
#arm_freq=800

# Uncomment some or all of these to enable the optional hardware interfaces
#dtparam=i2c_arm=on
#dtparam=i2s=on
#dtparam=spi=on

# Uncomment this to enable the lirc-rpi module
#dtoverlay=lirc-rpi

# Additional overlays and parameters are documented /boot/overlays/README

Raspberry Pi で動かすため、Mac から SDカードをアンマウントして取り出します。 /dev/disk3s2 はフォーマットが ext4 なので Mac では見えていないのが普通です。

$ df -k
Filesystem   1024-blocks    Used Available Capacity  iused     ifree %iused  Mounted on
 略
/dev/disk3s1     57288     19432     37856    34%      512         0  100%   /Volumes/boot
/dev/disk3s2   3089272   2471296    461048    85%    86233    109991   44%   /Volumes/Untitled

$ diskutil unmount /dev/disk3s1
Volume boot on disk3s1 unmounted
$ diskutil unmount /dev/disk3s2
Volume  on disk3s2 unmounted

新しいイメージで起動

Linux raspberrypi 3.18.11-v7+ #781 SMP PREEMPT Tue Apr 21 18:07:59 BST 2015 armv7l

raspi-config による初期設定

インストールしたSDカードをRaspberry Pi 2 にセットして起動します。 最初の起動時に設定画面が表示されます。 基本的に2013-09-25-wheezy-raspbian の設定画面の解説追加分と同じです。

その他の設定

デスクトップとして使う場合は、以下の記事を参考にして下さい。

日本語化
デスクトップの軽量な日本語化と英語モードとの切替。
デスクトップのカスタマイズ
デスクトップのウィンドウやダイアログの色や形状を変更する方法。

新しい無線LANの設定

2015年5月以降のRaspbianでは、デスクトップのメニューから無線LANの設定も簡単になりました。 ネットワークを接続しないで、コンソールから「startx」コマンドでデスクトップを起動場合のメニューの様子です。 マウスカーソルをネットワークのアイコンまで持って行くと下の図のように有線(eth0)も無線(wlan0)も使えない事がわかります。


USBの無線LANドングルを接続して(要リブート)、デスクトップを起動してネットワークのアイコンをクリックするとすると次のようにアクセスポイントの一覧(モザイクをかけています)が表示されます。


自分のルータのSSIDをクリックすると、暗号化キー (パスフレーズ) の入力ダイアログが表示されるので、キーを入力します。


アイコンの表示が強度表示に変わったら無線が使用できるようになります。


この後は、デスクトップを起動しなくても設定は保存されているため、再起動後でも無線LANは有効になります。 以上の操作で /etc/wpa_supplicant/wpa_supplicant.conf が書き換わります。 SSIDと暗号化キーが 平文(そのまま)で記入されます。

pi@raspberrypi /etc/wpa_supplicant $ sudo cat wpa_supplicant.conf
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
  ssid="Buffalo-XXXXXX"
  psk="XXXXiefasXXXX"
  key_mgmt=WPA-PSK
}

パスプレーズの暗号化

暗号化キー(パスフレーズ)がファイルに平文で書かれることが気持ち悪い場合は、次のように wpa_passphrase コマンドでパスフレーズの暗号化を行う事ができます。

$ wpa_passphrase Buffalo-XXXXXX XXXXiefasXXXX
network={
  ssid="Buffalo-XXXXXX"
  #psk="XXXXiefasXXXX"
  psk=170a9192acb1efaed279ac4fa544bec264c35273b16a0ea0538470177cb1992e
}

wpa_passphrase コマンドの出力内の変換された psk の値(上記の psk=170a919.... )を /etc/wpa_supplicant/wpa_supplicant.conf の psk= の暗号化キーの行と入れ替えても同じように使うことができます。

続く...