Raspberry Pi, Raspbian Wheezy

スポンサーリンク

Raspberry Pi に Raspbian をインストールしてみます.
Raspbian の SD カードは,OS X 10.9 Mavericks で作成します.

以前は Oracle Java SE が Soft-float のみサポートしていたので Soft-float Debian “wheezy” を使用していたのですが,Oracle Java SE が Hard-float もサポートするようになったので,普通の Raspbian をインストールします.
Raspberry Pi の OS ダウンロードサイトからも Soft-float Debian “wheezy” は消えているようです.

Java SE 7u40 で Hard-float がサポートされたときの歓喜のポスト.(2013-09-20)
Java SE 7u40 で,ついに Hard Float ABI サポート!

OS

http://www.raspberrypi.org/downloads からダウンロードします.

2013-11-17 時点,Raspbian のファイル名は,2013-09-25-wheezy-raspbian.zip でした.

OS イメージの SD カードへの書き込み

OS X 10.9 の場合,ダウンロードが完了すると,2013-09-25-wheezy-raspbian.img が生成されています.

SD カードは 4GB のものを使用しました.
環境により異なりますが,MacBook Pro (Retina, 13-inch, Late 2012) の SD カードスロットに SD カードを挿入すると,/dev/disk1 として認識されました.
ディスク名を間違えると,重要な HDD/SSD のデータが消えてしまうなど,取り返しの付かない事態にもなる可能性もあるので,自分の環境におけるディスク名はきちんと確認するようにします.

例えば,

ls -al /dev/disk1

.

brw-r-----  1 root  operator    1,   4 Nov 18 00:00 /dev/disk1

なお,あらかじめ SD カードをフォーマットしておきたい場合は,OS X 10.9 の場合,Applications – Utilities の Disk Utility を起動します.
Apple SDXC Reader Media の最上位階層を選択し,Erase タブを選択し,Erase ボタンを押すと,SD カードの内容が削除され,フォーマットされます.
フォーマットは MS-DOS (FAT) です.

SD カードをアンマウントします.

sudo diskutil unmountDisk /dev/diskXXX

結果,

Unmount of all volumes on diskXXX was successful

dd コマンドで,イメージを SD カードに書き込みます.
SD カードのデバイス名に注意します.

sudo dd bs=4m if=2013-09-25-wheezy-raspbian.img of=/dev/disk1

27 分程度かかりました.

706+1 records in
706+1 records out
2962227200 bytes transferred in 1620.537478 secs (1827929 bytes/sec)

最後に sync.

sudo sync

OS インストール後

Raspberry Pi に,SD カード,HDMI ケーブル,USB マウス,USB キーボード,LAN ケーブル,microUSB ケーブル (電源) を接続して電源を投入します.

Raspberry Pi Software Configuration Tool (raspi-config) が起動します.

Setup Options

Expand Filesystem

Root partition has been resized.
The filesystem will be enlarged upon the next reboot

Change User Password

Enable Boot to Desktop/Scratch …

Console Text console, requiring login (default)

Internationalisation Options

I1 Change Locale … en_US.UTF-8 UTF-8
I2 Change Timezone … Asia, Tokyo
I3 Change Keyboard Layout … Generic 104-key PC, English (US), The default for the keyboard layout, No compose key, Ctrl+Alt+BS No

Advanced Options

A4 SSH … Enabled

Finish – reboot – Yes

初期設定では,SD カードの容量をフルに使用するために Expand Filesystem を選択,ユーザ pi のパスワードを変更するために Change User Password を選択,ロケールを設定するために Internationalisation Options を選択し (自分の場合は,en_US.UTF-8 UTF-8),タイムゾーンを変更するために Internationalisation Options を選択(自分の場合は,Asia/Tokyo) ,SSH を有効にするために Advanced Options を選択します.
update が気になる場合は update を選択します.
すべての設定を終えた後,Finish します.

初期設定時に Expand Filesystem を行なっておかないと,どんなに容量の大きな SD カードを使っても 1.8GB しか使用されないので注意です.
(実際,4GB の SD カードなのに,1.8GB しか使用されない)

Expand Filesystem を行った場合は,初期設定後に再起動する必要があります.

再起動後,コンソール画面になります.

例えば下記のように表示されます.

pi@raspberrypi ~ $

なお,startx を実行することで CUI から GUI へ変更できます.

startx

初期設定を再度行いたい場合は sudo で raspi-config を実行します.

sudo raspi-config

カーネルを確認してみます.

uname -a

結果,

