在只读文件系统上更新`/etc/resolv.conf`

在只读文件系统上更新`/etc/resolv.conf`

我目前有一个基于busybox的嵌入式linux系统。文件系统是只读安装的 jffs2 文件系统。我遇到的一个问题是/etc/resolv.conf无法通过 DHCP 进行更新。

是否可以使用与 tmpfs 不同的文件/etc/resolv.conf/tmp/resolv.conf挂载/tmp为 tmpfs)。

或者我是否过于偏执地将 JFFS2 安装为只读?根文件系统是只读的,因为我不想磨损闪存。

答案1

您可以使用符号链接,我刚刚尝试过这一点以确定。由于 /tmp 中的内容是临时的,这意味着您必须在 dhcpcd 运行之前在启动时创建该文件。

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

我通过说明的方式包含了 ln 位,但请注意,您每次启动时都必须创建符号链接;只需放入您的 RO 系统一次,并(再次)确保在任何尝试访问它之前创建它链接到的 /tmp 文件。

符号链接与它们链接到的文件共享权限,即使它们所在的文件系统是 RO,只要它们链接到的文件不是 RO,写入就可以工作。

相关内容