Files
infix/src/confd
Joachim Wiberg 3e07c9a960 Fix missing /etc/resolv.conf when starting with failure-config
Turns out the root cause for the odd log message in #896 was that the
system did not properly call `resolvconf -u` when starting in failure
mode.

This patch simplifies the code by moving all `resolvconf -u` calls to
the same Finit task.  Ensuring it is first launched when confd has
successfully consumed any configuration at boot, and then every time
a static DNS server is added.  (The udhcpc client script already call
`resolvconf -u` when dynamic DNS servers are learned.)

Fixes #896

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
2025-02-28 16:10:27 +01:00
..
2025-02-13 20:27:01 +01:00
2023-04-17 14:09:24 +02:00
2025-02-14 09:52:37 +01:00
2025-02-13 20:27:01 +01:00
2024-08-23 11:15:12 +02:00
2025-02-08 13:40:35 +01:00

Configuration Daemon

confd is the Infix configuration daemon that serves as the glue between sysrepo and netopeer2 (NETCONF) and the UNIX system under it all.

Factory & Failure Config

Infix supports both static and dynamically generated factory-config. At boot the dynamic is always generated to /run/confd/factory-config.gen, which is installed to /etc/factory-config.cfg and used by default, if that file does not already exist. The same applies to the failure mode configuration.

The following describes how a vendor/product specific config is found and installed into /etc/factory-config.cfg before the dynamic one is installed.

  1. /etc/factory-config.cfg: built into the image, e.g., r2s
  2. /usr/share/product/<PRODUCT>/etc/factory-config.cfg, where the <PRODUCT> is determined from the VPD, which is available after probe has run, in /run/system.json as "product-name". The lower case version of the string is used

In the second option a script running just after probe will in fact cp the complete product specific directory to /, meaning any file and directory that is writable at runtime can be overloaded with device specific versions.

Origin & References

Based on the Open Source dklibc/sysrepo_plugin_ietf_system project by Denis Kalashnikov.