214 lines
8.3 KiB
Markdown
Executable file
214 lines
8.3 KiB
Markdown
Executable file
# 20240204184839 raspi4 家サーバー 作業ログ
|
||
#tech #raspi #server
|
||
|
||
|
||
## 買ったもの
|
||
- 【国内正規代理店品】Raspberry Pi4 ModelB 4GB ラズベリーパイ4 技適対応品【RS・OKdo版】 https://amazon.co.jp/dp/B081YD3VL5
|
||
- Smraza Raspberry Pi 4 USB-C (Type C)電源、5V 3A ラズベリーACアダプター RPi 4b Model B 1GB / 2GB / 4GB/ 8GB適用 https://amazon.co.jp/dp/B07DN5V3VN
|
||
- Flirc ラズベリーパイ4ケース シルバー https://amazon.co.jp/dp/B07WG4DW52
|
||
|
||
- 動作せず変更予定 CFD SSD M.2 NVMe RGAX シリーズ 3D NAND TLC採用 SSD PCIe Gen3×4 (読み取り最大3100MB/S) M.2-2280 NVMe 内蔵SSD1TB CSSD-M2L1TRGAXN 国内メーカー https://amazon.co.jp/dp/B0C4NQWQ4K
|
||
- ORICO M.2 SSDケース USB-C to NVMe M-Key / B&M Key(Nvmeのみ)に対応 USB 3.1 Gen2 10Gbps 外付けケース ABS+アルミ材質 UASPサポート2230/2242/2260/2280 SSD対応 M.2 SSD 変換アダプタ エンクロージャ ケース 黑 M2PV-BK https://amazon.co.jp/dp/B08GC326LL
|
||
|
||
|
||
|
||
## 20240204 最初のセットアップ
|
||
### Raspberry Pi Imagerを使ってSDカードを作成
|
||
[Install Raspberry Pi OS using Raspberry Pi Imager](https://www.raspberrypi.com/software/) のDownload for * で自分の環境用のRaspberry Pi Imagerをダウンロード、インストール
|
||
|
||
起動したら、
|
||
- Raspberry PIデバイス: RASPBERRY PI4
|
||
- OS: Raspberry Pi OS(other) -> Raspberry Pi OS Lite(64-bit)
|
||
- ストレージ: マイクロSDカードをPCに接続して、それを選ぶ
|
||
`Would you like to apply OS customization settings?`
|
||
で「設定を編集する」ボタンを押す。
|
||
- 一般 ホスト名、ユーザー名とパスワード、ロケールなど適切に設定
|
||
- サービス SSHを有効にする をチェック パスワード認証を使う
|
||
- オプション 編集せず
|
||
で保存ボタンを押す。
|
||
`Would you like to apply OS customization settings?` で、 「はい」を選んで書き込み。
|
||
|
||
完全に同じことを、USBのSSDで実施する。
|
||
microSDはブートの設定を変更する目的で作っている。設定変更後には使用しない。
|
||
|
||
同様の手順を、SSDにも実施する。
|
||
|
||
### ルーターの設定
|
||
- DHCPスタティックIP設定 を追加
|
||
|
||
### 起動
|
||
microSDに必要なデータを書きこんだら、Raspi 4に挿して、LANケーブルなど繋いで起動。
|
||
wsl2上のubuntuから、sshで接続確認。
|
||
ここまでできたら、SSD bootの設定をする。
|
||
|
||
### SSD bootに設定
|
||
色々と情報を見たが、一番簡単で確実な方法は、
|
||
- microSDにRaspberry Pi Imagerで必要なOSを書きこむ
|
||
- SSDをRaspberry Pi Imagerで必要なOSを書きこむ 20240204 時点ではraspi-cloneではうまくいかなかった。
|
||
- microSDでブート、bootloaderを最新にする
|
||
- raspi-configで起動をSSDに設定
|
||
という手順が確実そう。
|
||
|
||
#### SSDのフォーマット
|
||
SSDをUSBで接続。認識されると、こんな感じになる。
|
||
|
||
```
|
||
$ dmesg
|
||
[ 2371.382886] sd 0:0:0:0: [sda] Attached SCSI disk
|
||
[ 2555.521771] usb 2-2: USB disconnect, device number 3
|
||
[ 2555.565777] sd 0:0:0:0: [sda] Synchronizing SCSI cache
|
||
[ 2555.801704] sd 0:0:0:0: [sda] Synchronize Cache(10) failed: Result: hostbyte=0x07 driverbyte=DRIVER_OK
|
||
[ 2627.619831] usb 2-2: new SuperSpeed USB device number 4 using xhci_hcd
|
||
[ 2627.652398] usb 2-2: New USB device found, idVendor=0bda, idProduct=9210, bcdDevice=f0.01
|
||
[ 2627.652420] usb 2-2: New USB device strings: Mfr=1, Product=2, SerialNumber=3
|
||
[ 2627.652433] usb 2-2: Product: RTL9210
|
||
[ 2627.652442] usb 2-2: Manufacturer: Realtek
|
||
[ 2627.652451] usb 2-2: SerialNumber: 012345678905
|
||
[ 2627.684644] usb 2-2: Enable of device-initiated U1 failed.
|
||
[ 2627.685583] usb 2-2: Enable of device-initiated U2 failed.
|
||
[ 2627.714973] usb 2-2: Enable of device-initiated U1 failed.
|
||
[ 2627.716024] usb 2-2: Enable of device-initiated U2 failed.
|
||
[ 2627.720692] scsi host0: uas
|
||
[ 2628.284123] scsi 0:0:0:0: Direct-Access Realtek RTL9210 NVME 1.00 PQ: 0 ANSI: 6
|
||
[ 2628.302746] sd 0:0:0:0: Attached scsi generic sg0 type 0
|
||
[ 2628.306857] sd 0:0:0:0: [sda] 500118192 512-byte logical blocks: (256 GB/238 GiB)
|
||
[ 2628.308244] sd 0:0:0:0: [sda] Write Protect is off
|
||
[ 2628.308260] sd 0:0:0:0: [sda] Mode Sense: 37 00 00 08
|
||
[ 2628.310966] sd 0:0:0:0: [sda] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA
|
||
[ 2628.312278] sd 0:0:0:0: [sda] Preferred minimum I/O size 512 bytes
|
||
[ 2628.312300] sd 0:0:0:0: [sda] Optimal transfer size 33553920 bytes
|
||
[ 2628.324088] sda: sda1 sda2
|
||
[ 2628.324372] sd 0:0:0:0: [sda] Attached SCSI disk
|
||
[ 2753.358307] sda: sda1 sda2
|
||
```
|
||
|
||
fdiskで全部のパーティーションを削除。状況によって異なるので割愛。
|
||
#### bootloaderのバージョン確認
|
||
```
|
||
$ vcgencmd bootloader_version
|
||
2023/01/11 17:40:52
|
||
version 8ba17717fbcedd4c3b6d4bce7e50c7af4155cba9 (release)
|
||
timestamp 1673458852
|
||
update-time 0
|
||
capabilities 0x0000007f
|
||
```
|
||
|
||
`sudo raspi-config`
|
||
|
||
A7 Boot ROM Versionを最新に。
|
||
`E1 Latest Use the latest version boot ROM software` を選択して再起動。
|
||
|
||
```
|
||
$ vcgencmd bootloader_version
|
||
2024/01/22 10:41:21
|
||
version 51ed67b03b3dde4e76b345370f312d07aabf45b8 (release)
|
||
timestamp 1705920081
|
||
update-time 1707048097
|
||
capabilities 0x0000007f
|
||
```
|
||
|
||
ここまでできたら、USBブートにする
|
||
|
||
cf.
|
||
- [ラズパイ4をUSB接続のSSDから起動する方法(USBブート) | ラズパイダ](https://raspida.com/rpi4-ssd-usb-boot)
|
||
- [Raspberry PiのバックアップをCLIから作成する | Vogelbarsch](https://vogelbarsch.com/2020-08-27-140104/)
|
||
- [Rasberry Piでrpi-cloneを使ってバックアップ | TomoSoft](https://tomosoft.jp/design/?p=8721)
|
||
|
||
|
||
### sshを公開鍵認証にする
|
||
以下はwsl2のubuntuでやる。
|
||
|
||
```
|
||
$ ssh-keygen -t ed25519
|
||
Generating public/private ed25519 key pair.
|
||
Enter file in which to save the key (/home/kazbo/.ssh/id_ed25519):
|
||
Enter passphrase (empty for no passphrase):(Enterを押す)
|
||
Enter same passphrase again:(Enterを押す)
|
||
Your identification has been saved in /home/kazbo/.ssh/id_ed25519
|
||
Your public key has been saved in /home/kazbo/.ssh/id_ed25519.pub
|
||
The key fingerprint is:
|
||
SHA256: ...
|
||
The key's randomart image is:
|
||
+--[ED25519 256]--+
|
||
...
|
||
+----[SHA256]-----+
|
||
|
||
```
|
||
|
||
.ssh/に
|
||
id_ed25519 id_ed25519.pub
|
||
の2つのファイルができている。
|
||
|
||
```
|
||
$ cat .ssh/id_ed25519.pub
|
||
```
|
||
とやって表示される文字列
|
||
```
|
||
ssh-ed25519 ...
|
||
```
|
||
をコピーしておく。
|
||
|
||
raspi側で
|
||
```
|
||
$ mkdir .ssh
|
||
$ touch .ssh/authorized_keys
|
||
$ cat >> .ssh/authorized_keys
|
||
ssh-ed25519 ... (をコピペしてEnterを押す)
|
||
[ctrl+d]を押す
|
||
$ chmod 700 .ssh
|
||
$ chmod 600 .ssh/authorized_keys
|
||
```
|
||
|
||
接続確認。wsl側で
|
||
```
|
||
$ ssh -i .ssh/id_ed25519 saipi4(自分で設定したraspiのホスト名)
|
||
The authenticity of host 'saipi4 (192.168.1.100)' can't be established.
|
||
ECDSA key fingerprint is SHA256:UVgt3CY1o1JYPTf8CX5CLWV2UG6rtlvNHUQ4w6mLd8g.
|
||
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
|
||
Warning: Permanently added 'saipi4' (ECDSA) to the list of known hosts.
|
||
|
||
Linux saipi4 6.1.0-rpi7-rpi-v8 #1 SMP PREEMPT Debian 1:6.1.63-1+rpt1 (2023-11-24) aarch64
|
||
|
||
The programs included with the Debian GNU/Linux system are free software;
|
||
the exact distribution terms for each program are described in the
|
||
individual files in /usr/share/doc/*/copyright.
|
||
|
||
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
|
||
permitted by applicable law.
|
||
Last login: Sun Feb 4 18:47:22 2024 from 192.168.1.62
|
||
```
|
||
無事接続できた。
|
||
公開鍵で認証できるようになったので、パスワードログインを無効にする。
|
||
```
|
||
$ sudo nano /etc/ssh/ssh
|
||
```
|
||
` # PasswordAuthentication yes`
|
||
と書かれている所を、先頭の#を外して、
|
||
`PasswordAuthentication no`
|
||
にする。
|
||
`$ service sshd restart`
|
||
でsshd再起動。
|
||
|
||
以降は
|
||
```
|
||
ssh saipi4
|
||
```
|
||
で接続できるっぽい。最初からできたかも。
|
||
|
||
|
||
cf.
|
||
- [「よく分かる公開鍵認証」~初心者でもよくわかる!VPSによるWebサーバー運用講座(2) | さくらのナレッジ](https://knowledge.sakura.ad.jp/3543/)
|
||
- [SSH公開鍵認証で接続するまで #SSH - Qiita](https://qiita.com/kazokmr/items/754169cfa996b24fcbf5)
|
||
- [気付けばssh-keygen -t の後にrsaでなくed25519と打つことが推奨されていた | ABC DX Tech Blog](https://tech.asahi.co.jp/posts/20231005-bbf6)
|
||
|
||
|
||
### OSを最新に
|
||
|
||
`$ sudo apt update`
|
||
してから、
|
||
```
|
||
$ sudo apt full-upgrade
|
||
...
|
||
$ sudo reboot (最新にしたので再起動)
|
||
```
|
||
`
|