2
4

More than 3 years have passed since last update.

Raspberry Pi 4 入門 セットアップ編(モニター不要版)

Last updated at Posted at 2020-05-29

はじめに

Raspberry Pi 4から、モニター出力がmicroHDMI端子になりました。

しかし、私のようにIoT機器としてRaspberry Piを利用する人にとってはかなり無縁な代物なので、リモート操作のみでモニター同様のセットアップする手順を、備忘録として残します。

準備物

RaspberryPiを動かすには以下を揃えれば、起動できます。

  • Raspberry Pi 4 ModelB 2GB
  • ケース
  • USB-Type C 電源アダプター
  • microSDカード 64GB
  • PC

OSイメージの書き込み

Raspberrypi公式サイトからRaspberry Pi Imagerをダウンロードします。
WindowsはRaspberry Pi Imager for Windows、MacはRaspberry Pi Imager for macOSを選択します。

スクリーンショット 2020-05-11 1.54.23.png

ダウンロードしたらインストール作業は短調なので省略。
起動すると以下のような画面が表示されるのでSDカードへOSをインストールするための設定をします。

  1. Operating SystemからRaspbery Pi OSを選択
  2. SD Cardから書き込むSDカードを選択
  3. 書き込む準備ができたらWRITEから書き込みを開始

rasp_setup.gif

書き込みが完了したらCONTINUEからSDカードが取り出されます。

スクリーンショット 2020-05-11 8.51.22.png

初回設定

再度、SDカードをマウントし、bootというデバイスが表示されることを確認します。

スクリーンショット 2020-05-11 8.56.03.png

Raspberry Pi 初回起動時から以下のことを解決するためにファイルを作成します。

作成するファイル 内容
boot/ssh ssh起動するためのファイル
boot/wpa_supplicant.conf 無線LAN接続を設定するためのファイル

まず、空ファイルのboot/sshを作成します。

Windows
1. 右クリックから新規作成 > テキストドキュメントを選択
2. ファイル名ssh(拡張子の .txtは不要)を作成

Mac
1.コマンドでtouch /Volumes/boot/sshを実行します。

同じ要領で無線LAN接続用にboot/wpa_supplicant.confを作成したら、中身を各環境に合わせて記述し保存します。
以下の例では、WiーFiのSSIDをssid_name、パスワードをpasswordとして設定しています。

wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
    ssid="ssid_name"
    psk="password"
}

SSH接続

SDカードをRaspberry Piに装着し起動後に、SSH接続します。

raspberrypi.localというホスト名に対してユーザーpiで接続します。

Windows
WindowsはTeraterm等のSSH接続用ソフトウェアを使って接続します。
Tera Termを起動し、ホストにraspberrypi.localと入力し、OKをクリックします。

1.png

ユーザ名にpi、パスフレーズにraspberryを入力し、OKをクリックします。

2.png

Raspberry PiにSSH接続した画面が表示されます。

pi@raspberrypi:~ $

Mac
ssh ユーザー名@ホスト名でSSH接続できます。

ssh pi@raspberrypi.local

初回接続時に証明書関係の応答メッセージが返ってくるのでyesを入力します。

Are you sure you want to continue connecting (yes/no/[fingerprint])? yes

初期パスワードraspberryを入力します。

pi@raspberrypi.local's password: 

Raspberry PiにSSH接続した画面が表示されます。

pi@raspberrypi:~ $

初期パスワード変更

SSH接続できたらパスワードを変更します。

$ sudo raspi-config

セキュリティ観点からWi-Fiに接続する前にpiユーザーの初期パスワードを変更するため、1 Change User Passwordを選択します。

スクリーンショット 2020-05-11 22.50.47.png

OKを選択します。

スクリーンショット 2020-05-11 22.50.59.png

新しいパスワードを2回入力します。

New password: 
Retype new password: 

以下の画面が表示されれば、パスワード変更が完了します。Okを選択します。

スクリーンショット 2020-05-11 22.51.24.png

Finishを選択してraspi-configを終了します。

スクリーンショット 2020-05-11 22.59.29.png

ソフトウェアアップデート

初期アップデート、アップグレードします。

$ sudo apt-get update
$ sudo apt-get upgrade -y

vimインストール

Raspbianに標準で入っているvimはvim-tinyという最小構成版なので、矢印キーやバックスペースキーが使えません。
そのため、標準のvimを再インストールし、キーボード操作を受付けるためのvimrcファイルを作成します。

$ sudo apt-get install vim -y
$ cat <<EOF > ~/.vimrc
set nocompatible
set backspace=indent,eol,start
set autoindent
set nowrap
set ruler
syntax on
EOF

IPアドレス固定化

VNCでリモートデスクトップ接続する際にIPアドレスを固定化が必要となるため、その設定を行います。
IPアドレス固定化に必要となる情報は以下の通り。

  • プライベートアドレスのCIDR
  • ゲートウェイIP
  • インターフェース名

