【问题标题】:Yocto - Where is the most appropriate place to disable creation of /etc/hostnameYocto - 禁用创建 /etc/hostname 的最合适位置在哪里
【发布时间】:2018-03-21 00:10:22
【问题描述】:

在 poky 上构建 core-image-minimal 时(在我的例子中,这是基于 BBG 参考为自定义硬件构建的),yocto 将主机名写入文件系统映像上的 /etc/hostname。

有时最好在 fs 映像构建期间排除主机名文件的创建,而是在设备第一次启动映像时动态生成主机名,然后生成 /etc/hostname 文件。

一个示例实现是使用 systemd 和一个“firstboot”单元文件,该文件使用 ConditionPathExists=|!/etc/hostname 来确定是否需要生成主机名。

那么,最适合禁止创建 /etc/hostname 的位置/方法在哪里?

【问题讨论】:

    标签: yocto systemd hostname


    【解决方案1】:

    您可以更改和定义自己的主机名,编辑您的 local.conf:

    hostname_pn-base-files = "your_hostname_here"
    

    【讨论】:

    • ...并实际回答问题:如果您以这种方式定义空主机名,则不会创建 /etc/hostname。它在 openembedded-core 的base-files recipe 中处理,你可以在那里查看。
    • hostname_pn-base-files 设置主机名。我面临的要求是不设置主机名。此外,不应创建 /etc/hostname 文件。 @TomasNovotny 我可能误解了你的建议;空的 hostname_pn-base-files 将引发解析器异常。我在核心中知道的对主机名的唯一引用是 hostname.sh,如果 /etc/hostname 文件不存在,它会生成它。建议的选项是修补我层中的 hostname.sh 吗?
    • 也许看看manual
    猜你喜欢
    • 2018-05-19
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多