読み取り専用ファイルシステムで `/etc/resolv.conf`を更新する

読み取り専用ファイルシステムで `/etc/resolv.conf`を更新する

現在、私はbusyboxに基づく組み込みLinuxシステムを持っています。ファイルシステムは、読み取り専用でマウントされたjffs2ファイルシステムです。私が経験している問題の1つは、/etc/resolv.confDHCPを介して更新できないことです。

/etc/resolv.conftmpfs(tmpfsで/tmp/resolv.confマウント/tmp)以外のファイルを使用できますか?

それとも、私は非常に編集的で、JFFS2を読み取り専用でインストールしていますか?フラッシュメモリが消費されたくないので、ルートファイルシステムは読み取り専用です。

ベストアンサー1

シンボリックリンクを使用できます。私はこれを確認しようとしました。 / tmpの内容は一時的なので、dhcpcdを実行する前に起動時にファイルを生成する必要があることを意味します。

touch /tmp/dhcpcd.resolv.conf
ln -s /tmp/dhcpcd.resolv.conf /etc/resolv.conf

私は説明のためにlnビットを含めましたが、いいえ起動するたびにシンボリックリンクを作成する必要があります。 ROシステムにシンボリックリンクを1回だけ追加してアクセスしようとする前に、リンクされた/ tmpファイルが作成されていることを確認してください。

シンボリックリンクは、自分がリンクしたファイルと権限を共有します。ただし、対応するファイルシステムがROの場合でも、接続したファイルがROでない限り、書き込みは機能します。

おすすめ記事