I have verified the fix using systemd 255.4-1ubuntu3.3 from noble-
proposed.

In a new container, I can see the issue at first:

nr@six:~$ lxc launch ubuntu:noble lp2055239
Launching lp2055239
nr@six:~$ lxc exec lp2055239 bash
root@lp2055239:~# systemctl enable somethingthatdefinitelydoesnotexist.service
Failed to enable unit: Unit file somethingthatdefinitelydoesnotexist.service 
does not exist.
root@lp2055239:~# systemctl status systemd-resolved.service
Warning: The unit file, source configuration file or drop-ins of 
systemd-resolved.service changed on disk. Run>
● systemd-resolved.service - Network Name Resolution
     Loaded: loaded (/usr/lib/systemd/system/systemd-resolved.service; enabled; 
preset: enabled)
     Active: active (running) since Thu 2024-08-08 13:34:53 UTC; 43s ago
       Docs: man:systemd-resolved.service(8)
             man:org.freedesktop.resolve1(5)
             
https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
             
https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
   Main PID: 176 (systemd-resolve)
     Status: "Processing requests..."
      Tasks: 1 (limit: 18947)
     Memory: 2.6M (peak: 3.3M)
        CPU: 168ms
     CGroup: /system.slice/systemd-resolved.service
             └─176 /usr/lib/systemd/systemd-resolved

Aug 08 13:34:52 lp2055239 systemd[1]: Starting systemd-resolved.service - 
Network Name Resolution...
Aug 08 13:34:52 lp2055239 systemd-resolved[176]: Positive Trust Anchors:
Aug 08 13:34:52 lp2055239 systemd-resolved[176]: . IN DS 20326 8 2 
e06d44b80b8f1d39a95c0b0d7c65d08458e880409bb>
Aug 08 13:34:52 lp2055239 systemd-resolved[176]: Negative trust anchors: 
home.arpa 10.in-addr.arpa 16.172.in-a>
Aug 08 13:34:53 lp2055239 systemd-resolved[176]: Using system hostname 
'lp2055239'.
Aug 08 13:34:53 lp2055239 systemd[1]: Started systemd-resolved.service - 
Network Name Resolution.
root@lp2055239:~# apt update
Warning: The unit file, source configuration file or drop-ins of 
apt-news.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Warning: The unit file, source configuration file or drop-ins of 
esm-cache.service changed on disk. Run 'systemctl daemon-reload' to reload 
units.
Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
Get:2 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
Get:3 http://security.ubuntu.com/ubuntu noble-security InRelease [126 kB]
Get:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease [126 kB]
Get:5 http://archive.ubuntu.com/ubuntu noble/universe amd64 Packages [15.0 MB]
0% [5 Packages 8229 kB/15.0 MB 55%]^C            

Then, I enabled noble-proposed, upgraded systemd, and the issue was gone:
                 
root@lp2055239:~# cat > /etc/apt/sources.list.d/noble-proposed.sources << EOF
> Types: deb
URIs: http://us.archive.ubuntu.com/ubuntu/
Suites: noble-proposed
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg
> EOF
root@lp2055239:~# apt update

... SNIP ...

root@lp2055239:~# apt policy systemd
systemd:
  Installed: 255.4-1ubuntu8.2
  Candidate: 255.4-1ubuntu8.2
  Version table:
     255.4-1ubuntu8.3 100
        100 http://us.archive.ubuntu.com/ubuntu noble-proposed/main amd64 
Packages
 *** 255.4-1ubuntu8.2 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     255.4-1ubuntu8 500
        500 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
root@lp2055239:~# apt install systemd -t noble-proposed

... SNIP ...

root@lp2055239:~# apt policy systemd
systemd:
  Installed: 255.4-1ubuntu8.3
  Candidate: 255.4-1ubuntu8.3
  Version table:
 *** 255.4-1ubuntu8.3 100
        100 http://us.archive.ubuntu.com/ubuntu noble-proposed/main amd64 
