Raspberry Pi Zero 2 WでDVSwitch-Serverを動かす完全ガイド(Bullseye対応)
概要
Raspberry Pi Zero 2 W(Raspberry Pi OS Bullseye)で DVSwitch-Server を動かすための手順をまとめました。DVSwitch には Bullseye 専用リポジトリがないため、bookworm スクリプトでリポジトリを登録し、/etc/apt/sources.list.d/dvswitch.list の suite を buster に手動で固定するのがポイントです。

なぜ bookworm スクリプトを使うのか?
- Raspberry Pi OS Bullseye は Debian 11 ベース。
- DVSwitch は Bullseye 専用リポジトリを提供していないため、buster(Debian 10)用パッケージセットを流用する。
bookwormスクリプト自体は Bullseye でも正常動作し、GPG キー配置とdvswitch.listの作成に成功する(実機確認済み)。- ただし作成直後の
dvswitch.listは suite がbookwormになっているため、busterに手動で書き換える必要がある。
buster スクリプト(./buster)は 2026年6月時点で動作不能です。 GPG キーの取得先 http://dvswitch.org/DVSwitch_Repository/dvswitch.gpg.key が 404 Not Found のため、スクリプト内の set -o errexit により無言で中断し、dvswitch.list が作成されないまま終了します。前提条件
- OS:Raspberry Pi OS Bullseye Lite(armhf)
- 対象機種:Raspberry Pi Zero 2 W
- root でのコマンド実行権限があること(
sudo su -で昇格可能な状態) - インターネットへの接続が確立していること
手順
1. root に切り替えて作業ディレクトリへ移動
sudo su - で root に昇格してから進めてください。sudo su -を実行して root に昇格する。cd /tmpを実行して作業ディレクトリに移動する。
2. DVSwitch リポジトリの登録
wget http://dvswitch.org/bookwormを実行してブートストラップスクリプトを取得する。chmod +x bookwormを実行して実行権限を付与する。apt update --allow-releaseinfo-changeを実行してリポジトリ情報の変更を許可しながら更新する。./bookwormを実行してリポジトリを登録する。
--allow-releaseinfo-change の -- は ASCII のハイフン 2 つです。全角ダッシュ(–)をコピペすると E: The update command takes no arguments エラーになります。./bookworm は内部で set -o errexit を使用しています。途中のコマンドが失敗すると無言で中断し、dvswitch.list が作成されないまま終了します。失敗した場合は bash -x ./bookworm 2>&1 | tee /tmp/bookworm_run.log でトレースを確認してください。2. 確認
リポジトリファイルと GPG キーリングが作成されていることを確認する:
ls /etc/apt/sources.list.d/dvswitch.list ls /usr/share/keyrings/dvswitch-keyring.gpg
期待される出力:
/etc/apt/sources.list.d/dvswitch.list /usr/share/keyrings/dvswitch-keyring.gpg
3. suite を buster に修正(★重要)
./bookworm 実行直後の dvswitch.list は suite が bookworm になっています。Bullseye 環境では buster 用パッケージセットで依存関係が正しく解決されるため、必ず buster に書き換えてください。編集対象ファイル:/etc/apt/sources.list.d/dvswitch.list
変更前:
deb [signed-by=/usr/share/keyrings/dvswitch-keyring.gpg] http://dvswitch.org/DVSwitch_Repository bookworm hamradio
変更後:
deb [signed-by=/usr/share/keyrings/dvswitch-keyring.gpg] http://dvswitch.org/DVSwitch_Repository buster hamradio
- (推奨)
sedコマンドで一括置換する: - (手動の場合)
nano /etc/apt/sources.list.d/dvswitch.listを開いてbookwormをbusterに書き換え、「Ctrl + X」→「Y」→「Enter」で保存する。
sed -i 's/ bookworm hamradio/ buster hamradio/' /etc/apt/sources.list.d/dvswitch.list
3. 確認
grep DVSwitch_Repository /etc/apt/sources.list.d/dvswitch.list
期待される出力(buster hamradio になっていること):
deb [signed-by=/usr/share/keyrings/dvswitch-keyring.gpg] http://dvswitch.org/DVSwitch_Repository buster hamradio
4. パッケージのインストール
dvswitch-server ではなく dvswitch(メタパッケージ)です。dvswitch-server は現在のリポジトリに存在せず、Unable to locate package dvswitch-server エラーになります。apt updateを実行してパッケージ一覧を更新する。apt install dvswitch analog-reflector stfu -yを実行して DVSwitch 一式をインストールする。
インストールされる主なコンポーネント:
dvswitch(メタパッケージ):dvswitch-base・dvswitch-dashboard等を依存として引き込むanalog-reflector:hUC 対応アナログ反射器(WebUI あり)stfu:BrandMeister ODMRTP 直結用モジュール- その他:
mmdvm-bridge、md380-emu、lighttpd、php、mosquittoなど
Error, YSFHosts.txt file does not seem to be valid が表示されますが、インストール自体は正常に完了します。設定完了後に解消します。4. 確認
apt update
期待される出力(DVSwitch リポジトリが参照されていること):
Hit:1 http://dvswitch.org/DVSwitch_Repository buster InRelease
dpkg -l dvswitch analog-reflector stfu
期待される出力(ii が先頭に付いていること):
ii dvswitch 1.6.0-... ii analog-reflector 1.1.30-... ii stfu 0.3.3-...
dvswitch メタパッケージによる全コンポーネントのインストールを確認済み。WebUI への接続確認
インストール完了後、ブラウザで以下の URL にアクセスして DVSwitch の WebUI が表示されることを確認する:
http://<Raspberry Pi の IP アドレス>:2812/
例:http://192.168.1.59:2812/
固定 IP アドレスの設定(Wi-Fi)
- 以下のコマンドで設定ファイルを開く:
- ファイルの末尾に以下を追加する(各値は実際のネットワーク環境に合わせて変更すること):
- 「Ctrl + X」→「Y」→「Enter」で保存して閉じる。
sudo rebootで再起動して設定を反映させる。
sudo nano /etc/dhcpcd.conf
interface wlan0 static ip_address=192.168.x.x/24 static routers=192.168.x.x static domain_name_servers=192.168.x.x
rfkill でブロックされている場合(Wi-Fi is currently blocked by rfkill)は、先に sudo raspi-config nonint do_wifi_country JP で国設定を行ってください。トラブルシュート
./bookworm が途中で止まり dvswitch.list が作成されない
原因:スクリプト内の set -o errexit により、途中のコマンドが失敗すると無言で中断します。
対処:以下のコマンドでトレースを取得して失敗箇所を特定する:
bash -x ./bookworm 2>&1 | tee /tmp/bookworm_run.log tail -30 /tmp/bookworm_run.log
apt install で「Unable to locate package dvswitch-server」が出る
原因:dvswitch-server というパッケージ名は現在のリポジトリに存在しません。
対処:パッケージ名を dvswitch(メタパッケージ)に変更する:
apt install dvswitch analog-reflector stfu -y
dvswitch メタパッケージによる全コンポーネントのインストールを確認済み。buster スクリプト(./buster)を実行したが dvswitch.list が作成されない
原因:http://dvswitch.org/DVSwitch_Repository/dvswitch.gpg.key が 404 Not Found のため、GPG キー取得のステップで set -o errexit が働いて中断します。
buster スクリプトは GPG キー URL が 404 のため動作不能。bookworm スクリプトは正常に動作し、リポジトリ登録・GPG キー配置ともに成功。対処:buster スクリプトは使用せず、手順 2 の bookworm スクリプトを使用してください。
まとめ
- Bullseye では
bookwormスクリプトでリポジトリを登録し、suite をbusterに手動で固定するのがポイント。 apt update --allow-releaseinfo-changeでリポジトリ情報の変更を許可する。- パッケージ名は
dvswitch-serverではなくdvswitch(メタパッケージ)を指定する。 - 最終的に
apt install dvswitch analog-reflector stfu -yで DVSwitch 一式を導入する。