ラズパイかんたん初期設定 Raspberry Pi Imager使用(2021年版)SSH接続でX-Window表示、画面縁の黒い部分を無くす

スポンサーリンク

はじめに

久しぶりにRaspbian OSのサイトを訪れたら、Raspberry Pi Imagerなるものが出ていて、以前とは比べ物にならいくらいラズパイOSの準備が簡単になっていました。

ラズパイを始めたら、まず最初に悩まされる画面縁の黒い部分、これを無くす方法も紹介します。

普段からノートパソコンにディスプレイをつないで使用している方は、ラズパイにディスプレイを取られてしまうと使い勝手が悪くなるので、SSH接続してパソコンのウィンドウからラズパイを操作したくなると思います。

しかし、SSH接続でX-Windowを表示するには、ハマりポイントもあり、うまく環境設定できずに悩んでいる方も多いのではないかと思います。

本記事では、パソコンからラズパイにSSH接続してX-Window表示のテストを行うまでの方法についても紹介します。

パソコンからラズパイに接続してGUI表示を行う別の方法にデスクトップを共有するVNC系の方法もあるにはありますが、動作がもっさりするので、私はおすすめしません。

下の動画でも本記事の内容を試していますので、よろしければご覧ください。

動作環境

構成要素内容補足
Raspberry PiRaspberry Pi3B
Raspberry Pi4B
これらの機器で動作確認済み
メディアMicroSDカード
Pi CameraPi Camera V2
Raspberry Pi OSRaspbian Buster
パソコンOSmacOS Catalina
macOS Big Sur

Raspbian OSの準備

Raspbian OSの準備

ここから下記赤枠のリンクをクリックしてRaspberry Pi Imagerをダウンロードページに移動します。

Raspbian Top Page

以下のダウンロードページでお使いのPC用のインストーラをダウンロードします。

Donwload Raspberry Pi Imager

以下、Macの例ですが、ラズベリーのマークを右のフォルダの絵の上にドラッグ&ドロップするとイントールできます。

Install Imager

使用するSDカードをカードリーダやSDカードスロットに差し込んで、インストールしたRaspberry Pi Imagerを立ち上げます。

SDカードはフォーマット不要でした。

「CHOOSE OS」のボタンを押すと以下のように表示されるので「Raspberry Pi OS (32-bit)」を選択します。

Select OS

ここで、Ctrl+Shift+xを押すと以下のオプション設定画面が出る(ここの操作だけ分かりにくいです)ので、下図のように設定します。

Disable overscanにチェックを入れることで、画面のフチが黒くなるのを防ぐことができます。

Enable SSHでパスワード設定をすることで、SSHパスワードログインができるようになります。

Option 1

Wi-Fiの設定をします。

Wi-Fi Setting

Localeを設定します。

Locale setting

「CHOOSE STRAGE」を押すと以下のような画面が出るので、書き込むMicro SDカードを選択します。

Select SD Card

以下のようにSDカード上のデータが消されて良いか確認されるのでYESを押します。

Confirm Deletion

このあとMacのパスワードを聞かれるので入力すると書き込みを開始します。

以下の画面が出たら終了ですので、CONTINUEを押してMicro SDカードを抜きます。

Finish

以前は、ラズパイを立ち上げてからraspi-configを起動して設定していた内容をあらかじめRaspberry Pi Imagerで設定できてとても便利になりました。

Raspberry Piの設定

パソコンとRaspberry Piのターミナルを区別するため、パソコンのターミナルのコマンドプロンプトを Mac$ とし、Raspberry Piのターミナルのコマンドプロンプトは単に $ として表します。

Raspberry PiのIPアドレスを固定にしてパソコンからSSH接続で使う方法の設定方法を説明します。

上記で作成したMicro SDカードをRaspberry Piのカードスロットに差し込み、キーボード、マウス、ディスプレイを接続して電源を入れます。

Raspberry Pi Imagerで設定したWi-Fiに接続済みの状態で下図のように立ち上がります。

赤矢印のアイコンからターミナルを立ち上げます。

ラズパイ起動直後の画面

環境の更新

次のコマンドで最新の状態に更新します。

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

初回のupgradeに失敗することがあるようですが、再度sudo apt-get updatesudo apt-get upgradeと実行することで正常にupgradeできました。

Pi Cameraの設定

Pi Cameraを使用する場合は以下の設定が必要になります。(USB Webカメラ使用の場合は以下の設定は不要です)

raspi-configを立ち上げます。

sudo raspi-config

以下の画面が立ち上がったら、3 Interface Optionsを選択します。

raspi-config

P1 Cameraを選択します。

Camera Setting

Yesを押してPi Cameraを有効にします。

Enable Pi Camera

再起動が促されたら従います。

Reboot

再起動したらPi Cameraが有効になっているので、以下のコマンドで撮影してみます。

raspistill -o test.jpg

少しの間、カメラの映像が映し出され、終了したらtest.jpgができているので、ファイルマネージャから開くと以下のように表示されます。