Linux raspberrypi 3.6.11+ #538 PREEMPT Fri Aug 30 20:42:08 BST 2013 armv6l GNU/Linux

ディスクの使用状況を確認してみます.

df -h

結果,

Filesystem      Size  Used Avail Use% Mounted on
rootfs          3.7G  1.7G  1.8G  49% /
/dev/root       3.7G  1.8G  2.8G  49% /
devtmpfs         85M     0   85M   0% /dev
tmpfs            19M  252K   19M   2% /run
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs            37M     0   37M   0% /run/shm
/dev/mmcblk0p1   56M   19M   38M  33% /boot

IP アドレスを DHCP による取得から固定に変更します.

sudo vi /etc/network/interfaces

デフォルトは下記のようになっています.

auto lo

iface lo inet loopback
iface eth0 inet dhcp

例えば下記のように変更します.

auto lo

iface lo inet loopback
#iface eth0 inet dhcp

auto eth0
iface eth0 inet static
address 192.168.xxx.yyy
network 192.168.xxx.0
netmask 255.255.255.0
broadcast 192.168.xxx.255
gateway 192.168.xxx.1
dns-nameservers 192.168.xxx.zzz

ネットワークインターフェイスを再起動します.

sudo ifdown eth0
sudo ifup eth0

あとはほぼ普通の Linux として使用します.
GUI デスクトップを使用しないで SSH でリモート接続でのみ使用する場合は,いったんシャットダウンします.

sudo poweroff

その後,HDMI ケーブルとマウスとキーボードを外した上で起動させ,SSH でリモート操作します.

パッケージを最新化しておきます.

sudo apt-get update
sudo apt-get upgrade

IPv6

デフォルトでは IPv6 が有効になっていないようで,ifconfig を行ってみても IPv6 アドレスが振られていません.
/etc/modules を開いて最終行に ipv6 を追記します.

sudo vi /etc/modules

例えば,

ipv6

OS 再起動後,IPv6 環境下であれば,Scope:Global と Scope:Link の IPv6 アドレスが振られています.

参考
http://code.cjb.net/raspberrypi-server.html

root

root ユーザになりたい場合,下記を実行します.

pkexec bash

ユーザ pi のパスワードを入力します.

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/bin/bash' as the super user
Authenticating as: ,,, (pi)
Password:
==== AUTHENTICATION COMPLETE ===

下記のように root でコマンドを実行できるようになります.

root@raspberrypi:~#

ユーザ追加

adduser を実行します.

useradd を実行するとホームディレクトリも作成されません.
ユーザ名のみ作成されます.
Fedora や CentOS では adduser も useradd も同じですが,Debian では明確に異なるようです.
ユーザを作成する際に対話的にパスワードやホームディレクトリを作成したい場合は adduser を実行します.

sudo adduser hoge

結果,

Adding user `hoge' ...
Adding new group `hoge' (1002) ...
Adding new user `hoge' (1001) with group `hoge' ...
Creating home directory `/home/hoge' ...
Copying files from `/etc/skel' ...
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Changing the user information for hoge
Enter the new value, or press ENTER for the default
	Full Name []:
	Room Number []:
	Work Phone []:
	Home Phone []:
	Other []:
Is the information correct? [Y/n]

ユーザを削除する際は deluser を実行します.

sudo deluser hoge

visudo

visudo は,ユーザ pi で sudo で実行できます.

sudo visudo

例えば,新しく追加したユーザが sudo を実行できるようにするには,visudo の最終行に下記のように記述します.

hoge ALL=(ALL) ALL

visudo エラー

visudo の記述にミスがあると次に visudo を実行した際,例えば下記のようなエラーとなる場合があります.

sudo: parse error in /etc/sudoers near line 29
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

その場合は root になって visudo を実行します.

pkexec bash

結果,

==== AUTHENTICATING FOR org.freedesktop.policykit.exec ===
Authentication is needed to run `/bin/bash' as the super user
Authenticating as: ,,, (pi)
Password:
==== AUTHENTICATION COMPLETE ===

下記のように root で visudo を実行することができます.

root@raspberrypi:~# visduo

Java SE Development Kit 7

http://www.oracle.com/technetwork/java/javase/downloads/index.html からダウンロードします.

2013-11-17 時点,7u45 です.

Java SE Development Kit 7u45
Linux ARM v6/v7 Hard Float ABI
jdk-7u45-linux-arm-vfp-hflt.tar.gz

インストール方法は,Ubuntu 13.10 の場合と同様です.
[Ubuntu 13.10] Oracle Java SE Development Kit 7u45 (JDK 7u45)