私はOPNSense(および通常FreeBSD)を初めて使用し、cloud-initを使用して少なくとも私のLAN(vtnet0)の固定IPアドレス、ルートパスワードを設定し、最終的にカスタムスクリプト(またはシェル)を実行することに興味があります。コマンド)から。 Qemu を使用して OPNsense VM を作成し、カスタム構成を適用します。
私はopnsense github repoがクラウド初期化ポートだから、インストールしました。
pkg install net/cloud-init
その後、cloud-init NoCloudのニーズに応じて、ユーザーデータとメタデータを含むcidata.isoイメージをQemuに追加しました。 Ubuntu Server 21とCali Linuxでこのファイルをテストしました。少なくともこれらのオペレーティングシステムでは正しいです。)
CDROMが/dev/cd0であることを見つけてインストールしました。
mkdir -p /media/cdrom
mount -t cd9660 /dev/cd0 /media/cdrom
また、/etc/fstabを編集し、次の行を追加しました。
/dev/cd0 /media/cdrom cd9660 ro 0 0
起動時に自動的にCDROMをマウントします。
最後に(存在しなかったため)、次の内容で/etc/rc.confを作成しました。
cloudinit_enable="YES"
OPNsense 仮想マシンを再起動しました。
今私が期待するのは、起動時にcloud-initが自動的に起動することです。
しかし、これは起こりませんでした。おそらく何かを構成しなければならなかったからです。cloud-init init
端末を介して実行するとエラーが発生します。
stages.py[WARNING]: Failed to rename devices: Unexpected error while running command.
Command [`ip`, `-6`, `addr`,`show`, `permanent`, `scope`,`global`]
Exit code: -
Reason: [Errno 2] No such file or directory: b`ip`
Stdout: -
Stderr: -
No `init` modules to run under section `cloud_init_modules`
Kali LinuxとUbuntu Serverの両方で簡単に実行できます。
これについていくつかの質問があります。
- NoCloudでcloud-initポートを使用し、設定ファイルを含むcdrom(cidata)を使用できますか?それとも、OpenStackなどのクラウドサービスでのみサポートされていますか?
- 上記の設定は正しいですか、それとも何かが欠けていますか?
- 上記のエラーが発生するのはなぜですか?どうすれば解決できますか?
この質問を投稿しました。ここ、しかし返信を受け取れませんでした。
答え1
私はcloud-initサポートをBSD *に拡張することを進めています。このバグは今頃修正されなければなりません。少なくともhttps://github.com/canonical/cloud-init/pull/1779
これまでVultrはかなり良いサポートを受けました。で何かが動作しない場合net/cloud-init
に動作する可能性が高いですnet/cloud-init-devel
。問題が解決しない場合は、報告された問題を解決します。 cloud-initはバグトラッカーをLaunchpadからGitHubに移動したので、より簡単に貢献できます。
*ほとんどFreeBSDです。 FreeBSD財団が後援するプロジェクトであり、私はFreeBSDに最も慣れています。)