Raspberry Pi: インストールと基本的な設定

Takami Torao RPi3 Model B+ Raspbian 11 #RaspberryPi
  • このエントリーをはてなブックマークに追加

概要

この記事では Raspberry Pi 購入直後の状態から ssh で接続して使用するための必要なセットアップ作業を記述している。

Table of Contents

  1. 概要
  2. インストール
  3. 基本設定
  4. ネットワーク設定
    1. IP アドレスの固定
  5. ディスプレイ設定
    1. セーフモード
  6. 参照

インストール

Raspberry Pi のブートディスクは Windows や macOS から SD カードに OS イメージを書き込んで作成する。Fig 1 のようなインストーラー形式の Raspberry Pi Imager を使用すると簡単である。

64-bit 版 Raspberry Pi OS (旧名 Raspbian) は ARM64 CPU を搭載している Raspberry Pi 3, 4, Zero 2 以降の機種で使用できる。また Raspberry Pi OS を選択した場合は右下の [⚙] ボタンが有効化され raspi-config 相当の設定を行うことができる。

Fig 1. Raspberry Pi Imager を使ったブートディスクの作成。v1.7.1 から 64-bit 版 Raspberry Pi OS に対応した。

作成した SD カードを Raspberry Pi に差し込んで USB 電源を差し込めば Raspberry Pi OS が起動する。デフォルトはユーザ名 pi とパスワード raspberry でログインできる。

基本設定

正常にログイン出来たらまず sudo raspi-config を実行して基本設定を行う (すでに Raspberry Pi Imager で設定済みの項目はスキップしても良い)。

  • System Options - Wireless LAN: WiFi 経由でネットワークに接続する場合。
  • Interface Options - SSH: ssh によるリモート接続を有効にする場合。
  • Localization Options - Locale: en_US.UTF-8 を選択 (ja_JP は文字化けが多い)。
  • Localization Options - Timezone: Asia - Tokyo を選択。
  • Localization Options - Keyboard - Generic 105-key PC (intl.) - ja を選択。
  • Advanced Options - Expand Filesystem: SD カード領域を拡張 (最初は OS イメージ領域のままで SD カードの領域すべてを使っていない)。
  • Update: raspi-config を最新版に更新。
Fig 2.

キーボードの設定が raspi-config で正しくできない場合はコマンドラインから設定する。

pi@pirite:~$ sudo localectl set-keymap jp106
pi@pirite:~$ localectl status
   System Locale: LANG=en_US.UTF-8
       VC Keymap: jp106
      X11 Layout: jp
       X11 Model: jp106
     X11 Options: terminate:ctrl_alt_bksp

ネットワークに接続できていることを確認してシステムのライブラリ一式を最新版にアップデートする。

pi@raspberrypi:~ $ sudo apt-get update -y && sudo apt-get upgrade -y

またインストール直後はファームウェアのアップデートを行っておくと良い。

pi@raspberrypi:~ $ sudo rpi-update

ネットワーク設定

先に WiFi と ssh の設定を行ってそれ以降は Windows PC などからリモートでセットアップを続けても良い。この場合 ifconfig で Raspberry Pi の IP アドレスを調べてリモートから ssh 接続を行う。

pi@raspberrypi:~ $ ifconfig
...
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.12  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::ebf9:d567:18fc:aaa4  prefixlen 64  scopeid 0x20<link>
        inet6 240d:1a:892:8f00:6fea:17b4:1305:3fa9  prefixlen 64  scopeid 0x0<global>
        ether b8:27:eb:01:63:ae  txqueuelen 1000  (Ethernet)
        RX packets 117907  bytes 174375955 (166.2 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 49045  bytes 5586127 (5.3 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

上記ではアドレス 192.168.1.12 が割り当てられているため 192.168.1.12 へ ssh 接続する (初回は ssh 鍵を受け入れるかの確認が入る)。デフォルトのパスワード raspberry を入力すればログインできる。

C:\Users\Takami Torao> ssh -l pi 192.168.1.12
The authenticity of host '192.168.1.12 (192.168.1.12)' can't be established.
ECDSA key fingerprint is SHA256:2tD0Dz7yGw93oQ8RemqnlGLrlXQe/y+iCAsN9cAjDW8.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.1.12' (ECDSA) to the list of known hosts.
pi@192.168.1.12's password:
Linux raspberrypi 5.10.63-v7+ #1459 SMP Wed Oct 6 16:41:10 BST 2021 armv7l
...

ただし DHCP で IP アドレスを割り当てていると Raspberry Pi の再起動によって IP アドレスが変わる可能性がある。常時 ssh や VNC で接続可能にするには IP アドレスを固定する必要がある。

IP アドレスの固定

IP アドレスを固定するには以下のファイルを修正する。

pi@raspberrypi:~ $ sudo vim /etc/dhcpcd.conf
...
#interface wlan0     ← LAN (eth0) または WiFi (wlan0) のみの IP アドレスを固定する場合は有効にする
static ip_address=192.168.1.100/24
static routers=192.168.1.1
static domain_name_servers=192.168.1.1 8.8.8.8

上記は IPv4 アドレス 192.168.1.100、サブネットマスク 24 (255.255.255.0)、デフォルトゲートウェイと DNS サーバを 192.168.1.1 に設定している。変更した設定はシステムを再起動すれば有効になる。

ディスプレイ設定

Raspberry Pi の操作画面は HDMI 出力をディスプレイに接続すれば表示されるが、ディスプレイがうまく認識されなかったり、解像度が高すぎて文字が潰れるような場合はセーフモードで起動したほうが良いかもしれない。

Raspberry Pi では構成ファイル /boot/config.txt [1] に BIOS 相当の設定を保存する。これは ARM CPU と Linux が初期化される前に GPU によって読み込まれる。

config.txt 単純なテキストファイルであるため vi などを用いて編集することで設定を変更できる。設定の変更を反映させるためには再起動が必要である。また設定に失敗するとディスプレイ表示がおかしくなり設定を元に戻せなくなる可能性があるため ssh を経由してリモートで作業することを強くおすすめしておく。

セーフモード

HAT 型の 3.5" ディスプレイで解像度が高すぎて文字が潰れてしまう場合や、ディスプレイとの互換性トラブルでうまく表示されない場合はセーフモードを有効にすると良い。これによりロゴ画像が消え HDMI との互換性を最優先にした構成で 640×480 (60Hz) で起動する。

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

参照

  1. Raspberry Pi Documentation - The config.txt file

この記事は Raspberry Pi 3 Model B+ 上の以下の環境に基づいて書かれている。

pi@raspberrypi:~$ lsb_release -a
No LSB modules are available.
Distributor ID: Debian
Description:    Debian GNU/Linux 11 (bullseye)
Release:        11
Codename:       bullseye

pi@raspberrypi:~ $ uname -a
Linux pirite 5.10.95-v8+ #1519 SMP PREEMPT Tue Feb 1 13:19:30 GMT 2022 aarch64 GNU/Linux