概要
smolBSD はNetBSDを基盤とした ミニマルBSD UNIXシステム 構築ツール。 必要なサービスだけを選択し、 数分で独自OSイメージ を生成可能。 再現性・移植性・即時起動性 が特長。 QEMUやFirecracker対応で どこでも動作。 コミュニティベースで 拡張・共有 も容易。
smolBSDとは
- NetBSD を基盤とした メタOS 構築ツール
- netbsd-MICROVMカーネル を採用、信頼性と移植性を確保
- 必要最小限のコンポーネント のみ選択・組み合わせ可能
- sshd, httpd, 独自サービス などを指定してビルド
- 一貫性あるミニマルなブート可能イメージ を自動生成
特長
- ソフトウェアのようにBSDシステムを構築
- 高速・再現性・最小構成 でビルド
- Composable(組み合わせ自由)
- カーネルからサービスまで 必要なものだけ選択
- Reproducible(再現性)
- 決定論的なビルド、バージョン管理も容易
- Instant Boot(即時起動)
- netbsd-MICROVM により 数ミリ秒で起動
- Universal(汎用性)
- QEMUやFirecracker が動く環境ならどこでも利用可能
クイックスタート
- リポジトリのクローン
git clone https://github.com/NetBSDfr/smolBSD
- ディレクトリ移動
cd smolBSD
- サービス指定でビルド
- 例:
bmake SERVICE=sshd build- ビルダーmicrovm起動
- 必要セット取得
- 512MBのrootファイルシステム作成
- イメージ生成(例:
sshd-amd64.img)
- 例:
- 起動スクリプト実行
./startnb.sh -f etc/sshd.conf
- SSH接続例
ssh -p 2022 ssh@localhost
ダウンロード例
- bozohttpd
- 数MBの静的Webサーバー
bmake SERVICE=bozohttpd build- 起動で即Webサービス開始
- nbakery
- NetBSDツール群を備えた軽量ビルド・イメージ作成サービス
bmake SERVICE=nbakery build- 起動でNetBSD環境にログイン可能
doasでrootコマンドpkginでパッケージ管理exitでクリーンシャットダウンtmux環境で作業
- nitrosshd
- 最小限・高速起動のSSHサーバー
bmake SERVICE=nitrosshd build- 起動で即SSH接続可能(SSHバウンサー用途に最適)
コミュニティと拡張性
- NetBSD上に構築された独立プロジェクト
- ユーザー/開発者が自由にマイクロシステムやサービスを共有・拡張可能
- 新しいサービスやビルドレシピの追加も歓迎