Packages
        100 /var/lib/dpkg/status
     255.4-1ubuntu8.2 500
        500 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages
     255.4-1ubuntu8 500
        500 http://archive.ubuntu.com/ubuntu noble/main amd64 Packages
root@lp2055239:~# systemctl enable somethingthatdefinitelydoesnotexist.service
Failed to enable unit: Unit file somethingthatdefinitelydoesnotexist.service 
does not exist.
root@lp2055239:~# systemctl status systemd-resolved.service
● systemd-resolved.service - Network Name Resolution
     Loaded: loaded (/usr/lib/systemd/system/systemd-resolved.service; enabled; 
preset: enabled)
     Active: active (running) since Thu 2024-08-08 13:37:39 UTC; 12s ago
       Docs: man:systemd-resolved.service(8)
             man:org.freedesktop.resolve1(5)
             
https://www.freedesktop.org/wiki/Software/systemd/writing-network-configuration-managers
             
https://www.freedesktop.org/wiki/Software/systemd/writing-resolver-clients
   Main PID: 1681 (systemd-resolve)
     Status: "Processing requests..."
      Tasks: 1 (limit: 18947)
     Memory: 2.6M (peak: 3.3M)
        CPU: 102ms
     CGroup: /system.slice/systemd-resolved.service
             └─1681 /usr/lib/systemd/systemd-resolved

Aug 08 13:37:38 lp2055239 systemd[1]: Starting systemd-resolved.service - 
Network Name Resolution...
Aug 08 13:37:39 lp2055239 systemd-resolved[1681]: Positive Trust Anchors:
Aug 08 13:37:39 lp2055239 systemd-resolved[1681]: . IN DS 20326 8 2 
e06d44b80b8f1d39a95c0b0d7c65d08458e880409b>
Aug 08 13:37:39 lp2055239 systemd-resolved[1681]: Negative trust anchors: 
home.arpa 10.in-addr.arpa 16.172.in->
Aug 08 13:37:39 lp2055239 systemd-resolved[1681]: Using system hostname 
'lp2055239'.
Aug 08 13:37:39 lp2055239 systemd[1]: Started systemd-resolved.service - 
Network Name Resolution.
root@lp2055239:~# apt update
Hit:1 http://us.archive.ubuntu.com/ubuntu noble-proposed InRelease
Hit:2 http://archive.ubuntu.com/ubuntu noble InRelease                          
                           
Hit:3 http://security.ubuntu.com/ubuntu noble-security InRelease             
Hit:4 http://archive.ubuntu.com/ubuntu noble-updates InRelease
Hit:5 http://archive.ubuntu.com/ubuntu noble-backports InRelease
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
5 packages can be upgraded. Run 'apt list --upgradable' to see them.


** Tags removed: verification-needed verification-needed-noble
** Tags added: verification-done verification-done-noble

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to systemd in Ubuntu.
https://bugs.launchpad.net/bugs/2055239

Title:
  Warning: The unit file, source configuration file or drop-ins of {apt-
  news,esm-cache}.service changed on disk. Run 'systemctl daemon-reload'
  to reload units.

Status in snapd:
  New
Status in systemd package in Ubuntu:
  Fix Released
Status in ubuntu-advantage-tools package in Ubuntu:
  Invalid
Status in systemd source package in Noble:
  Fix Committed
Status in ubuntu-advantage-tools source package in Noble:
  Invalid

Bug description:
  [Impact]

  systemd may incorrectly mark units as needing a daemon reload,
  therefore unnecessarily printing the warning that a daemon-reload is
  needed for the changes to take effect. This is misleading to users,
  and particularly visible in cases like running apt update, since there
  is an apt hook (/etc/apt/apt.conf.d/20apt-esm-hook.conf) that starts
  two systemd services.

  [Test Plan]

  This bug can be triggered by running systemctl enable/disable on a 
