Raspberry Pi 4 + Raspbian Buster向けセットアップ方法
最新のラズパイ4とRaspbian Busterの組み合わせでの、ディープラーニング環境含めたセットアップ方法をまとめています。ラズパイ3でも、基本的に同じ方法でセットアップできます。
今からセットアップする人は、こちらを参考にした方が簡単です。
これ以降は、少し古い内容の記事になりますが、Macでddを使ってセットアップしたい人、Raspbian Stretch/Jessieを何らかの理由で使いたい人のために残しておきます。
Raspberry Pi 3買いました
ついに買っちゃいました!
技適もあるので、起動もできます!
というわけで恒例のセットアップ方法を書いていこうと思います。基本的にはRaspberry Pi2+Raspbian Jessieでインストールするのとほとんど同じなのですが、細かい修正や、色々書き直したいところもあったので、思い切って今回1から書き直してみました。Raspberry Piは今までリモート接続してコマンドライン(CLI)で使うのが基本だったのですが、Raspberry Pi 3になってより性能アップしているので、GUIで使うのもよいかなと思い。GUI環境前提のセットアップにしてみました。
必要なもの(Amazonリンク)
必要なものの例。USBキーボード、マウス、ディスプレイは省略しています。好きなものを使用ください。
Raspberry Pi 3。今回初めてケース付きのにしました。最初からケースに入っていて使い勝手良かったです。初心者にはケース付きがオススメかも
microSDカード。Jessieだと最低8GBは必要です。
HDMIケーブル。HDMI -> DVI変換のケーブルは、設定によって黒画になるケースがままあったのでHDMI対応のディスプレイを使うのがベターです。
Raspberry Pi 3の推奨電源は2.5A。ただ、そんな電源なかなか無いので2.4Aのこの製品を使用。ACタップもついてて、Raspberry Piと一緒に使うノートPCやディスプレイも充電できるので便利です。詳しくは下記記事参照。
電流測定したらアイドル状態だと0.3Aもいかなかったので、以下のような2A電源でも普通に使う分にはよほど大丈夫かとは思います。以下のような2A電源も使いましたが、今のところ落ちたことは一度もないです。
2A電源
万全を期すなら、最近増えて来たこういった3Aの電源使うのも良さそうですね
Raspberry Piへの給電ケーブル。タイプAオス- マイクロタイプBオスのものなら何でもOKです
以降は興味ある方のみ続きをご覧になってください。
Raspbian SDディスク作成
Raspbianの入ったSDを作成します。NOOBSは、パーティションとか増えてあとで面倒なのと、どうせRaspbianしか入れないので使わないで設定していきます。ただ、ここでつまづいて先に進めなくなっちゃった人は、とりあえずNOOBS使って入れると簡単かもしれません。NOOBSは基本的にドラッグアンドドロップのコピペでいけるので簡単にできるはずです。NOOBS使う人はこのディスク作成の項目は飛ばして次に行ってください。
Raspbian ダウンロード
以下サイトからダウンロードして下さい。
これ以降のセットアップは、2017-08-16
の日付のRaspbian Stretchか2017-07-05
のRaspbian Jessieの使用を前提としています。
これ以降は追記:ddコマンドのオプションを追加することで解決しました。2017-03-02
の日付のRaspbianの使用を前提としています。最新のバージョンのもので基本的には問題ないはずですが、私は現在最新の2017-07-05
でセットアップがうまくいっていない(apt-get installで失敗するものが多数)ので様子見中です。
もし、何らかの理由で過去のバージョンを試したい場合は、ミラーサイトや以下の公式サイトから昔のバージョンのRaspbianをダウンロードしてインストールしてみて下さい。ミラーサイトは公式が重いときにもオススメです(大抵、ミラーサイトから落とした方が早いです)。
ディスクのフォーマット
次にディスクをフォーマットしましょう。好きな方法でよいですが、確実なのはSD Formatterを使う方法です。以下のサイトからダウンロードしたSD Formatterを使ってSDカードをフォーマットをしましょう。ドライブを選択してFormatをクリックするだけの簡単設計です。以下からダウンロードしましょう。
SD Memory Card Formatter | SD Association
Etcherを使用したイメージのSDへの書き込み
イメージのSDへの書き込みは、Etcherというソフトを使うのが簡単です。マルチOS対応なので、WindowsでもMacでもLinuxでも使用可能です。
以下リンク先からインストール可能です。
コマンドラインでのインストールは、以下リンク先参照下さい。
例えばMacならHomebrewを使い、以下コマンドでインストールできます。
$ brew cask install etcher
Etherの使用方法に関しては以下記事参照下さい。
Etherを使った書き込みがうまくいかない場合や、コマンドで書き込みをしたいという人は次の「ddコマンドを用いたイメージのSDへの書き込み」を参照下さい(Macが前提となります)。
ddコマンドを用いたイメージのSDへの書き込み
Etcherを使用する場合は、以下の操作は不要です。Ethcherで作成したディスクで起動できないときは、ddコマンドでディスク作成してみてください。
ここからは、Macのターミナルでの操作を前提としています。まずは、ダウンロードしたRaspbianのzipファイルをimgファイルに解凍してやる必要があります。ファイルサイズが4GBを超えた関係らしく、2017-03-02
あたりのRaspbianからはMacの標準の解凍ソフトではうまく解凍できないのでp7zip
という解凍ソフトを使います。Homebrewで下記コマンドでインストールします。
$ brew install p7zip
あとは、2017-07-05-raspbian-jessie.zip
を以下コマンドで解凍しましょう(ファイルが Downloads フォルダ以下にある前提です)。
$ 7z x ~/Downloads/2017-07-05-raspbian-jessie.zip
Homebrewって何?って人は下記参照下さい。Homebrew分からない、使いたくないという人は「p7zip mac」で検索してソフトダウンロードしても大丈夫です。
次に、MacにコピーしたいSDカードを接続してdfコマンド実行してSDカードのデバイスファイルを確認します。よくわからなければ、挿入前と挿入後でdfコマンド実行して比較しましょう。
$ df -h
挿入後に増えているデバイスファイルがSDカードのデバイスファイルです。例えば /dev/disk2
とか/dev/disk3
とか。
そして、対象のデバイスファイルを以下のコマンドでアンマウントします。
$ diskutil umountDisk /dev/disk2
以下のコマンドでSDにイメージ書き込みします。
$ sudo dd if=~/Downloads/2017-07-05-raspbian-jessie.img of=/dev/rdisk2 bs=1m conv=sync
上記はホームディレクトリ直下に2017-07-05-raspbian-jessie.img
というイメージファイルを置いた例です。/dev/rdisk2
とdisk2
の前にr
がついているのは、速度を早くするためアンバッファモードにするため。bs=1m
は一度に1m(1MB)書き込むという意味です。設定しないと書き込み速度が遅くなります。
また最後のconv=sync
というオプションは、イメージファイル末尾のブロックを正常に書き込むためのオプションで、2017-06-21
あたりからこのオプションをつけて書き込まないと、apt-get
でパッケージのインストールに失敗し、以下のようなエラーが出るという現象が発生します。
files list file for package 'qdbus' is missing final newline
この対策は、以下サイトの記事で知りました。本当感謝です。
萍:ウキクサ: Raspbianの apt-get upgrade が失敗する
書き込みの、途中経過が気になる方はCtrl+T
で進捗を表示できます。しばらく(数分)待って完了のメッセージが出たら書き込み完了。完了したら以下のコマンドでディスクをアンマウントしてからSDカードを取り出しましょう。
$ diskutil eject /dev/disk2
これでSD作成は完了です。
Raspberry Pi ハードウェアセットアップ
Raspberry Piに以下のものを接続しましょう。
- 作成したRaspbian Jessie入りmicro SD
- USBキーボード
- USBマウス
- ディスプレイ
接続した図
接続図詳細
WiFiで接続できるのでEtherケーブルの接続が不要になったのが嬉しいです。WiFiない人はEtherケーブル接続してあげて下さい。
キーボード、マウス、ディスプレイ無しでセットアップしたいんだ!という人は以下参照下さい。
Raspbian Stretch/Jessie ソフトウェアセットアップ
次はソフトウェアのセットアップです。
Raspbian Stretchをインストールする場合の注意事項
Raspbian Stretch、Raspi-configのセットアップ、Localisationのキーボード設定で、GUIの画面が出てこなくてハマります。対処法がフォーラムにありました。また、何故か日本語フォントがデフォルトでインストールされなくなってしまったので、日本語フォントをインストールしておかないと、日本語設定すると文字化けします(四角だらけの悪夢が再び…)。なので対策を実行していきます。
準備として、ネットワークにあらかじめ接続しておきましょう。有線のEtherケーブル(LANケーブル)を下図の通り接続しておいて下さい。
ネットワーク接続
WiFiで接続する場合は、このページの少し先のWiFiセットアップの項目を参考に設定して下さい。
次にターミナル画面で以下コマンド実行しましょう。パスワードの初期設定はraspberry
です。Raspbian Jessieの場合は、最初に実行してもしなくても特に問題ないはずです。
$ sudo apt-get update $ sudo apt-get upgrade $ sudo apt-get install fonts-vlgothic
ターミナル画面は、下図のように上にある黒い四角のアイコンをクリックするか、左上のRaspberry Piアイコン -> アクセサリ -> LXTerminalの順にクリックすると出てきます。
以降の画面、Rabpain Jessieの画面での説明も混じっていますが、基本的にGUI画面は大きく変わっていないはずなので、迷うことはないと思います。
Raspi-configセットアップ
RaspbianはJessieから、初回起動時はいきなりX WindowsのGUI環境が立ち上がります。そのままGUIでRaspi-configのセットアップとWiFiセットアップを実施しましょう。
まずは下図のように一番左のRaspberry Piマークのアイコンをクリック -> Preference
-> Raspberry Pi Configuration
を選択Raspi-config
を起動します
systemタブ開いてExpand Filesystem
をクリックしてOKをクリック。これでSDカードの全容量を有効に使えます。最新のRaspbianだと起動時に自動で実行されているかもしれませんが念のため実行しておきましょう2017-03-02
のバージョンからExpand Filesystem
ボタンから削除されました。起動時に自動で実行されます。ホスト名は好きな名前をつけて下さい。今回はkaraage
としています。
また、パスワードがデフォルトのままだとセキュリティよろしくないのでChange Password
からパスワード変更しておくと良いかもしれません(変更しないと、警告が出続けるので、うっとおしいです)。
次にInterfaceタブを開きます。2016-11-25のRaspbianからセキュリティの関係でSSHが初期設定でDisableになっているので、SSHをEnableにします。カメラモジュールとか使う人は合わせてCameraもEnableにしておくとよいです。
次にLocalisationのタブを開いて上から順に設定していきましょう。Set Localeは以下
Set Timezoneは以下のとおりJapanを設定
もう一度開くと、下図のようにAsia Tokyoが選択されています
Set Keyboardはキーボードに合わせて設定下さい。日本語キーボードの場合は Japanese" > "Japanese"
に設定しましょう。
下の入力ボックスで配置正しいか確認しておくとよいです。~^|\;:
あたりの記号をチェックしておくとよいでしょう。
Raspbian Stretchでこの画面が出ない人は、この記事の上の方の「Raspbian Stretchをインストールする場合の注意事項」を参照下さい。
WiFiの設定は、以下のようにJapanにしておけばOKです
一通り完了して、右下のOKをクリックすると「再起動しますか?」というダイアログが出てくるので「YES」をクリックしましょう。
再起動すると日本語化されています。
WiFiセットアップ
ここでWiFiセットアップ。以下のようにクリックして、必要ならセキュリティキーを入力するだけです。
CUI(コマンドライン)で直接設定したい場合は、Raspbian Wheezy以前と同様 /etc/network/interfaces
、/etc/wpa_supplicant/wpa_supplicant.conf
を書き換えましょう。以下参照下さい。
これでネットに接続できるようになります。WiFi環境が無い人は、Raspberry Piに直接Etherケーブルをつなぎましょう。接続方法は以下です。
日本語環境セットアップ
日本語入力するために、日本語環境をセットアップしましょう。今回はibus-mozc
という漢字変換ソフトをインストールします。ターミナルを起動して、以下コマンドを実行ください。
ターミナルを起動するには、下図のように上にある黒い四角のアイコンをクリックするか、左上のRaspberry Piアイコン -> アクセサリ -> LXTerminalの順にクリックして起動して下さい。
すると、以下のような黒いターミナル画面が起動します。
次に以下コマンドを順に入力して実行して下さい。入力するときは、最初の$
は既に表示されているので打ち込まず、その後のアルファベットから1行ずつ順に打ち込んで下さい。下記ならsudo apt-get update
と入力してEnterという感じです
$ sudo apt-get update $ sudo apt-get install ibus-mozc
1行目でインストールするパッケージのリストをアップデート。2行目で日本語変換ソフトをインストールしています。うまくいかない場合は、ネットの接続環境を見直して下さい。パスワード要求されたら、デフォルトのパスワードraspberry
を入力しましょう。
次に、日本語変換を有効にするためibus-mozc
を有効にする設定をします。これ以降の設定はRaspbian Stretchだと自動でされるようなので、確認だけで良いです。Raspbian Jessieの人はセットアップしましょう。
まずは、下図のようにibusの設定
を起動します
入力メソッドを選択して、追加をクリック
日本語選択して追加をクリック
Mozc選択して追加をクリック
最後に以下のように日本語変換選択すると日本語変換ができるようになります。
ソフトウェアアップデート
ターミナルで以下実行すると、現状のソフト全て最新版にアップデートしてくれますので一度実行しておきます。
$ sudo apt-get update $ sudo apt-get upgrade
ここまでで基本的なセットアップは完了です。
Raspbianソフトインストール・セットアップ
ここからは、少し上級者向けです。基本ターミナルで全て操作していきます。詳しい説明もしないので、興味がある人のみ試してみて下さい。
tightvncサーバ
リモートデスクトップのために必要なら入れましょう。
$ sudo apt-get update $ sudo apt-get install tightvncserver
インストール終わったら、以下コマンドを実行してパスワードを設定しましょう。
$ vncserver
1回入力すると、read-onlyのパスワード聞かれますが、そちらは設定しなくてよいです。
後は以下実行するとtightvncserverが起動します。
$ vncserver :1
これでクライアントPCからリモートデスクトップ接続できるようになります。Macならファインダーの移動 -> サーバーに接続
(Command + K
でもOK)で接続できます。以下の要領でvnc://raspberry piのホスト名.local:5901
で接続できます。今回karaageと設定したのでvnc://karaage.local:5901
となります。
Windowsの場合だと、ホスト名ではアクセスできないかもしれません。iTunesをインストールするか、ホスト名の代わりにRaspberry Piのipアドレスを直接入力して下さい。
このままだとRaspberry Piを起動するたび$ vncserver :1
を実行しないとリモート接続できないので、面倒だという人は以下のコマンドを実行して自動起動を有効にしましょう。正しく実行できれば、Raspberry Piが起動したら、すぐにクライアントのPCからリモートデスクトップ接続(VNC接続)ができるようになります。
$ wget https://raw.githubusercontent.com/karaage0703/raspberry-pi-setup/master/dotfiles/vncboot $ chmod 755 vncboot $ sudo mv vncboot /etc/init.d/vncboot $ sudo update-rc.d vncboot defaults
VNCServerエラー対応
上記のVNCServerで接続すると、起動時にGDBus.Error:org.freedesktop.PolicyKit1.Error.Failed
的なエラーが出てきます。特に実害は無いのですが、/etc/xdg/autostart/lxpolkit.desktop
というファイルを以下の通り修正すればエラーが消えるので気になる人は修正下さい。
変更前
NotShowIn=GNOME;KDE;
変更後
NotShowIn=GNOME;KDE;LXDE
エディタ(vim・gvim)インストール・設定
Raspberry Pi標準のvimはtiny-vimという簡易版なので、ちゃんとしたvimをインストールしましょう。vim-gtk
というのはgvimというGUIのvimです。それぞれvim
, gvim
で起動します。
$ sudo apt-get update $ sudo apt-get install vim $ sudo apt-get install vim-gtk
.vimrc
のセットアップはお好みで。私の.vimrc
は以下で公開しているのでよければ参照下さい。
gnome-terminalインストール・設定
デフォルトのterminalが色々気に入らないのでgnome-terminal
をインストール。
$ sudo apt-get update $ sudo apt-get install gnome-terminal
以下コマンドでgnome-terminal
を起動できます。
$ gome-terminal
配色を以下で変更。私はおしゃれなsolarized-light
にしました
gpartedインストール
パーティション設定ソフトを以下コマンドでインストール。何かと使えます。
$ sudo apt-get update $ sudo apt-get install gparted
以下のサイトが使い方わかりやすいです。
byobuインストール
仮想端末を以下コマンドでインストール。
$ sudo apt-get update $ sudo apt-get install byobu
詳細は以下
.bashrcセットアップ
.bashrc
に以下を追記
setxkbmap -model jp106 -layout jp -option ctrl:nocaps
- キーボードの
Caps Lock
キーをCtrl
キーとして使えるように変更
/boot/config.txtセットアップ
/boot/config.txt
をの設定、必要に応じて設定ください。まずは以下コマンドで/boot/config.txt
を編集します。
$ sudo vi /boot/config.txt
USBポート 1.2A電流供給対応
通常は0.6Aに制限されているRaspberry PiからのUSB電流供給を1.2Aまで増加できます。/boot/config.txt
の末尾に以下の2行を追加して上書き保存すればOK。
safe_mode_gpio=4 max_usb_current=1
最新のファームウェアだとこの記載は不要になったそうです。
カメラモジュールLED消灯
Raspberry Pi用カメラモジュールは、撮影中にLED点灯します。動作確認になってよいのですが、個人的には邪魔なので消します。以下の1行を/boot/config.txt
の末尾に追記して上書き保存しましょう。
disable_camera_led=1
スワップファイル増大
デフォルトだとスワップファイルの設定が小さく、規模が大きいソフトウェアのビルドをするとこけたりするので、スワップファイルを増やしておくのがベターです。編集するのは/etc/dphys-swapfile
というファイルです。
以下の箇所を
CONF_SWAPSIZE=100
以下に変更します。
CONF_SWAPSIZE=1024
変更後は以下コマンドで再起動してください。
$ sudo shutdown -r now
再起動後、以下のコマンドで設定されているか確認します。
$ free -m
以下のようにSwap
が 1023
になっていればOKです。
total used free shared buffers cached Mem: 862 818 43 15 19 643 -/+ buffers/cache: 156 705 Swap: 1023 0 1023
SDカードバックアップ
ここまで頑張って設定したら、一度SDの中身を丸ごとバックアップしておくと安心です。以下記事参照下さい。
まとめ
一通りまとめました、かなり時間かかりましたがこれでもうセットアップでつまづくことはないはず(少なくとも自分は)。Raspberry Pi3はWiFi内蔵しているのがよいですね。今までは必ずWiFiモジュール買っていたので、トータルのコストはRaspberry Pi2より良いと思います。気になるのは2.5A必要という電源ですが、アイドル状態だとWiFiモジュール接続したRaspberry Pi2とほぼ同じ値だったので、そんなに心配しなくてよいかなという印象。これは時間があれば、色々条件変えて検証したいなと思っています。
Raspberry Pi3使って、今後も電波なことしていきたいと思います。
リンク:Raspberry Pi 3
リンク:microSDカード
リンク:USBコネクタ付き電源TAP
リンク:HDMIケーブル
リンク:USB給電ACアダプタ
リンク:マイクロUSBケーブル
Raspbianのスクリプトによる自動セットアップ
面倒臭いセットアップをある程度自動化するスクリプトを公開しています。どちらかというと上級者向けですが、興味ある方は参照下さい。
Raspberry Pi Zeroセットアップ記事
Raspberry Pi Zeroも購入しましたのでセットアップ記事公開しました。基本的にはRaspberry Pi 3と同じなのですが、いくつか気をつける点があったので、もしこれからセットアップする人は参考にしてみてください。
関連記事
変更履歴
- 2019/12/03 ラズパイ4 + Raspbian Busterのセットアップに関してリンク追記
- 2017/12/27 スワップの設定追記
- 2017/08/20 Raspbian Stretchに対応しました