Skip to content
Taichi FURUHASHI edited this page Oct 7, 2024 · 27 revisions

0. RaspberryPi OSのインストール

Hardware

  • RaspberryPi 5 8GB
  • MicroSD 128GB

Software

  • RaspberryPi OS LITE(64-bit) for RaspberryPI 5

1. SSH Login

ssh でログインできない場合は該当する古いホストキーを削除して、再度ホストキーを設定する

ssh-keygen -R unvtportable.local

2. nginx インストール

apt update

sudo apt update -y
sudo apt install nginx
sudo systemctl status nginx

nginx の開始・停止・再起動

  • 開始: sudo systemctl start nginx
  • 停止: sudo systemctl stop nginx
  • 再起動: sudo systemctl restart nginx
hostname -I

unvt@unvtportable:~ $ hostname -I 10.0.4.10

と表示すれば 10.0.4.10 が、現時点での割り振られたIPアドレスなので、Webブラウザで http://10.0.4.10/ にアクセスして動作確認

スクリーンショット 2024-10-03 14 46 11

3. NetworkManager を使った Wi-Fi アクセスポイント Setting

nano を使って NetworkManager.conf ファイルを修正。NetworkManager が Wi-Fi インターフェースを管理できるようする。 managed=true にするのが重要。

sudo nano /etc/NetworkManager/NetworkManager.conf
スクリーンショット 2024-10-03 14 52 48

Ctrl + k キーで[main][ifupdown]部分を削除して以下を貼り付け、上書き保存(Ctrl + s で保存、Ctrl + x で終了)。

[main]
plugins=ifupdown,keyfile
dhcp=internal

[ifupdown]
managed=true
スクリーンショット 2024-10-03 14 53 54

設定を反映するために、Raspberry Pi を再起動

sudo reboot

再度 Raspberry Pi に ssh でログイン

新しいアクセスポイントプロファイルを作成

  • Default SSID: UNVTportable
  • Default Password: UNVTportable とする。 複数台でテストするときは
  • Default SSID: UNVTportable4mapconcierge
  • Default Password: UNVTportable のようにSSID名の接尾語に 4アカウント名 を追加して個人識別できるようにする
sudo nmcli dev wifi hotspot ifname wlan0 ssid UNVTportable band bg password UNVTportable
sudo nmcli dev wifi hotspot ifname wlan0 ssid UNVTportable4mapconcierge band bg password UNVTportable

しばらくすると、自動的に RaspberryPi が Wi-Fi アクセスポイントを切り替えて、ssh 接続が遮断。2−3分ほどコーヒータイム

新しいWi-Fiアクセスポイントに UNVTportable に接続

Wi-Fi アクセスポイントに UNVTportable が登場したら、パスワード UNVTportable を用いて接続。

スクリーンショット 2024-10-03 15 09 41

再度 ssh 接続

IPアドレスを再確認

hostname -I

unvt@unvtportable:~ $ hostname -I 10.42.0.1

先程は 10.0.4.10 だった IPアドレスが 10.42.0.1 に変更された。Webブラウザで http://10.42.0.1/ にアクセスして動作確認

スクリーンショット 2024-10-03 15 22 00

4. ファイル転送のためのアクセス権限変更

現状の /var/www/html アクセス権限確認

おそらく root が所有

ls -ld /var/www/html

unvt@unvtportable:~ $ ls -ld /var/www/html drwxr-xr-x 2 root root 4096 Oct 3 14:41 /var/www/html

アクセス権限を unvt アカウントと unvt グループに変更 -R オプションを付けることで、htmlファイル以下にも再帰的にオーナー権限が unvt となる。

sudo chown -R unvt:unvt /var/www/html

unvt@unvtportable:~ $ ls -ld /var/www/html drwxr-xr-x 2 unvt unvt 4096 Oct 3 14:41 /var/www/html

ちゃんと root から unvt アカウントにアクセス権が変更されていることを確認。

5. scp コマンドでのデータ転送

転送用のデータはここに置く予定(まだ準備中)

https://github.com/unvt/portable

ローカルマシンに MapLibre 関連ファイル一式を用意

  • index.html
  • maplibre-gl.css
  • maplibre-gl.js
  • style.json
  • tiles.json その他諸々関連ファイルを配置する。

データの配置ルールについてはこの概念図をアップデートする https://github.com/unvt/portable/wiki/2.-How-to-use

image

ローカルマシン側から scp コマンドでデータ転送

ローカルマシン側の Terminal で、MapLibre 関連ファイル一式のパスまでカレントディレクトリを移動する。

cd [path]

スクリーンショット 2024-10-03 16 19 07

scpコマンドは -r オプションを忘れずに入れてアップロード

scp -r . [email protected]:/var/www/html/
taichi@MacBookProM1Pro2021 html % scp -r . [email protected]:/var/www/html/
[email protected]'s password: 
maplibre-gl.js                                                                                  100% 1142KB   2.9MB/s   00:00    
._maplibre-gl.js                                                                                100% 4096   283.5KB/s   00:00    
._index.html                                                                                    100% 4096   683.6KB/s   00:00    
style.json                                                                                      100%   79KB   1.6MB/s   00:00

このように、一気にデータ転送。 コーヒーを入れて一服タイム。

データ転送が終わったら地図表示

Webブラウザで http://10.42.0.1/ にアクセスすれば MapLibre GL の地図が表示されるはず。

image

Clone this wiki locally