raspistill出力結果

SSH接続のための設定

IPアドレスを固定にします。これを行わないとSSH接続する際、毎度変わるIPアドレスを調べる必要が生じるためです。

まずは現状のIPアドレスを調べます。

$ ifconfig
...
wlan0: flags=4163  mtu 1500
        inet 192.168.179.11  netmask 255.255.255.0  broadcast 192.168.179.255
...

netmaskの255.255.255.0を2進数で表記した際に1となる部分がネットワークアドレスのため192.168.179.0がネットワークアドレスで、最後の11の部分が機器固有の番号になります。

この機器固有の番号を固定にするために以下のファイルを編集します。

$ sudo vi /etc/dhcpcd.conf

viエディタの使い方がわからない方は、こちらを参考にしてください。

固有の番号の選び方として以下のルールがあるため、2〜254の好きな値にします。今回は21にしてみました。
0: ネットワークアドレス、そのネットワーク全体を示すときに使われる
1: ルーターのアドレス、基本的にホスト部が 1
255: ブロードキャストアドレス、ホスト部すべてを示すときに使われる

以下の内容を/etc/dhcpcd.confの末尾に書き足します。

interface wlan0
static ip_address=192.168.179.21
static routers=192.168.179.1
static domain_name_servers=192.168.179.1

Raspberry Piを再起動して上で指定したIPアドレスになっていることを確認します。

$ ifconfig

inetが表示されない場合は、IPアドレスが競合したなどの理由でうまくいっていないと思われるので、別のIPアドレスにすると良いでしょう。

MacからラズパイにSSH接続している際、実行に長時間かかるコマンド実行中などに以下のエラーが出て接続が切れてしまうことがあります。

client_loop: send disconnect: Broken pipe

これの回避策として以下のファイルに設定を追加します。

vi ~/.ssh/config

viエディタの使い方がわからない方は、こちらを参考にしてください。

下記の内容を追記します。(ファイルが存在しなかった場合は新たに作り、以下の内容とします)

Host *
ServerAliveInterval 60
TCPKeepAlive yes

先ほど設定した固定IPアドレスにpiユーザとしてSSHログインします。

Mac$ ssh -Y pi@192.168.179.21

SSHログインできたら成功です。

-Yオプションを付けたのは、X-Window SystemでGUIを表示できるようにするためなので、何かGUI表示を行うプログラムを試します。

X-Window表示のテスト

MacでXquartzを立ち上げておきます。(xtermが表示された場合はexitと入力して閉じて良いです)

ここではPythonのmatplotlibでのグラフ表示を試してみます。

以下のようにpython3を立ち上げてコマンドを入力し、かんたんなグラフを表示します。

$ sudo apt-get install python3-numpy python3-matplotlib
$ python3
>>> import matplotlib.pyplot as plt
>>> data = [1, 2, 5, 3]
>>> plt.plot(data)
>>> plt.show()
>>> exit()

下のようにMacの画面上にウィンドウが立ち上がり、グラフが表示されれば成功です。

Matplotlib Test

qを押してグラフを閉じ、exit()と入力してpython3を終了します。

今後はRaspberry Piにディスプレイ、キーボード、マウスをつなげなくても操作できるようになったので、Raspberry Piをシャットダウンしてそれらを取り外し、電源を入れてSSHログインします。

Raspberry Piをシャットダウンするには以下のコマンドを使います。

$ sudo shutdown -h now

トラブルシューティング

SSHログインできない(1)

ssh接続しようとして以下のエラーが出る場合はSSH許可の設定が正しくできていない、もしくは、固定IPアドレスが正しく設定できていないので、Raspberry Piをスタンドアロンで起動してifconfig、raspi-configや/etc/dhcpcd.confの内容を確認してみてください。

ssh: connect to host 192.168.179.21 port 22: Connection refused

SSHログインできない(2)

以下のようなメッセージが出る場合、設定したIPアドレスが以前別の機器で使っていたなどが考えられます。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

~/.ssh/known_hostsを削除してからssh接続し直してみてください。

Mac$ rm ~/.ssh/known_hosts
ssh pi@192.168.179.21

書籍紹介

Raspberry Pi はじめてガイド―[Raspberry Pi 4完全対応]

最新のラズパイ4に対応した入門書です。

これ1冊でできる! ラズベリー・パイ 超入門 改訂第6版 Raspberry Pi 1+/2/3/4/Zero/Zero W対応

ラズパイZeroにも対応した入門書で、改訂版が出るほど人気の書籍です。

まとめ

Raspberry PiのOSイメージ作成から、Wi-Fi設定、画面縁の黒い部分を無くす設定、SSH接続で使用するための設定をする方法を説明しました。

特に普段からパソコンに外部ディスプレイや外付けキーボードをつなげて使われている方にとって、SSH接続にすることで、キーボードやディスプレイをRaspberry Piに専有されることなく、快適な作業環境ができると思います。

参考文献

タイトルとURLをコピーしました