Raspberry Pi bookworm
OpenCV
sudo apt upgrade
sudo apt install python3-opencv
Samba
sudo apt install samba samba-common-bin
sudo smbpasswd -a <username>
sudo <editor> /etc/samba/smb.conf
code:samba.conf
path = /home/<username>/<dirname>
browseable = yes
writable = yes
guest_ok = no
create mask = 0775
directory mask = 0775
valid users = <username>
sudo systemctl restart smbd nmbd
AP
Raspberry Pi (bookworm)をous6につなげる
https://scrapbox.io/files/68d35f8e68b7d87aca07f1bc.png
インターネット ⇔ wlan0 (Raspberry Pi) ⇔ RPi ⇔ USB Gadget (usb0) ⇔ Windows PC
code:csh
sudo nmcli connection add type ethernet ifname usb0 con-name usb0-dhcp \
ipv4.method shared ipv4.addresses 192.168.50.1/24 ipv6.method ignore \
connection.autoconnect yes
sudo nmcli connection add type ethernet ifname eth0 con-name eth0-dhcp \
ipv4.method shared ipv4.addresses 192.168.50.1/24 ipv6.method ignore \
connection.autoconnect yes
このnmの設定(1個目)でUSB GadetとしてのRPi(IP:192.168.50.1固定)に自動的につながってしまう
方法3: 設定ファイルを直接削除(必要なときだけ)
NetworkManager の接続ファイルは以下に保存されています:
/etc/NetworkManager/system-connections/
ous6.nmconnection のようなファイルがあるはずです。これを削除すれば確実に設定が消えます:
sudo rm "/etc/NetworkManager/system-connections/ous6.nmconnection"
sudo systemctl restart NetworkManager
次のコマンドは何ですか?詳しく教えてください。sudo nmcli connection add type wifi con-name raspi-ap ssid raspi-ap 802-11-wireless-security.psk raspberry ifname ap0 mode ap 802-11-wireless.band bg ipv4.method shared ipv4.addresses 192.168.210.1/24 ipv6.method disabled 802-11-wireless-security.key-mgmt wpa-psk 802-11-wireless-security.proto rsn 802-11-wireless-security.pairwise ccmp 802-11-wireless-security.psk raspberry autoconnect yes
要約
このコマンドは NetworkManager のコマンドラインツール nmcli を使って、新しい Wi-Fi 接続プロファイル(アクセスポイント)を作成するものです。
結果としてマシン上に SSID raspi-ap の アクセスポイント(AP) が設定され、AP のインターフェース ap0 に IP 192.168.210.1/24 を割り当て、IPv4 を共有(NAT/DHCP)し、WPA2-PSK(パスフレーズ raspberry)で保護するプロファイルが作られます。
以下、コマンド全文と各部分の詳細説明です。
code:_
sudo nmcli connection add type wifi con-name raspi-ap ssid raspi-ap \
802-11-wireless-security.psk raspberry ifname ap0 mode ap \
802-11-wireless.band bg ipv4.method shared ipv4.addresses 192.168.210.1/24 \
ipv6.method disabled 802-11-wireless-security.key-mgmt wpa-psk \
802-11-wireless-security.proto rsn \
802-11-wireless-security.pairwise ccmp \
802-11-wireless-security.psk raspberry autoconnect yes
各項目の意味(分解)
sudo
管理者権限で実行します。接続プロファイルの追加は通常 root 権限が必要です。
nmcli
NetworkManager のコマンドラインインターフェース。接続の追加・表示・操作ができます。
connection add
新しい接続(プロファイル)を作成します。
type wifi
作る接続のタイプを Wi-Fi に指定。AP(アクセスポイント)設定のため。
con-name raspi-ap
NetworkManager 内での接続名(識別名)。後で nmcli connection show raspi-ap などで参照します。
ssid raspi-ap
無線ネットワークの SSID(公開名)。クライアントが表示/接続する名前です。
ifname ap0
この接続を使う物理/仮想インターフェース名を指定。ここでは ap0 に限定しているので、そのインターフェースが存在し、AP モードをサポートしている必要があります(存在しないと起動できません)。
mode ap
インターフェースを アクセスポイント(AP)モード で動かす設定。クライアントを受け入れる側になります(通常クライアントモードは infrastructure)。
802-11-wireless.band bg
2.4GHz 帯(802.11b/g)で動かす設定。5GHz を使いたければ a や a オプションを使います。
ipv4.method shared
NetworkManager の「共有」モード。マシンをルーター代わりにして、接続されたクライアントに DHCP を配り、ホストの上位接続を NAT で共有します(簡単に言えばインターネット共有+ローカル DHCP/NAT)。
ipv4.addresses 192.168.210.1/24
AP 側(ホスト側)に割り当てる固定 IPv4 アドレス。通常はこのアドレスがクライアントのゲートウェイ(AP のアドレス)になります。サブネットは 192.168.210.0/24。
ipv6.method disabled
IPv6 を無効化(AP に IPv6 アドレスを割り当てない)。
802-11-wireless-security.key-mgmt wpa-psk
鍵管理方式を WPA-PSK(パーソナル)に設定(家庭用の事前共有鍵方式)。
802-11-wireless-security.proto rsn
使用するプロトコルを RSN(Robust Security Network)、つまり WPA2 を意味します。
802-11-wireless-security.pairwise ccmp
ペアワイズ暗号スイートを CCMP(AES)に指定。WPA2/AES を使う設定です。
802-11-wireless-security.psk raspberry
接続パスフレーズ(WPA2 の事前共有鍵)。ここでは raspberry と指定しています。
autoconnect yes
インターフェースが使えるときに自動的にこの接続を起動する設定。
実行後に使うと便利な確認/操作コマンド
接続一覧・詳細
nmcli connection show
nmcli connection show raspi-ap
接続を起動(即時反映したい場合)
sudo nmcli connection up raspi-ap
デバイス(インターフェース)の状態確認
nmcli device status
ip addr show ap0 または ip link show ap0
AP が動かない/インターフェースがない場合の確認
iw list(ドライバが AP をサポートしているか確認)
rfkill list(無線がブロックされていないか)
削除(不要になったら)
sudo nmcli connection delete raspi-ap
注意点・よくある問題と対処
1. ap0 が存在しない
多くの環境では無線インターフェースが wlan0 や wlan1 といった名前です。ap0 は仮想インターフェースを作った場合などに使われます。存在しないなら ifname を省くか正しいインターフェース名(例 wlan0)にします。
2. ハードウェア/ドライバが AP モードをサポートしていない
iw list の Supported interface modes に AP があるか確認してください。なければ AP を作れません。
3. チャネル・地域設定(regulatory domain)
使用するチャンネルが使えないと AP が上がらないことがあります。必要なら 802-11-wireless.channel 6 のように明示的にチャンネルを指定できます。
4. ipv4.method shared の動作
このモードは NetworkManager が内部で DHCP/NAT を提供しますが、ホスト側に別の上位インターネット接続が必要な場合があります(共有先がないと単にローカルネットワークのみ)。
5. セキュリティ
psk に raspberry をそのまま使うのは弱いです(辞書攻撃されやすい)。WPA2-PSK のパスフレーズは 8 文字以上(できれば長くランダム) にしてください。可能なら WPA3(機器が対応していれば)を検討。
追加ヒント(便利な代替)
簡単にホットスポットを作りたいだけなら(NetworkManager が対応していれば):
code:_
sudo nmcli device wifi hotspot ifname wlan0 ssid MyHotspot password "強いパスワード"
のような短いコマンドで一時的なホットスポットを作れます。
必要なら、あなたの環境(Raspberry Pi なら ip link と iw list の出力、使いたいインターフェース名)を教えてください。それに合わせて具体的に ifname をどうするか、band やチャネルのおすすめ、トラブルシュート手順を示します。
USB gadget の設定方法
上記APのnmcliコマンドでよさげ。
Raspberry Pi OS bookworm の諸元
Raspberry Pi OS with desktop and recommended software
Release date 13 May 2025
System 64-bit
Kernel version 6.12
Debian version 12 (bookworm)
Size 3,113 MB
Raspberry Pi OS をA7-2Fで初回起動、設定をしたときの気付き
A7-2Fものづくり室で作業を始めたが、初回起動時にWPA-EnterpriseであるOUS6に「素で」繋ぐことができない。 とりあえず自分のルータで繋いでOSのupdatesをダウンロードした。