Raspberry Piでネットワーク構築/インストール
概要
Raspberry PiにRaspberry Pi OS(Debian)をインストールする手順を記載する。
- ディスプレイとキーボードは使用しない。
- ユーザpiを削除し、新ユーザを追加する。
事前設定
Raspberry Pi OSイメージをSDカードに書き込む
Debianでddコマンドを使う場合
入手したチェックサムとファイル名を記入した、hash.txtを用意する。
008d7377b8c8b853a6663448a3f7688ba98e2805949127a1d9e8859ff96ee1a9 RASPIOS.ZIP
$ sha256sum -c hash.txt
$ sudo dd bs=4M if=RASPIOS.IMG of=/dev/SDX status=progress conv=fsync
RASPIOS.ZIP: Raspberry Pi OSイメージのZIPファイル RASPIOS.IMG: Raspberry Pi OSイメージ SDX: デバイス名
Raspberry Pi OSイメージの/bootでの作業
SSH設定
sshというファイルを作成する。
$ sudo touch ssh
無線LAN設定
wpa_supplicant.confというファイルを作成し、次の内容を書き込む。
$ sudo vi wpa_supplicant.conf country=JP ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev update_config=1 network={ ssid="SSID" psk=PSK } SSID: SSID名 PSK: Pre-Shared Key(wpa_passphraseコマンドで生成)
ユーザ名とパスワード
userconf.txt
$ echo 'mypassword' | openssl passwd -6 -stdin
username:encrypted-password
ハードウェアセットアップ
- Rasbberry PiにSDカードを挿入する。
- 電源を入れる。
外部からSSHでログイン
$ ssh pi@raspberrypi.local パスワード: raspberry
Rasbberry Pi OSでの作業
SSH
SSHを起動する。
$ sudo systemctl enable ssh $ sudo systemctl start ssh
パッケージ更新
$ sudo apt update $ sudo apt upgrade
$ sudo apt install raspberrypi-ui-mods
タイムゾーン設定
「Asia/Tokyo」に設定する。
$ sudo dpkg-reconfigure tzdata
ロケール設定
ja_JP.UTF-8に設定する。
$ sudo dpkg-reconfigure locales
キーボード設定
スワップ設定
スワップをオフにする場合
$ sudo swapoff --all $ sudo systemctl stop dphys-swapfile $ sudo systemctl disable dphys-swapfile
スワップを増やす場合
/etc/dphys-swapfile
CONF_SWAPSIZE=100
$ sudo systemctl restart dphys-swapfile
オートログイン設定
オートログインを無効にする。
$ sudo raspi-config 1 System Options -> S5 Boot / AUto Login -> B3 Desktop
コンソールログインの場合は、次のコマンドも必要か?
$ sudo systemctl stop autologin@tty1 $ sudo systemctl disable autologin@tty1
新ユーザ追加
$ sudo adduser [user] $ sudo usermod -a -G adm,dialout,cdrom,sudo,audio,video,plugdev,games,users,input,netdev,spi,i2c,gpio [user]
ホスト名設定
$ sudo hostnamectl set-hostname [hostname] # /etc/hostnameなどを変更 $ sudo vi /etc/hosts
再起動
$ sudo reboot
ユーザpiを削除(変更)
新ユーザでログインする。
$ sudo deluser -remove-home pi
※ユーザ名変更
$ sudo usermod -d /home/NEWUSR -m OLDUSR $ sudo usermod -l NEWUSR OLDUSR $ sudo groupmod -n NEWGR OLDGR
SSHキー
PCからSSHキーを設定する。
$ ssh-copy-id host.local host: ホスト名
補足
キーボード
/etc/default/keyboard
XKBOPTIONS="ctrl:swapcaps"
HDMI出力
/boot/config.txt
hdmi_force_hotplug=1
Full HDにするには?
chromium
libwidevine
マルチアーキテクチャ
$ sudo dpkg --add-architecture armhf
Raspberry Pi 4: UAS対応が不完全なUSBストレージを使用する場合
$ lsusb Bus 002 Device 002: ID 152d:0562 JMicron Technology Corp. / JMicron USA Technology Corp. JMS567 SATA 6Gb/s bridge
/boot/cmdline.txt
usb-storage.quirks=VID:PID:u VID: Vendor ID PID: Product ID
インストール済みメディアからコピーする場合
SDカードのcfdisk
Device Boot Start End Sectors Size Id Type >> Free space 2048 8191 6144 3M /dev/sdf1 8192 532479 524288 256M c W95 FAT32 (LBA) /dev/sdf2 532480 62453759 61921280 29.5G 83 Linux
parted
(parted) p Model: Generic Mini SD Reader (scsi) Disk /dev/sdf: 32.0GB Sector size (logical/physical): 512B/512B Partition Table: msdos Disk Flags: Number Start End Size Type File system Flags 1 4194kB 273MB 268MB primary fat32 lba 2 273MB 32.0GB 31.7GB primary ext4
/boot/cmdline.txt
root=/dev/mmcblk0p2 root=PARTUUID=757373e1-02
/etc/fstab
PARTUUID=9d181d35-01 /boot vfat defaults 0 2 PARTUUID=9d181d35-02 / ext4 defaults,noatime 0 1
$ blkid /dev/SDX
$ sudo e2label /dev/SDX rootfs
$ sudo e2fsck -f /dev/SDX $ sudo resize2fs