【问题标题】:Yocto Poky-Pyro bbappend file for init-ifupdown is not replacing /etc/network/interfaces用于 init-ifupdown 的 Yocto Poky-Pyro bbappend 文件未替换 /etc/network/interfaces
【发布时间】:2018-01-11 14:22:03
【问题描述】:

我在 Ubuntu 16.04 上使用 Yocto poky-pyro。我想替换生成的映像根文件系统上的 /etc/network/interfaces 文件,因此我在我的元公司目录中添加了一个 bbappend 配方,其中还包含其他正确构建的包配方。

user@BuildMachine:~/bbb/meta-bbb/recipes-custom/init-ifupdown$ tree
.
├── init-ifupdown_1.0
│   └── interfaces
└── init-ifupdown_1.0.bbappend

1 directory, 2 files

bbappend 文件如下所示:

# Extend the base recipe search path to $HERE/init-ifupdown
FILESEXTRAPATHS_prepend := "${THISDIR}/init-ifupdown-1.0:"

该目录中的接口文件如下所示:

user@BuildMachine:~/bbb/meta-bbb/recipes-custom/init-ifupdown$ cat init-ifupdown_1.0/interfaces 
# Configure Loopback
auto lo
iface lo inet loopback

# Configure WiFi Infrastructure
auto wlan0
iface wlan0 inet dhcp

 # Configure WiFi Hotspot
auto wlan1
iface wlan1 inet static  
    address 172.24.1.1
    netmask 255.255.255.0
    network 172.24.1.0
    broadcast 172.24.1.255

在我构建映像并查看 init-ifupdown 包的工作构建目录后,我发现那里存在错误的“接口”文件,并且它与映像中的内容匹配:

user@BuildMachine:~/bbb/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/init-ifupdown/1.0-r7$ ls interfaces 
interfaces
user@BuildMachine:~/bbb/build/tmp/work/cortexa8hf-neon-poky-linux-gnueabi/init-ifupdown/1.0-r7$ cat interfaces 
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

### wired, static
#auto eth0
#iface eth0 inet static
#   address 192.168.10.33
#   netmask 255.255.255.0
#   gateway 192.168.10.1

如何让我的 bbappend 文件生效并部署我的自定义接口文件?

【问题讨论】:

  • 为我工作。确保在 bblayers.conf 中包含图层并在重建 id 之前进行清理:我使用 bitbake -c clean 然后 bitbake

标签: linux embedded-linux yocto bitbake


【解决方案1】:

interfaces 文件是特定于机器的,因此很可能在machine override 后面已经有另一个interfaces 文件。

将文件放在子目录init-ifupdown_1.0/${MACHINE} 中。这将确保您的interfaces 文件只会被您的机器拾取,它也会为您的机器提供优先权。

【讨论】:

猜你喜欢
  • 2013-11-06
  • 1970-01-01
  • 2015-05-01
  • 2018-03-08
  • 2018-03-23
  • 2020-09-30
  • 1970-01-01
  • 2013-07-06
  • 1970-01-01
相关资源
最近更新 更多