RaspberryPiの構築手順書

# 概要

RaspberryPiを1から作ることが多かったので、構築手順の備忘録を載せておきます

# 構築手順

Moniquaは以下の構築手順に沿って、構築を行う。

1. RaspberryPiのOSを書き込む
2. Wi-Fi・SSHの設定を追加する
3. raspi-configにて、各種設定を行う

# RaspberryPiのOSを書き込む

RaspberryPiのSDカードにOSを書き込まないと、そもそも何も動作しないので、まずはOSを書き込む。

以下の手順でMicroSDカードにOSを書き込む。

1. RaspberryPIに使用するMicroSDカードを用意する
2. PCにMicroSDカードを接続させ
3. [RaspberryPi Imager](https://www.raspberrypi.org/software/) をDLしておき、起動
4. OperationSystem -> Raspberry Pi OS (32bit), SD Card -> (接続しているSDカード) の設定に変更
5. WRITE
6. 無事完了することを見守る

途中で接続部分をイジってしまうと、エラーが出て書き込み完了しない場合が多いので、書き込んでいる最中は最新の注意を....

# Wi-Fi・SSHの設定を追加

RaspberryPiにWi-Fiの設定、SSHの許可等を行わないと何も始まらないので、設定していきます。

参考記事：

- [Raspberry Pi 初期設定](https://qiita.com/HeRo/items/c1c30d7267faeb304538)
- [【2019年12月版】ラズパイとMacの接続はUSB-C ケーブルだけでOK？！→ラズパイ七変化](https://qiita.com/koinori/items/ee81e1815de9e4d7f15d)

手順は以下に沿って行います。

1. PCにMicroSDカードを再挿入する
2. boot という名前で接続された事を確認する
3. SSHサーバーを有効化にするために、sshファイルを作成
4. Wi-FiのSSID/Password入のConfigデータを挿入
5. デバイスを再起動させ、Wi-Fi接続しているかチェック
6. TypeC直でネットワーク有効化させるために、config周りをイジる
7. TypeC直でSSH接続出来るかどうかのチェック

## PCにMicroSDカードを再挿入する

一度接続する

## boot という名前で接続された事を確認する

![eQGCRl8Y8q8EQeA12zxckLNB5H7CY3JBX8MzCD09iSfdlzd0NUJzTew-oVG9DimHPoffQvSNONjkGMSFq9Fpf3QsYk9KqeojYDB4ygiyd581Ku15D3FLKyebEr8Nemb_lPWtc2Dj.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/142839/6bf14bb8-2375-a2a8-dd47-12af4021c09a.png)


Finderにて、boot という名前で接続されているかを確認する

## SSHサーバーを有効化にするために、sshファイルを作成

```
# boot場所の確認
$ ls /Volumes/
 ./   ../  'Macintosh HD'@   boot/  'boot 1'/

# bootが複数ある場合があるので、確認をする
$ ls boot\ 1/
./		  LICENCE.broadcom*	   bcm2708-rpi-zero.dtb*    bcm2710-rpi-3-b-plus.dtb*  bootcode.bin*  fixup4cd.dat*  fixup_x.dat*   kernel8.img*   start4db.elf*
../		  bcm2708-rpi-b.dtb*	   bcm2708-rpi-zero-w.dtb*  bcm2710-rpi-cm3.dtb*       cmdline.txt*   fixup4db.dat*  issue.txt*     overlays/	   start4x.elf*
.Spotlight-V100/  bcm2708-rpi-b-plus.dtb*  bcm2709-rpi-2-b.dtb*     bcm2711-rpi-4-b.dtb*       config.txt*    fixup4x.dat*   kernel.img*    start.elf*	   start_cd.elf*
.fseventsd/	  bcm2708-rpi-b-rev1.dtb*  bcm2710-rpi-2-b.dtb*     bcm2711-rpi-400.dtb*       fixup.dat*     fixup_cd.dat*  kernel7.img*   start4.elf*    start_db.elf*
COPYING.linux*	  bcm2708-rpi-cm.dtb*	   bcm2710-rpi-3-b.dtb*     bcm2711-rpi-cm4.dtb*       fixup4.dat*    fixup_db.dat*  kernel7l.img*  start4cd.elf*  start_x.elf*

$ ls boot/
ls: cannot open directory 'boot/': Permission denied

# LICENCE.broadcom等があるところがRaspberryPiのOS先なので、そこで作業する
$ cd /Volumes/boot\ 1/

# SSHサーバーを有効化
$ touch ssh

```

## Wi-FiのSSID/Password入のConfigデータを挿入

```
# bootの中に入る
$ cd /Volumes/boot\ 1/

# wpa_supplicant.confを挿入
$ vim wpa_supplicant.conf

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

```

## デバイスを再起動させ、Wi-Fi接続しているかチェック

ここまで作業が終わり次第、MicroSDカードを抜き、RaspberryにMicroSDカードを挿入 & 電源をつける

```
$ ssh pi@raspberrypi.local
The authenticity of host 'raspberrypi.local (fe80::7a3d:7fc2:3c99:a41a%en0)' can't be established.
ECDSA key fingerprint is SHA256:1LKhtcoGIrJPoQOmBRjaDrOgSVo7GhGXgDMxXMpkcFM.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added 'raspberrypi.local,fe80::7a3d:7fc2:3c99:a41a%en0' (ECDSA) to the list of known hosts.
pi@raspberrypi.local's password:

Password = raspberry

Linux raspberrypi 5.10.17-v7l+ #1403 SMP Mon Feb 22 11:33:35 GMT 2021 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Thu Mar  4 23:11:31 2021

SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.

pi@raspberrypi:~ $

# SSH出来たら確認OK

```

## TypeC直でネットワーク有効化させるために、config周りをイジる

```
# bootの中に入る
$ cd /Volumes/boot\ 1/

# config.txtに書き込む
vim config.txt

# 末尾に以下の内容を追加
dtoverlay=dwc2

# cmdline.txtに書き込む
vim cmdline.txt

# 末尾に以下の内容を追加 (行最初の空白は必須)
 modules-load=dwc2,g_ether

```

## TypeC直でSSH接続出来るかどうかのチェック

ここまで作業が終わり次第、MicroSDカードを抜き、RaspberryにMicroSDカードを挿入 & Mac⇆RaspberryPiをデータ転送が可能なTypeCで繋ぐ

```
# SSH
$ ssh pi@raspberrypi.local
Warning: Permanently added the ECDSA host key for IP address 'fe80::7f8b:4e81:fc61:2c2a%bridge100' to the list of known hosts.
pi@raspberrypi.local's password:
Linux raspberrypi 5.10.17-v7l+ #1403 SMP Mon Feb 22 11:33:35 GMT 2021 armv7l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
Last login: Wed May 26 04:36:26 2021

SSH is enabled and the default password for the 'pi' user has not been changed.
This is a security risk - please login as the 'pi' user and type 'passwd' to set a new password.

pi@raspberrypi:~ $

```

# raspi-configにて、各種設定を行う

```
# raspi-config
$ sudo raspi-config
```

この画面で、以下の設定を行う。

## 1 System Options

Hostname -> OK -> (任意のHostName) (Prefix: moniqua-○○)

## 3 Interface Options

Camera -> Yes

I2C -> Yes

Serial Port -> Yes

1 Wire -> Yes

## 5 Localisation Options

Local -> Timezone -> Asia -> Tokyo