non-existent unit. After that, calling systemctl start/status/etc. will show a 
false warning
  that the unit changed on disk. Hence, to test, simply:

  $ systemctl enable somethingthatdefinitelydoesnotexist.service
  $ systemctl status systemd-resolved.service 
  $ apt update

  On an effected system, warnings will be shown when calling both
  commands after the "enable non-existent unit" step.

  [Where problems could occur]

  This patch fixes a previous commit by ensuring that the
  manager->unit_file_state_outdated flag is set *only* when some
  modifications succeeded, but the overall operation failed. In cases
  where everything fails, it is not necessary to set the flag.

  Since the patch is restricted to this area, any regressions from this
  patch would most likely also be related to the NeedDaemonReload
  property of units.

  [Other information]

  The patch is from upstream:
  
https://github.com/systemd/systemd/pull/32610/commits/d69cba3bfffc7b1e3197e2a34b459db13b1e1cb7#diff-84bbf3361da4139a5620a035ebd24f50a0e4d4ece7952dc2d8b4325e6ebdf6e0L2320

  [Original Description]

  I recently started seeing the following warning messages when I run
  `apt update`.

  $ sudo apt update
  Warning: The unit file, source configuration file or drop-ins of 
apt-news.service changed on disk. Run 'systemctl daemon-reload' to reload units.
  Warning: The unit file, source configuration file or drop-ins of 
esm-cache.service changed on disk. Run 'systemctl daemon-reload' to reload 
units.
  ...

  apt-news.service for example is in /lib/systemd/system/apt-
  news.service and it's a static file managed by the package. Does the
  package maintenance script call systemd related hooks to reload the
  config whenever the package gets updated?

  $ systemctl cat apt-news.service
  # /usr/lib/systemd/system/apt-news.service
  # APT News is hosted at https://motd.ubuntu.com/aptnews.json and can include
  # timely information related to apt updates available to your system.
  ...

  $ dpkg -S /lib/systemd/system/apt-news.service
  ubuntu-pro-client: /lib/systemd/system/apt-news.service

  ProblemType: BugDistroRelease: Ubuntu 24.04
  Package: ubuntu-pro-client 31.1
  ProcVersionSignature: Ubuntu 6.6.0-14.14-generic 6.6.3
  Uname: Linux 6.6.0-14-generic x86_64
  NonfreeKernelModules: zfs
  ApportVersion: 2.28.0-0ubuntu1
  Architecture: amd64
  CasperMD5CheckResult: pass
  CurrentDesktop: ubuntu:GNOME
  Date: Wed Feb 28 13:06:35 2024
  InstallationDate: Installed on 2024-01-08 (51 days ago)
  InstallationMedia: Ubuntu 24.04 LTS "Noble Numbat" - Daily amd64 (20240104)
  ProcEnviron:
   LANG=en_US.UTF-8
   PATH=(custom, no user)
   SHELL=/bin/bash
   TERM=xterm-256color
   XDG_RUNTIME_DIR=<set>SourcePackage: ubuntu-advantage-tools
  UpgradeStatus: No upgrade log present (probably fresh install)
  apparmor_logs.txt:

  cloud-id.txt-error:
   Failed running command 'cloud-id' [exit(2)]. Message: REDACTED config part 
/etc/cloud/cloud.cfg.d/99-installer.cfg, insufficient permissions
   REDACTED config part /etc/cloud/cloud.cfg.d/90-installer-network.cfg, 
insufficient permissions
   REDACTED config part /etc/cloud/cloud.cfg.d/99-installer.cfg, insufficient 
permissions
   REDACTED config part /etc/cloud/cloud.cfg.d/90-installer-network.cfg, 
insufficient permissions
  livepatch-status.txt-error: Invalid command specified 
'/snap/bin/canonical-livepatch status'.
  uaclient.conf:
   contract_url: https://contracts.canonical.com
   log_level: debug

To manage notifications about this bug go to:
https://bugs.launchpad.net/snapd/+bug/2055239/+subscriptions


-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to