NetBSD
はじめに
編集NetBSDは、高い移植性とクリーンな設計を特徴とするオープンソースのUNIX系オペレーティングシステムです。1993年に誕生し、そのモットー「Of course it runs NetBSD」が示す通り、多様なハードウェアアーキテクチャに対応しています。NetBSDは、組み込みシステムから大規模サーバーまで、幅広い環境で利用されています。このハンドブックでは、NetBSDの基本的な使い方から、その特徴や応用までを解説します。
NetBSDの基本概念
編集NetBSDの特徴
編集NetBSDは、以下のような特徴を持っています。
- 高い移植性:
- NetBSDは、50以上のハードウェアアーキテクチャに対応しており、組み込みシステムからサーバーまで幅広い環境で動作します。
- クリーンでモジュール化された設計により、新しいプラットフォームへの移植が容易です。
- 安定性と信頼性:
- NetBSDは、堅牢なカーネル設計と徹底したテストにより、高い安定性を実現しています。
- セキュリティにも注力しており、定期的なセキュリティアップデートが提供されます。
- Pkgsrc:
- NetBSDのパッケージ管理システムであるPkgsrcは、20,000以上のソフトウェアパッケージを提供します。
- Pkgsrcは、NetBSD以外のOS(Linux、macOS、Solarisなど)でも利用可能です。
- ライセンス:
- NetBSDは、BSDライセンスの下で提供されており、商用利用や改変が自由です。
NetBSDのインストール
編集インストールメディアの準備
編集NetBSDのインストールには、公式サイトからインストールイメージをダウンロードします。ISOイメージやUSBインストーラを作成し、起動可能なメディアを準備します。
インストール手順
編集- インストールメディアからシステムを起動します。
- インストーラの指示に従い、言語、キーボードレイアウト、ディスクパーティションなどを設定します。
- ネットワーク設定を行い、必要なパッケージを選択します。
- インストールが完了したら、システムを再起動します。
基本的なシステム操作
編集ログインとシェル
編集NetBSDのデフォルトシェルはAlmquist Shell(ash
)です。これは、Bourne Shellと互換性がありながら、軽量で効率的な設計が特徴です。ログイン後、シェルプロンプトが表示されます。
$ echo $SHELL /bin/sh
ユーザー管理
編集新しいユーザーを追加するには、useradd
コマンドを使用します。
doas useradd -m -s /bin/sh username doas passwd username
パッケージ管理(Pkgsrc)
編集Pkgsrcを使用してソフトウェアをインストールします。まず、Pkgsrcツリーを取得します。
cd /usr doas cvs checkout -P pkgsrc
次に、パッケージをビルドしてインストールします。
cd /usr/pkgsrc/category/package doas make install clean
バイナリパッケージをインストールする場合は、pkg_add
コマンドを使用します。
doas pkg_add package_name
ネットワーク設定
編集ネットワークインターフェースの設定
編集NetBSDのネットワーク設定は、/etc/rc.conf
ファイルで行います。例えば、静的IPアドレスを設定するには、以下のように記述します。
auto_ifconfig=YES ifconfig_em0="inet 192.168.1.100 netmask 255.255.255.0" defaultroute="192.168.1.1"
設定を反映させるには、ネットワークサービスを再起動します。
doas /etc/rc.d/network restart
ファイアウォールの設定
編集NetBSDでは、pf
(Packet Filter)を使用してファイアウォールを設定できます。/etc/pf.conf
ファイルにルールを記述し、pf
を有効にします。
doas pfctl -f /etc/pf.conf doas pfctl -e
システム管理
編集プロセス管理
編集実行中のプロセスを確認するには、ps
コマンドを使用します。
ps aux
特定のプロセスを終了するには、kill
コマンドを使用します。
kill -9 PID
ログの確認
編集システムログは、/var/log/
ディレクトリに保存されます。dmesg
コマンドでカーネルメッセージを確認できます。
dmesg | less
セキュリティ
編集ユーザー権限の管理
編集NetBSDでは、doas
を使用して特権コマンドを実行できます。doas
を設定するには、vidoas
コマンドで/etc/doasers
ファイルを編集します。
doas vidoas
セキュリティアップデート
編集NetBSDのセキュリティアップデートは、定期的に提供されます。システムを最新の状態に保つために、以下のコマンドで更新します。
doas sysupgrade
カスタマイズとチューニング
編集カーネルの再構築
編集NetBSDでは、カーネルをカスタマイズして再構築できます。カーネルソースを取得し、設定ファイルを編集します。
cd /usr/src/sys/arch/$(uname -m)/conf doas cp GENERIC MYKERNEL doas vi MYKERNEL
カーネルをビルドしてインストールします。
doas ./build.sh kernel=MYKERNEL doas ./build.sh install=/
起動サービスの管理
編集起動時に実行されるサービスは、/etc/rc.conf
ファイルで管理します。例えば、sshd
を有効にするには、以下のように記述します。
sshd=YES
NetBSDの応用
編集組み込みシステム
編集NetBSDは、組み込みシステム向けのディストリビューションとしても利用されます。rump kernel
を使用することで、最小限のリソースでNetBSDの機能を活用できます。
仮想化
編集NetBSDは、Xen・VirtualBox・Hyper-VやBhyveなどの仮想化環境で動作します。また、rump kernel
を使用して、ユーザースペースでカーネル機能を実行することも可能です。
おわりに
編集NetBSDは、その高い移植性と安定性から、多様な環境で利用される強力なオペレーティングシステムです。このハンドブックが、NetBSDの基本的な操作から高度なカスタマイズまでを理解する一助となれば幸いです。NetBSDの世界を探索し、自分に合った使い方を見つけてください。