Why do lines with "c-n-f Metadata" appear in the output of `sudo apt update`?

Solution 1:

The Ubuntu (21.04) package command-not-found contains /etc/apt/apt.conf.d/50command-not-found which makes apt(8) check for the c-n-f Metadata entries in the repositories when updating.

If this is installed, bash(1) & zsh(1) shells will produce a suggestion along with the error message for missing commands, e.g.:

user@ubuntu:~$ rogue
Command 'rogue' not found, but can be installed with:
sudo apt install bsdgames-nonfree
user@ubuntu:~$ 

Ubuntu's bash(1) global config file /etc/bash.bashrc checks for command-not-found and loads handler routines for it if present.

The downloaded commands are stored in /var/lib/apt/lists/*_cnf_Commands (as mentioned by kulfy)
The aggregated data is stored in /var/lib/command-not-found/ in SQLite/json.