コンテンツにスキップ

UCI: OpenWrt がすべての設定を /etc/config に保存する仕組み

すべてのサービスが /etc/config を読み込みます。LuCI が編集するのも同じファイルです。

UCI(Unified Configuration Interface)は、OpenWrt のサービスの設定を /etc/config/ 配下のプレーンテキストファイルに保存します。LuCI と uci コマンドは、どちらも同じファイルを編集します。

  • network、wireless、dhcp、firewall、system など、サブシステムごとに1つのファイルがあります。
  • uci set、uci add、uci rename、uci delete による変更は、まずステージングされます。uci commit で一括してフラッシュに書き込みます。
  • コミットした変更は、init スクリプトでサービスを再読み込みまたは再起動して初めて反映されます。公式の例では、uhttpd のポートを変更してコミットし、/etc/init.d/uhttpd restart を実行します。
  • LuCI はフロントエンドです。各ページは API を通じて同じ UCI ファイルを読み書きします。

次のコマンドは読み取り専用です。

ターミナルウィンドウ
uci show network.lan
uci get network.lan.ipaddr
uci export dhcp
  • コミットしたものの再読み込みしていない変更は、まだ反映されていません。次回のサービス再起動またはリブート時に反映されますが、それは設定したことを忘れた頃かもしれません。
  • 手作業で編集する前に、/etc/config を安全な場所にコピーしてください。完全なバックアップについてはバックアップと復元を参照してください。

出典

Router.Homes

独立した OpenWrt の実践ノートです。各ページにファームウェア、デバイス、パッケージマネージャー、元に戻す手順を明記しています。

アイコン:Solar by 480 Design, CC BY 4.0