3 minutes
Raspberry Pi セットアップのTips
raspberry pi の環境を作っては壊し、壊しては作りを繰り返しているので備忘録
実行環境
Mac Book Pro により ssh 接続でraspberry piに接続、CUI操作をメインとする。
Mac
ProductName: Mac OS X
ProductVersion: 10.15.4
BuildVersion: 19E266
Raspberry pi
基本的にZero WHで動作確認をしているが、一部4でも動作確認済み
- Raspberry Pi Zero WH
- Raspberry Pi 4 Model B (2GB)
Raspbian のダウンロード
raspbian-lite(var.2020/02/13) の例
curl -O http://ftp.jaist.ac.jp/pub/raspberrypi/raspbian_lite/images/raspbian_lite-2020-02-14/2020-02-13-raspbian-buster-lite.zip
SD カードのフォーマット
ディスクの確認
diskutil list
自分の場合他の外部デバイス接続をしていない場合基本的に /dev/disk2 に SD カードが割り当てられている。
SD カードフォーマット
diskutil eraseDisk MS-DOS RPI /dev/disk2
フォーマット形式(MS-DOS)、ディスクの名前(RPI)、フォーマット対象ディスク(/dev/disk2)の順
memo
NOOBS のインストールドキュメントを見てると ~32GB 容量の SD カードであれば MS-DOS でフォーマットしてやれば良さげ。
イメージの書き込み
ddコマンドなるものでもできるらしいが、Etcherで行った。
Copying an operating system image to an SD card using Mac OS
無線 LAN 設定
Mac でイメージを書き込んだあとに SD カードの名前が /Volumes/boot と変わっている。
よってこのファイル内を変更することにより Mac 側でraspberry piの設定を行う。
touch /Volumes/boot/ssh
ネットワーク設定
read -p 'wifi_ssid: ' wifi_ssid
read -sp 'wifi_pswd: ' wifi_pswd
cat <<EOF >/Volumes/boot/wpa_supplicant.conf
country=JP
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="$wifi_ssid"
psk="$wifi_pswd"
}
EOF
平文パスワードを嫌う場合WPA key calculationを使ってパスワードを暗号化して記載することもできる。wpa_passphraseコマンドもあり。
また以下コマンドで Mac が接続しているWi-Fiを確認できる。
networksetup -getairportnetwork en0
raspberry pi での wpa_supplicant.conf
/etc/wpa_supplicant/wpa_supplicant.confに場所が変わっている
ssh 接続
ssh ユーザー名@IPアドレスで接続することができる。
初期パスワードはraspberry
raspberry pi の IP アドレス確認
arp -a
raspberrypi への接続
より簡単には以下でも可能
ssh pi@raspberrypi.local
ssh-keygen -R raspberrypi.local
これより以下 Mac 上で Raspberri Pi に ssh 接続していることが前提
pi ユーザーのパスワード変更
raspberrypi の初期ユーザーとパスワードは公開されているため、一番最低限のセキュリティ対策としてpiユーザーのパスワード変更をすべきである。
$ passwd
root ユーザーのパスワード変更
$ sudo passwd root
新規ユーザーの追加
$ sudo adduser ユーザー名
新規ユーザーに sudo 権限を追加
$ sudo gpasswd -a ユーザー名 sudo
pi ユーザを sudo から外す
$ sudo gpasswd -d pi sudo
日本時間にする
sudo timedatectl set-timezone Asia/Tokyo
$ date
Sun Jun 14 08:01:52 BST 2020
$ sudo timedatectl set-timezone Asia/Tokyo
$ date
Sun Jun 14 16:03:39 JST 2020
cron のログ出力
sudo vim /etc/rsyslog.conf
#cron.* /var/log/cron.log
↓
cron.* /var/log/cron.log
設定の反映
$ sudo /etc/init.d/rsyslog restart
RaspberryPi3 で初めて crontab を使う前に - Qiita
[記載予定] エディタ設定
nano も良いが、せっかくだしvimを使えるようになりたい
vim-tiny アンインストール
$ sudo apt-get --purge remove vim-common vim-tiny
vim インストール
$ sudo apt-get install vim
$ vim ~/.vimrc
日本語化
$ sudo apt-get update
$ sudo apt-get install fcitx-mozc
$ sudo reboot
$ locale
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: LC_ALL??????????????????: ??????????????????????
LANG=ja_JP.UTF-8
LANGUAGE=
LC_CTYPE=UTF-8
LC_NUMERIC="ja_JP.UTF-8"
LC_TIME="ja_JP.UTF-8"
LC_COLLATE="ja_JP.UTF-8"
LC_MONETARY="ja_JP.UTF-8"
LC_MESSAGES="ja_JP.UTF-8"
LC_PAPER="ja_JP.UTF-8"
LC_NAME="ja_JP.UTF-8"
LC_ADDRESS="ja_JP.UTF-8"
LC_TELEPHONE="ja_JP.UTF-8"
LC_MEASUREMENT="ja_JP.UTF-8"
LC_IDENTIFICATION="ja_JP.UTF-8"
LC_ALL=
vi ~/.bashrc
export LANGUAGE=ja_JP.UTF-8
export LC_ALL=ja_JP.UTF-8
export LC_TYPE=ja_JP.UTF-8
pip
$ pip3 -V
-bash: pip3: コマンドが見つかりません
$ sudo apt-get install python3-pip
$ pip3 -V
pip 18.1 from /usr/lib/python3/dist-packages/pip (python 3.7)
Original error was: libf77blas.so.3: cannot open shared object file: No such file or directory
ImportError: libf77blas.so.3: cannot open shared object file: No such file or directory · Issue #262 · Kitt-AI/snowboy
$ sudo apt-get install libatlas-base-dev
git
$ sudo apt-get install git
$ git config --global user.email "you@example.com"
$ git config --global user.name "Your Name"