ラズパイ4のセットアップ

ラズパイ4のセットアップ

半導体不足のためほぼ手に入らない状態だったので
KSY でラズパイ4の教材セットのものを購入

すでにOSの書き込みはされているので
ディスプレイとキーボード、マウスなどを用意すれば
すぐに起動できる

今回は
bluetooth キーボードを使用したが
初期設定はマウスだけでもできる

パスワード入力などではキーボードが必要になる

今回は
Anker の bluetooth キーボードを使用したが
ペアリングや日本語入力で手間取った

ペアリングは
Fn + z キーの長押しで行い

日本語変換と英語の切り替えは
スペース + Control で行う

とりあえずインストールができたら端末を起動し

1
sudo raspi-config

を実行

Interfacing Options を Select

I2 SSH
をクリックし

はい
をクリック

これでSSHが有効になるので

ここから後は ubuntu から操作できる

なお

1
2
3
Warning: Permanently added '192.168.1.48' (ECDSA) to the list of known hosts.
Received disconnect from 192.168.1.48 port 22:2: Too many authentication failures
packet_write_wait: Connection to 192.168.1.48 port 22: Broken pipe

となったときには

1
ssh -o IdentitiesOnly=yes pi@192.168.1.48

とすることで
接続できる

今回はUSBカメラを使用する

ロジクールLogicool C270n

次に公開鍵認証にするので
Ubuntu で ssh-keygenコマンドで作成

-t で暗号形式を rsa
-b で4096ビットに指定
なおデフォルトでは2048ビット

1
2
cd .ssh
ssh-keygen -t rsa -b 4096

で作成

1
Enter file in which to save the key (/home/snowpool/.ssh/id_rsa):

となったらファイル名を入力

今回は raspi4
としておく

パスフレーズは省略するので

1
Enter passphrase (empty for no passphrase):

1
Enter same passphrase again:


Enter にすればパスフレーズなしとなる

次に公開鍵の登録

これは
ssh-copy-id コマンドを使う

なお接続するラズパイ4のIPは
Android ならFing で調べることが可能

1
scp -o IdentitiesOnly=yes .ssh/raspi4.pub pi@192.168.1.48:/home/pi/

で作成したファイルをコピー

次に
ラズパイにログイン

1
2
3
cat raspi4.pub >> .ssh/authorized_keys
chmod 700 .ssh/
chmod 600 .ssh/authorized_keys
1
sudo apt install vim


vim をインストール

1
sudo vim /etc/ssh/sshd_config

で設定ファイルを開き

パスワード認証を禁止

1
2
3
4
PermitEmptyPasswords no
PasswordAuthentication no
 
AuthorizedKeyFile .ssh/authorized_keys

を設定

1
sudo /usr/sbin/sshd -t

で設定の確認

1
sudo /etc/init.d/ssh restart


ssh の再起動

これで

1
ssh pi@192.168.1.48

でログインが可能になる

次に opencv のインストール

1
2
3
sudo apt update -y
sudo apt upgrade -y
sudo apt autoremove -y

でリポジトリ更新とアップデート
そして不要なパッケージの削除

次に opencv に必要なライブラリをインストール

1
2
3
sudo apt install -y libhdf5-103
sudo apt install -y libatlas-base-dev
sudo apt install -y libjasper-dev

しかし

1
sudo apt install -y libqt4-test

を実行したところ

1
E: パッケージ libqt4-test が見つかりません

となる

python : pip install OpenCVでRaspbianでこのエラーが発生するのはなぜですか?2021-12-27 06:48

によれば
Qt4はもうパッケージ化されていない
とのこと

このため
Linuxでdebパッケージをインストールする方法

を見ながら

1
2
wget http://ftp.de.debian.org/debian/pool/main/q/qt4-x11/libqt4-test_4.8.7+dfsg-18+deb10u1_arm64.deb
sudo dpkg -i libqt4-test_4.8.7+dfsg-18+deb10u1_arm64.deb

としたが

パッケージアーキテクチャ (arm64) がシステム (armhf) と一致しません
処理中にエラーが発生しました:

となるため

1
2
wget http://ftp.us.debian.org/debian/pool/main/q/qt4-x11/libqt4-test_4.8.7+dfsg-18+deb10u1_armhf.deb
sudo dpkg -i libqt4-test_4.8.7+dfsg-18+deb10u1_armhf.deb

としたが

1
2
3
4
5
6
7
8
9
dpkg: 依存関係の問題により libqt4-test:armhf の設定ができません:
 libqt4-test:armhf は以下に依存 (depends) します: libqtcore4 (= 4:4.8.7+dfsg-18+deb10u1) ...しかし:
  パッケージ libqtcore4 はまだインストールされていません。
 
dpkg: パッケージ libqt4-test:armhf の処理中にエラーが発生しました (--install):
 依存関係の問題 - 設定を見送ります
libc-bin (2.31-13+rpt2+rpi1+deb11u2) のトリガを処理しています ...
処理中にエラーが発生しました:
 libqt4-test:armhf

となってしまう

きにせずそのまま

1
sudo pip install opencv-python

としたら
インストールできた

1
sudo python3 -m pip install pip --upgrade


pip もアップデートしておく

次に仮想環境を構築するツール
virtualenv

virtualenvwrapper
をインストール

1
sudo pip3 install virtualenv

を実行すると
インストールは成功するが

1
WARNING: Running pip as the 'root' user can result in broken permissions and conflicting behaviour with the system package manager. It is recommended to use a virtual environment instead: https://pip.pypa.io/warnings/venv

となる

意味は

警告:「root」ユーザーとしてpipを実行すると、権限が破損し、システムパッケージマネージャーとの動作が競合する可能性があります。代わりに仮想環境を使用することをお勧めします
とのこと

1
pip install virtualenvwrapper

でインストールすると

1
2
WARNING: The script virtualenv-clone is installed in '/home/pi/.local/bin' which is not on PATH.
Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.

とでてくる

これは
.bashrc へ設定追加が必要

virtualenvとvirtualenvwrapperを使う

を参考に

whichコマンドを使って、virtualenvwrapper.shの場所を探す

1
which virtualenvwrapper.sh

結果は

1
/home/pi/.local/bin/virtualenvwrapper.sh

だったので

1
vim .bashrc

でファイルを開き
最終行に

1
2
3
4
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
    export WORKON_HOME=$HOME/.virtualenvs
    source /home/pi/.local/bin/virtualenvwrapper.sh #ここはwhichコマンドの結果に変えてください。
fi

を追記

1
source .bashrc

で有効化

しかし
mkvirtualenv コマンドが見つからないので
再度設定を変更

Raspberry Pi で virtualenv のインストール

を参考に

追記部分の

1
2
3
4
if [ -f /usr/local/bin/virtualenvwrapper.sh ]; then
    export WORKON_HOME=$HOME/.virtualenvs
    source /home/pi/.local/bin/virtualenvwrapper.sh #ここはwhichコマンドの結果に変えてください。
fi

を削除し

代わりに

1
2
3
export WORKON_HOME=$HOME/.virtualenvs
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
source /home/pi/.local/bin/virtualenvwrapper.sh

を追記

source のパスは

1
which virtualenvwrapper.sh

のものを使用

これで

1
source .bashrc

を実行すると
mkvirtualenv コマンドが使えるようになる

このコマンドの詳細については
コマンドリファレンス

を参考に

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です