これらの情報を取得するために、route -nから情報を取得します。

$ route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.0.1     0.0.0.0         UG    303    0        0 wlan0
192.168.0.0     0.0.0.0         255.255.255.0   U     303    0        0 wlan0

取得した情報から次のような結果であることがわかりました。

項目 備考
プライベートアドレスCIDR 192.168.0.0/24 サブネットマスク:255.255.255.0=CIDR:24
ゲートウェイIP 192.168.0.1 ルーターのIPアドレス
インターフェース名 wlan0 Raspberry Piの無線LAN接続口

CIDRは24なので固定IPアドレスとしては192.168.0.2~192.168.0.254の中から選べるわけですね。
もちろん、その他デバイスが接続しているIPアドレスと被らない範囲で設定する必要があります。

※現在のRaspberry Piに割り当てられているプライベートIPアドレスはWi-FiからDHCPで割り当てられたIPアドレスのため、DHCPで振られない範囲のIPアドレスを割り当てるのが一番の得策ですが、各ご家庭のルーター設定によるので、ここでは割愛。

IPアドレスを固定化するための設定ファイルをvimで修正します。

$ sudo vi /etc/dhcpcd.conf

取得した情報を基に固定IPアドレスを最下部に設定します。
今回は既に割り当てられているプライベートアドレスを固定します。
vimの使い方についてはviエディタの使い方を参考にしてください。

dhcpcd.conf
interface wlan0
static ip_address=192.168.0.100
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

Raspberry Piを再起動します。

$ sudo shutdown -r 0

再度、IPアドレス経由でSSH接続できれば設定完了です。

VNCサーバーインストール

モニター無しでもGUI操作するためのリモートデスクトップ可能な環境を作ります。
その建前として必要になるVNCサーバーをインストールします。

$ sudo apt-get install tightvncserver -y

VNCサーバーを起動すると、初回はリモートデスクトップするためのパスワード設定を求められますので、これを設定します。

$ tightvncserver

Password: 
Warning: password truncated to the length of 8.
Verify:   

閲覧用のパスワードも設定するか求められますが、好みで設定してください。
筆者は設定しないためnを選択しました。

Would you like to enter a view-only password (y/n)? n

VNCサーバー自動起動設定

VNCサーバーはRaspberry Piが再起動したりすると、VNCサーバーが終了してしまうので、自動起動するための設定をする必要があります。
VNCサーバーを自動起動するための起動スクリプトを作成します。

$ cd /etc/init.d/
$ sudo vi vncboot

vncbootの中身は以下の通りです。
ちなみに-geometry 1280x720の部分でデスクトップの解像度を指定していますので、好みで調整します。

vncboot
#! /bin/sh    

### BEGIN INIT INFO
# Provides: vncboot
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start VNC Server at boot time
# Description: Start VNC Server at boot time.
### END INIT INFO

# /etc/init.d/vncboot

USER=pi
HOME=/home/pi

export USER HOME

case "$1" in
    start)
        echo "Starting VNC Server"
        #Insert your favoured settings for a VNC session
        su $USER -c '/usr/bin/vncserver :1 -geometry 1280x720 -depth 24'
        ;;

    stop)
        echo "Stopping VNC Server"
        su $USER -c '/usr/bin/vncserver -kill :1'
        ;;

    *)
        echo "Usage: /etc/init.d/vncboot {start|stop}"
        exit 1
        ;;
esac

exit 0

vncbootを作成したら実行権限を割り当て、自動起動させるためのシンボリックリンクを付与します。

$ sudo chmod 755 /etc/init.d/vncboot
$ sudo update-rc.d vncboot defaults

再起動し、VNCで接続ができるか確認します。

$ sudo shutdown -r 0

VNC接続

VNCクライアントソフトを用いて、PCからリモートデスクトップする準備をします。
ここではVNC Viewerをインストールした接続方法を記述しています。

VNC Viewer起動後、以下のような画面が表示されるのでRaspberry Piの固定IPアドレス:5901と入力しアクセスします。

スクリーンショット 2020-05-12 2.14.35.png

Unencrypted connectionが表示されますが、(フリーのVNCクライアントを使うと暗号化したコネクションは出来ないので)そのままContinueで進みます。

3.png

パスワードを要求されるのでVNCサーバーインストール時に設定したパスワードを入力しOKをクリックします。

4.png

初回時は以下のような画面が表示されるのでGive accessをクリックします。

スクリーンショット 2020-05-12 2.16.15.png

すると、Raspberry Piへリモートデスクトップで接続することができます。

スクリーンショット 2020-05-12 2.17.06.png

以上で、モニターやmicroHDMIがなくてもRaspberry Piのセットアップができた。
RaspberryPiを新たに触る人たちの助けになれば幸いです。

2
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
4