RaspberryPiのセットアップ
Raspberry Pi をセットアップする手順を書き残しておく. ディスプレイをつなぐのは面倒なので SSH で全てを済ませる. OS は Raspberry Pi Imager で raspbian をインストールする. 手元の Raspberry Pi 2 Model B をセットアップしながら書いているので Wi-Fi 周りの情報はない.
Raspberry Pi Imager のダウンロード
公式のダウンロードページ(https://www.raspberrypi.org/downloads/)で SD カードへの書き込みツールである Raspberry Pi Imager が配布されている. Windows では exe ファイルがダウンロードできるので実行してインストール. 終わるまで気長に待つのみ.
SD カードへの書き込み
Raspberry Pi Imager を起動する. OS は RASPBERRY PI OS (32-BIT)を選択し,SD カードを指定して WRITE ボタンをクリック. SD カードの中身が消えても大丈夫なものか確認して YES をクリックして書き込み開始. 書き込みが終わると SD カードのマウントが解除されるので物理的に一度抜き差ししてから SSH の有効化に進む.
SSH 有効化
SD カードのルートにssh
という空ファイルを作成する.
Raspberry Pi Imager が SD カードをアンマウントしているかもしれないので注意する.
WSL を用いる場合は,エクスプローラで SD カードのドライブレター(E:
とか)を確認した後,適当なディレクトリを作って
$ sudo mount -t drvfs E: tmp
でマウントし
$ sudo umount tmp
でアンマウントする.
SSH
SD カードをさし,raspi をルータに接続.電源を投入して起動を待ってから接続を試みる.
パスワードはraspberry
.
$ ssh pi@raspberrypi.local
複数の RaspberryPi のセットアップを続けていると
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
が出てくるかもしれない.
$ ssh-keygen -R raspberrypi.local
でホストの鍵を削除すれば接続できる.
SSH できない場合はここまでの手順か環境に問題がある.
$ nslookup raspberrypi.local
を試して IP がわからないなら環境の問題なので,ルータの設定画面を見るとか nmap を使うとか何らかの方法で IP を突き止めれば SSH できる.
IP がわかっているのに SSH できないならこれまでの手順の問題なので落ち着いて確認する.
- ユーザ名
pi
とパスワードraspberry
を勘違いしていないか - 電源は入っているか,起動しているか
- 空ファイル
SSH
ができているか
IP の固定
/etc/dhcpcd.conf
の# Example static IP configuration:
の部分を編集する.
- interface
- static ip_address
- static routers
GUI の無効化
$ sudo raspi-config
からBoot Options
-> Desktop / CLI
と進み,console
にする.最後に再起動される
pi ユーザの名前を変更
デフォルトではユーザ名が pi でパスワードは raspberry だと誰もが知っているのでそのままにしてはいけない. tmp ユーザを一度追加して pi から actat へユーザ名を変更し,パスワードを設定する.
$ sudo useradd -M tmp
$ sudo gpasswd -a tmp sudo
$ sudo passwd tmp
ログアウトして tmp で SSH しなおす
$ sudo usermod -l actat pi
$ sudo usermod -d /home/actat -m actat
$ sudo groupmod -n actat pi
$ sudo passwd actat
ログアウトして actat で SSH しなおす
$ sudo userdel tmp
$ sudo vi /etc/ssh/sshd_config
"PermitRootLogin no"にして"AllowUsers actat"を追記する.
$ sudo systemctl reload ssh
おしまい
Raspberry Pi Imager がとても便利. windows ではそのままだと dd できないので面倒な手順を踏んでいたが,これ一つインストールするだけで解決するのでとても捗る.