Raspberry Piでネットワーク構築/インストール

提供: Medeshima wiki
ナビゲーションに移動 検索に移動

概要

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

ハードウェアセットアップ

  1. Rasbberry PiにSDカードを挿入する。
  2. 電源を入れる。

外部から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