先日購入したRaspberry Pi4の初期セットアップと、
USBメモリからブートさせる、というところまでやったので、ブログに書きまする。
前回の記事は↓から。
Raspberry Pi 4を買ったので、まずは組み立て!
小さいは正義
まずはHomebrirgeとNASとして動かすために以下の設定をやる。
- 一般的な初期設定
- microSDは寿命的にリスク有りなのでUSBメモリに移行
dockerをインストール(dockerは一旦不要)
あとRaspberry Pi OSは"Buster"且つ64bit版、GUIは使ってない。
一般的な初期設定
まずは誰もが実施する初期設定。
初期ユーザ(pi)のパスワードを変更。
"raspi-config"を使えばポチポチ設定できるんだけど、エンジニアっぽく極力コマンド端末で済ませるw
passwd
OSアップデート。
sudo apt update sudo apt -y upgrade sudo apt -y autoremove
時刻同期設定。
echo "NTP=ntp.nict.jp" | sudo tee -a /etc/systemd/timesyncd.conf
SSH公開鍵をGitHubから登録。
mkdir ~/.ssh curl -s https://github.com/(GitHub名).keys | tee -a ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
パスワードログインとrootユーザーログインを不可にする。
sudo tee -a /etc/ssh/sshd_config << EOM > /dev/null PasswordAuthentication no PermitRootLogin no Port 22 EOM
ホスト名変更。
俺は"raspberrypi"⇒"raspberrypi4"に変えた。
sudo hostnamectl set-hostname raspberrypi4
タイムゾーンを日本(=東京)に変更。
sudo timedatectl set-timezone Asia/Tokyo
言語に日本語を追加。
sudo dpkg-reconfigure locales
上記コマンドを実行すると言語を選択する画面が出るので、
"ja_JP.UTF-8"を選択する。
次に表示する言語を選択する画面。これも日本語に変える。
ただ、英語のままのほうが良いという話もあるのでお好みで。
ネットワークは有線LANを使っているんだけど、
ログインするたびに以下の警告が表示される。
実害は無いんだけど、気になるのでWiFiの使用する国を日本に変える。
Wi-Fi is currently blocked by rfkill.
Use raspi-config to set the country before use.
sudo raspi-config nonint do_wifi_country JP
以上で初期設定終わり。再起動する。
sudo reboot
microSD→USBメモリに変更
microSDをディスク代わりに使っていると、書き込み寿命が来てサーバシャットダウンと言ったリスクが考えられるので
手持ちのUSBメモリが余っていたのでそちらに切り替え。
あと、USB3.0のほうがスピードが速いので。
SSDにすりゃもっと速いんだろうけど、SATA→USB変換ケーブル持ってないし。
USBメモリは↓のサンディスク製の64GB。
これの前モデルを3年くらい前に買ったやつ。
実物。
Raspberry Pi OSのGUI版であればSDカードの中身をコピーするツールがあるんだけど、
GUI版じゃないので、"rpi-clone"というツールをインストールする。
ツールのダウンロードにgitを使うので、
ついでにgitもインストールしておく。
sudo apt install -y git
rpi-cloneをダウンロード。
git clone https://github.com/billw2/rpi-clone.git
DLしたプログラムをコピーして、後片付け。
sudo cp rpi-clone/rpi-clone* /usr/local/sbin rm -rf rpi-clone/
USBメモリをポートに挿して、対象となるデバイスを確認する。
以下だと"sda"がUSBメモリということになる。
lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sda 8:0 1 57.3G 0 disk └─sda1 8:1 1 57.3G 0 part mmcblk0 179:0 0 116.5G 0 disk ├─mmcblk0p1 179:1 0 256M 0 part /boot └─mmcblk0p2 179:2 0 116.2G 0 part /
以下のコマンドでmicroSDカードの中身をUSBメモリへコピーする。
途中で確認が入るで"yes"と入力する。
sudo rpi-clone sda Booted disk: mmcblk0 125.1GB Destination disk: sda 61.5GB --------------------------------------------------------------------------- Part Size FS Label Part Size FS Label 1 /boot 256.0M fat32 -- 1 57.3G -- -- 2 root 116.2G ext4 rootfs --------------------------------------------------------------------------- == Initialize: IMAGE partition table - partition number mismatch: 2 -> 1 == 1 /boot (30.5M used) : MKFS SYNC to sda1 2 root (1.2G used) : RESIZE MKFS SYNC to sda2 --------------------------------------------------------------------------- Run setup script : no. Verbose mode : no. -----------------------: ** WARNING ** : All destination disk sda data will be overwritten! -----------------------: Initialize and clone to the destination disk sda? (yes/no): yes Optional destination ext type file system label (16 chars max): Initializing Imaging past partition 1 start. => dd if=/dev/mmcblk0 of=/dev/sda bs=1M count=8 ... Resizing destination disk last partition ... Resize success. Changing destination Disk ID ... => mkfs -t vfat -F 32 /dev/sda1 ... => mkfs -t ext4 /dev/sda2 ... Syncing file systems (can take a long time) Syncing mounted partitions: Mounting /dev/sda2 on /mnt/clone => rsync // /mnt/clone with-root-excludes ... Mounting /dev/sda1 on /mnt/clone/boot => rsync /boot/ /mnt/clone/boot ... Editing /mnt/clone/boot/cmdline.txt PARTUUID to use 7798598e Editing /mnt/clone/etc/fstab PARTUUID to use 7798598e =============================== Done with clone to /dev/sda Start - 10:27:39 End - 10:29:03 Elapsed Time - 1:24 Cloned partitions are mounted on /mnt/clone for inspection or customizing. Hit Enter when ready to unmount the /dev/sda partitions ... unmounting /mnt/clone/boot unmounting /mnt/clone ===============================
以上でUSBメモリへコピーが出来た。
次にブートローダーを変更する。
raspi-configで設定できるようになった。
sudo raspi-config
「6 Advanced Options」を選択する。
「A6 Boot Order」を選択する。
「B2 USB Boot」を選択する。
これでUSBブートできるようになった。
一旦シャットダウンしてmicroSDカードを抜く。
sudo shutdown -h now
これでUSBメモリを起動ディスクとすることが出来た。
dockerインストール
次にdockerをインストールする。
以下のコマンドを実行してインストール用のシェルをダウンロードして実行。
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh
"docker"というグループをpiユーザーに紐付け。
sudo usermod -aG docker `whoami`
一旦ログアウト。ついでにダウンロードしたシェルファイルも削除。
rm get-docker.sh exit
dockerの確認。
sudo systemctl status docker docker -v Docker version 20.10.10, build b485636
次にdocker-composeをインストール。
最新版のv2をインストールする。
mkdir -p ~/.docker/cli-plugins/ curl -SL https://github.com/docker/compose/releases/download/v2.1.0/docker-compose-linux-aarch64 -o ~/.docker/cli-plugins/docker-compose chmod +x ~/.docker/cli-plugins/docker-compose sudo ln -s $HOME/.docker/cli-plugins/docker-compose /usr/local/bin/
動作確認。
docker-compose -v Docker Compose version v2.1.0
以上!
次はHomebridgeを移行しようと思います。
----------------追記
続き書きますた。HomebridgeじゃなくてNASの導入!
Raspberry Pi 4にOpenMediaValutを導入してNASとして使う
RaspberryPiの可能性は無限大!
0 件のコメント:
コメントを投稿