Raspbian のインストール †
Raspberry Pi の基本ソフト(OS) †
- 概要
Raspberry Pi は、基本的にはLinux で動作する。きっと、Linux から派生した
Android でも動くだろう。しかし、既存のソフトウエア資源を効率的に活用する
には、旧来の Linux のディストリビューションに準拠している方がいいに違いない。
次のような選択肢がある。
- Raspbian
Debian (wheezy) ベース。標準的。armhf(後述)。
- Soft-float Debian
CPU の ARM 系列では、浮動小数点演算をハードウエアで処理できないものもある。
そこで、armel(浮動小数点演算をソフトウエアでエミュレート?)と、armhf(ハードウエアで処理)
の2系列が用意されている。一部のソフトは armel でないと対応していないので、
armel 用のパッケージも用意してある。
- Pidora
Fedora ベース。
- Arch Linux
インストール前の話 †
- インストーラが使われない理由
Raspberry Pi を Linux で動かすとき、標準的には SD カードにOS を書き込む。しかし、
一般に SD カードは読み書きが遅い。そこで、通常のパソコンと同様にインストーラーを
用いてインストールすると、細かいファイルを書き込みが多数発生するために、とても時間が
かかる。標準的なデスクトップ環境を導入するには、8〜9時間かかるという情報もある。
そこで、ルートファイルシステムのイメージファイルを提供し、そのイメージをSD カードに
書き込むことが一般的に行われている。こうした方法ならば時間が短縮できる。インストーラが
流行らず、イメージが置かれているのはこうした理由による。
しかし、そのために、導入時の自由度が下がっていることは間違いない。普通に提供されている
Raspbian は、デスクトップ環境を含んでいるので、パッケージが多すぎる。そこで、"minimal image"
を導入することにした。
- インストールの条件
あらかじめ別途 Linuxマシンがあるとよい。以下では、別途 Linux マシンがあって、そこで作業することを前提とする。
インストールの準備 †
- 環境
- 他のネットワークに接続された SD カードに書き込める Linux 環境
- Raspberry Pi を有線でネットワークに接続できる環境。DHCP で自動的に IP アドレスが割り振られ、外部にも接続できることが望ましい。
- ハードウエア
- USB接続キーボード
- HDMI ケーブル
- HDMI ケーブルを接続できるディスプレー
- LAN ケーブル
- SD カード
速度が速いことが期待される。ここで紹介する方法なら、最低 2GB で動くだろう。
"Raspbian base minimal image" による導入 †
- Linuxマシンでの作業
- イメージのダウンロード
次の場所からイメージをダウンロードした。
http://www.etcwiki.org/wiki/Raspbian_image_-_raspbian_base_minimal_image
(約10分)
- 解凍
bunzip2 Raspbian-Minimal.img.bz2
(約2分)
- SD カードを Linux マシンに接続してデバイス名を確認する。
dmesg
- イメージの SD カードへの書き込み
dd if=Raspbian-Minimal.img bs=1MB of=/dev/sdX
※ sdX は、上で確認したデバイス名。 例えば sdb 。 sdb1 とかではないので注意。
(約2分)
- Raspberry Pi (Model B)の起動準備
- 必要なもの
- キーボード
- 有線LAN ケーブル
外部へ接続できるネット環境も。
- 電源
micro USB と、それに給電できるもの。1A まで給電できるものが望ましい。
- ディスプレー
- HDMI ケーブル
ディスプレーに接続するため。
- 全部接続して起動
- Raspberry Pi 起動後にすること
- root でログイン
ユーザー名: root
パスワード: hackme
※ 後々のために、root と、もう一つ用意されているユーザーアカウント pi のパスワードは変更しておく。
- ネットワークの設定
- ネットワークデバイス
なぜか、eth0 が使えず、eth1 が使えるネットワークデバイスとなっていた。
echo iface eth1 inet dhcp >> /etc/network/interfaces
ifup eth1
- プロキシサーバの設定
プロキシ経由で外部のサーバにアクセスする場合にはこれを設定する。
export http_proxy=http://hogehoge:8080/
などとする。
- システムの更新と raspi-config の導入
apt-get update
apt-get upgrade
apt-get install raspi-config
※ その他必要なパッケージを導入する。
- ファームウエアの更新
apt-get install rpi-update
rpi-update
- raspi-config の実行
- Expand Filesystem を選択して実行
最初は 1GB だったファイルシステムが、再起動後にはSD カード全体が使えるようになる。
- Intenationalization
Time Zone を設定する。(Asia の Tokyo を選択)
- Enable Camera Support
必要に応じて設定する。
以上で一通り完了。
その他のやっておいた方がいい設定 †
- avahi(Zeroconf)
自動で認識されるようなネットワークに接続したとき、名前で参照することができるような仕組みがある。
Zeroconf とか Bonjour とか avahi とか呼ばれる仕組みである。Linux の場合には、avahi である。
- インストール
apt-get install avahi-daemon
- 設定
/etc/avahi/services/http.service に以下の内容を書き込んでおく。
<?xml version="1.0" standalone='no'?><!--*-nxml-*-->
<!DOCTYPE service-group SYSTEM "avahi-service.dtd">
<service-group>
<name replace-wildcards="yes">%h</name>
<service>
<type>_http._tcp</type>
<port>80</port>
<domain-name>local</domain-name>
<host-name>%h.local</host-name>
</service>
</service-group>
※ なお、%h はホスト名を表す。これを変更するには、/etc/hostname を変更する必要がある。
個人的にはホスト名を rptl00 (Raspberry Pi Time Lapse ゼロゼロ)とした。
- 再起動
/etc/init.d/avahi-daemon restart
これで同じネットワーク内からは、ウェブブラウザで rptl00.local でアクセスできるようになった。
ssh でもアクセスできる。
- tmpfs
RAM ディスクを用いることで、不用意に SD カードに書き込むことを防止し、かつ、処理速度を早める。
- 時刻
時刻は ntp によって設定される。本体に電池はないので、時刻を保持することができない。そこで、ネットワークにつながない
限り、正しい時刻を期待してはならないので、注意が必要である。
その他の Raspberry Pi についてのハック †
- お手軽シャットダウンフリー化
SD カード上のファイルシステムを Readonly でマウントすることで、shutdown することなく、電源を切ることが可能に。
日本語キーボードについて †
- 問題点
私のところの Raspberry Pi 3 に入れた Raspbian で、LXTerm を起動して文字入力しようとすると、すぐに、Shift と 3 で
ポンドマーク(£)が表示されてしまう。何かがイギリス仕様になっているが、その理由がずーっとわからなかった。この件に
ついての情報を上げる。
Fcitx と Mozc を使っている場合が該当する。
- 解決編
- raspi-config による設定
sudo raspi-config
で日本語のキーボードの設定を行う。詳細は「RaspberryPiのキーボード入力の日本語化」を参照する。
- X としての設定
X が立ち上がった状態で、左上のラズベリーパイマークをクリックして、設定からキーボードの設定を選び、同様に日本語109Aを選択する。
- Fcitx 設定
(これに気づかずにずっと解決できなかった。)設定 > Fcitx 設定 を開く。画面で説明されているように、一番上に書かれたキー
ボードが直接入力で選択される。イギリスのキーボードになっているので、これをクリックして、画面下の − を押して削除する。
続いて、+を押して、日本語109A のキーボードを追加する。追加後、これが、一番上になるように、^ マークをクリックする。
参照URL: https://www.raspberrypi.org/forums/viewtopic.php?t=48522
Last-modified: 2018-10-24 (水) 12:44:52