Description

How are those different files used during commit operation on devices running JUNOS software:

  • /var/db/juniper.db
  • /var/db/juniper.data
  • /config/juniper.conf+

Solution

Each of these files plays a different role in the commit process:

  • /var/db/juniper.db is the candidate config file (binary version)
  • /var/db/juniper.data is the committed config file (binary version)
  • /config/juniper.conf+  is the transitional candidate config file during a commit.

The Management Daemon (mgd) takes /var/db/juniper.db , makes a text version of it ( /config/juniper.conf+ ). If none of the daemons complain about the config changes, the juniper.conf+ will become juniper.conf while the old juniper.conf becomes juniper.conf.1.gz (and the other juniper.conf.n.gz files get incrementally renamed).

In addition, the /var/db/juniper.data file (the binary version of the commited config changes) will updated with the juniper.conf+ info.

You should not normally see a /config/juniper.conf+ file if a commit succeeds. This file would only be present when a commit fails (left intentionally to help debug why the commit failed).

Former Article Id

82

Modification History

2020-06-08: Article reviewed for accuracy; no changes required