Raspberry Pi-01〜土台環境構築編〜

Raspberry Piのセットアップから、よく使うコマンドをまとめたページです。(ラズパイに限らず、一般的なLinuxコマンドも含みます。)
ラズパイは安いので(^^;; 何台も作ることになると思います。何度も同じ事を調べなくてよいように、ここに残しておきます。
詳細な手順は記載しませんので、細かな解説が必要な場合は別途お調べ願います。

また、当方の手順を実施したことで問題が発生した場合でも、弊社は一切責任を負いませんのであらかじめご了承ください。

目次

01. 動作確認環境
02. MicroSDにデータセットアップ
03. Raspbianのインストール
04. SSH接続準備(ネットワーク設定)
11. 電源周りの操作
12. パッケージ、ファームウェアなどのバージョン管理
22. コマンドのエイリアス設定(bash)
25. ネットワークサービス設定
31. デスクトップ関連
81. カメラ関連
99. 更新履歴

01. 動作確認環境

本体

  • Raspberry Pi 4
  • Raspberry Pi 3 Model B+
  • Raspberry Pi ZERO WH

OS

  • Raspbian 9.6系
  • Raspbian 10.0系(Buster)

02. MicroSDにデータセットアップ

1. NoobsをWebからダウンロード

Raspberry Pi

Download NOOBS - a straightforward way to install Raspbian, …

Noobsを「使わずに」セットアップする場合は、以下の記事をご参考ください。

関連記事

先日購入したRaspberry Pi4 Model Bですが、購入し忘れていたMicroSDカード(32GB)も手元に届きましたのでとりあえずセットアップしました。 MicroSDカードにあまりこだわりはありませんでしたので、Amaz[…]

2-1. MicroSDにコピー(新しいMicroSDの場合)

MicroSDカードのフォーマットはMS-DOS(FAT)とすること。
Macの場合は、ディスクユーティティでMS-DOSでフォーマットすればOK。
ダウンロードして解凍したフォルダ直下のファイルを全てコピー。(例 NOOBS_v3_2_0配下を全てSDカード直下にコピー)
※32GBのSDカードまでFAT形式でフォーマットできるはずです。

2-2. MicroSDにコピー(RaspberryPiで使っていたものを再利用、の場合)

パーティションが切られているため、専用のアプリでのフォーマットが必要です。
以下の「SDメモリカード フォーマッター」(無料)を使用するのが一番確実です。
フォーマット後、上記の「新しいMicroSDの場合」と同様の作業を実施。

SD Assoiciation

SDメモリカードフォーマッター はSDAが発行したSD File System Specificationに準拠して、S…

03. Raspbianのインストール

詳細は割愛。
インストール時の主なポイントだけメモ。

MicroSDカードの読み書き速度性能でかかる時間に雲泥の差が出ます
約5GBのインストール処理が走ります。

  • ディスプレイとマウス、キーボードを接続
  • 電源ON
  • Noobsが起動したら、画面下の言語で「日本語」を選択
  • WiFiの設定を実施
  • Raspbianを選択して「インストール」ボタンを押下(「削除されます!」みたいな怖いメッセージが出ますが「OK」で大丈夫)
  • インストールが終わるまで、ひたすら待つ

04. SSH接続準備(ネットワーク設定)

固定IP割り振り

IPアドレスで接続しますので、固定IPを割り振ります。

# 編集ファイルは /etc/dhcpcd.conf
sudo vi /etc/dhcpcd.conf

# 無線LANのIPアドレスを設定
# サブネットマスクはIPアドレスの後ろに/で記載すればOK
# 個々には実際のIPアドレス等に置き換えて記載してください
SSID xxxxxx
static ip_address=192.168.0.100/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1
static domain_search=192.168.0.1
noipv6

# 有線LANのIPアドレスを設定(Raspberry Pi 3 Model B+などの有線LANコネクタ搭載モデルの場合)
# 有線LANを使う時は無線LANはオフにしておいた方がよい
# 個々には実際のIPアドレス等に置き換えて記載してください
interface eth0
static ip_address=192.168.0.101/24
static routers=192.168.0.1
static domain_name_servers=192.168.0.1

# 設定したIPアドレスの確認
ip a
ifconfig

SSHを有効化

# ラズパイの設定を呼び出し
sudo raspi-config

# Interfacing Opitions > SSH > はい
# で有効化

【トラブル】SSHの接続でエラーが出る場合

ラズパイを再インストールし、ラズパイに同じIPアドレスを付与。
その状態で同じ端末(Macなど)から接続した場合「SSHの鍵が変わっているので中間者攻撃されているかもよ、接続させないよん」と怒られます。
(再インストールによりラズパイ側の鍵が変更される。Mac側に以前の鍵の記憶があるため、それと不一致になり怒られる。)

接続して問題ない場合は、記憶している鍵を削除してください。

ssh pi@192.168.0.9

>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
>@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
>@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
>IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
>Someone could be eavesdropping on you right now (man-in-the-middle attack)!
>It is also possible that a host key has just been changed.
>The fingerprint for the ECDSA key sent by the remote host is
>SHA256:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.
>Please contact your system administrator.
>Add correct host key in /Users/xxxxxxxx/.ssh/known_hosts to get rid of this message.
>Offending ECDSA key in /Users/xxxxxxxx/.ssh/known_hosts:1
>ECDSA host key for 192.168.0.9 has changed and you have requested strict checking.
>Host key verification failed.

# Mac側で記憶している鍵を削除
ssh-keygen -R 192.168.0.9

【ケース】Macとラズパイを有線LANで直接接続(SSHで接続)

外出先など、WiFi環境がない場所で使用するための設定。
Macとラズパイを有線LAN同士で接続する。

#必要なパッケージのインストール(ラズパイ側)
sudo apt-get install insserv
sudo apt-get install avahi-daemon
sudo apt-get install avahi-autoipd

#この状態でMacとラズパイを接続し、Macのターミナル.appにてSSH接続
ssh pi@raspberrypi.local

IPアドレスが分からない場合

#LAN内のIPアドレスやMacアドレスの一覧を表示
#Raspberry Piの同一ネットワークに接続している別端末から実行
arp -a

11. 電源周りの操作

# 再起動(方法1)
sudo reboot

# 再起動(方法2)
sudo shutdown -r now

# シャットダウン
sudo shutdown -h now

12. パッケージ、ファームウェアなどのバージョン管理

OS、ファームウェア操作

# OSのバージョン確認(1)
cat /etc/debian_version

# OSのバージョン確認(2)
lsb_release -a

# OSのバージョン確認(3)
uname -a


# OSのディストリビューションを最新化
sudo apt-get dist-upgrade


# Raspberry Piのファームウェア最新化
sudo rpi-update

パッケージ操作

# パッケージリストを最新化
sudo apt-get update

# パッケージをアップデート
sudo apt-get upgrade

22. コマンドのエイリアス設定(bash)

同じことの手間を省略するため、よく使うコマンドはエイリアス登録しておきましょう。

#記述先は ~/.bashrc
vi ~/.bashrc

#エイリアスを記述。=の間に半角スペースは「入れない」ように。
ailias ll='ls -l'
alias lla='ls -la'

#反映を適用
source ~/.bashrc

25. ネットワークサービス設定

FTPサービスの提供

# FTPをインストール
sudo  apt-get update
sudo apt-get install vsftpd

# ftpの設定
sudo vi /etc/vsftpd.conf

# vsftpd.conf 記述内容
# 必ずしも下記の設定にする必要はありません。
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
ascii_upload_enable=YES
ascii_download_enable=YES
chroot_local_user=YES
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list

# 上述のログインアカウント一覧リスト(vsftpd.chroot_list)に許可ユーザを記述
sudo vi /etc/vsftpd.chroot_list

# vsftpd.chroot_list 記述内容
# アカウント名を記述
pi

SMB(samba)サービスの提供

# sambaをインストール
sudo apt-get update
sudo apt-get install samba

# sambaの設定
sudo vi /etc/samba/smb.conf

# smb.conf 記述内容
# [xxx]は共有フォルダ名
[xxx]
   comment = xxx
   path = /home/pi/xxx
   guest ok = no
   read only = no
   browsable = yes
   force user = pi

# 設定後、sambaを再起動
sudo service smbd restart

31. デスクトップ関連

デスクトップ起動

# CLI(コマンドライン)からデスクトップの起動
startx

起動時のCLI/GUI起動設定

# コンフィグで設定する
# ★設定はxxx
sudo raspi-config

81. カメラ関連

カメラマウント

どういうケースでマウントされないかが不明だが、/dev/video0 にマウントされていない場合、カメラが使えない場合があります。

「以下のモデルのカメラ(Longruner Raspberry pi カメラモジュール 広角160度 魚眼レンズ 夜間 赤外線可視可能) + Raspberry Pi ZERO WH」 の環境下だと、以下のコマンドでマウント可能。

sudo modprobe bcm2835-v412

カメラ撮影

# とりあえず撮影(設定値デフォルト)
raspistill -o image.jpg

フォーカス調整

物理的に変更する形のカメラが多そうです。(そもそも、電子的には無理か・・・?)
以下のカメラの場合、レンズ部分を回して調整、でした。(説明書も何もないので最初は分かりませんでした・・・)

99. 更新履歴

2019/06/06 新規作成
2019/06/08 「04. SSH接続準備(ネットワーク設定)」を追加
2019/06/08 「25. ネットワークサービス設定」を追加
2019/06/11 「25. ネットワークサービス設定」にFTPを追加
2019/08/16 「81. カメラ関連」を追加
2019/09/17 「02. MicroSDにデータセットアップ」を追加
2019/09/17 「03. Raspbianのインストール」を追加
2019/09/17 「22. コマンドのエイリアス設定(bash)」を追加
2019/09/17 「04. SSH接続準備(ネットワーク設定)」に「【トラブル】SSHの接続でエラーが出る場合」を追加
2019/09/17 「04. SSH接続準備(ネットワーク設定)」に「Macとラズパイを有線LANで直接接続(SSHで接続)」を追加
2019/12/03 「04. SSH接続準備(ネットワーク設定)」に「IPアドレスが分からなくなった場合」を追加

Raspberry Piに戻る

Click to Hide Advanced Floating Content
Click to Hide Advanced Floating Content