#topicpath ** Raspbian のインストール [#k389af2a] *** Raspberry Pi の基本ソフト(OS) [#a98b0338] - 概要~ Raspberry Pi は、基本的にはLinux で動作する。きっと、Linux から派生した~ Android でも動くだろう。しかし、既存のソフトウエア資源を効率的に活用する~ には、旧来の Linux のディストリビューションに準拠している方がいいに違いない。~ ~ 次のような選択肢がある。 -- [[Raspbian>http://www.raspbian.org/]]~ Debian (wheezy) ベース。標準的。armhf(後述)。~ ~ -- Soft-float Debian~ CPU の ARM 系列では、浮動小数点演算をハードウエアで処理できないものもある。~ そこで、armel(浮動小数点演算をソフトウエアでエミュレート?)と、armhf(ハードウエアで処理)~ の2系列が用意されている。一部のソフトは armel でないと対応していないので、~ armel 用のパッケージも用意してある。~ ~ -- [[Pidora>http://pidora.ca/]]~ Fedora ベース。~ ~ -- [[Arch Linux>http://archlinuxarm.org/platforms/armv6/raspberry-pi]]~ ~ *** インストール前の話 [#v23e56b7] - インストーラが使われない理由~ ~ Raspberry Pi を Linux で動かすとき、標準的には SD カードにOS を書き込む。しかし、~ 一般に SD カードは読み書きが遅い。そこで、通常のパソコンと同様にインストーラーを~ 用いてインストールすると、細かいファイルを書き込みが多数発生するために、とても時間が~ かかる。標準的なデスクトップ環境を導入するには、8〜9時間かかるという[[情報>http://www.raspbian.org/RaspbianInstaller]]もある。~ ~ そこで、ルートファイルシステムのイメージファイルを提供し、そのイメージをSD カードに~ 書き込むことが一般的に行われている。こうした方法ならば時間が短縮できる。インストーラが~ 流行らず、イメージが置かれているのはこうした理由による。~ ~ しかし、そのために、導入時の自由度が下がっていることは間違いない。普通に提供されている~ Raspbian は、デスクトップ環境を含んでいるので、パッケージが多すぎる。そこで、"minimal image"~ を導入することにした。~ ~ - インストールの条件~ あらかじめ別途 Linuxマシンがあるとよい。以下では、別途 Linux マシンがあって、そこで作業することを前提とする。~ ~ *** インストールの準備 [#idc566f8] - 環境 -- 他のネットワークに接続された SD カードに書き込める Linux 環境 -- Raspberry Pi を有線でネットワークに接続できる環境。DHCP で自動的に IP アドレスが割り振られ、外部にも接続できることが望ましい。 - ハードウエア -- USB接続キーボード -- HDMI ケーブル -- HDMI ケーブルを接続できるディスプレー -- LAN ケーブル -- SD カード~ 速度が速いことが期待される。ここで紹介する方法なら、最低 2GB で動くだろう。~ ~ *** "Raspbian base minimal image" による導入 [#n17c7eaf] + 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 必要に応じて設定する。~ ~ 以上で一通り完了。 *** その他のやっておいた方がいい設定 [#mf0fdbf5] + 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 カードに書き込むことを防止し、かつ、処理速度を早める。~ ~ -- 設定~ /etc/fstab に次のように書き入れて再起動する。 tmpfs /tmp tmpfs defaults,size=100m 0 0 ※ なお、[[この記事>http://mkosaki.blog46.fc2.com/blog-entry-59.html]]によれば、tmpfs は使われなければメインメモリとして利用されるそうだ。~ ~ + 時刻~ ~ 時刻は ntp によって設定される。本体に電池はないので、時刻を保持することができない。そこで、ネットワークにつながない~ 限り、正しい時刻を期待してはならないので、注意が必要である。~ ~ *** その他の Raspberry Pi についてのハック [#n0b9d7f4] - [[お手軽シャットダウンフリー化>http://www.e-ark.jp/raspberryjamsession-02/]]~ SD カード上のファイルシステムを Readonly でマウントすることで、shutdown することなく、電源を切ることが可能に。 ~ ~ ** 日本語キーボードについて [#z14821f7] - 問題点~ 私のところの Raspberry Pi 3 に入れた Raspbian で、LXTerm を起動して文字入力しようとすると、すぐに、Shift と 3 で~ ポンドマーク(£)が表示されてしまう。何かがイギリス仕様になっているが、その理由がずーっとわからなかった。この件に~ ついての情報を上げる。~ ~ Fcitx と Mozc を使っている場合が該当する。~ ~ - 解決編 -- raspi-config による設定 sudo raspi-config で日本語のキーボードの設定を行う。詳細は「[[RaspberryPiのキーボード入力の日本語化>https://qiita.com/sukinasaki/items/426068d6e87169fa3d88]]」を参照する。~ -- X としての設定~ X が立ち上がった状態で、左上のラズベリーパイマークをクリックして、設定からキーボードの設定を選び、同様に日本語109Aを選択する。~ -- Fcitx 設定~ (これに気づかずにずっと解決できなかった。)設定 > Fcitx 設定 を開く。画面で説明されているように、一番上に書かれたキー~ ボードが直接入力で選択される。イギリスのキーボードになっているので、これをクリックして、画面下の − を押して削除する。~ 続いて、+を押して、日本語109A のキーボードを追加する。追加後、これが、一番上になるように、^ マークをクリックする。~ ~ 参照URL: https://www.raspberrypi.org/forums/viewtopic.php?t=48522