About 100% error reporting due to pveproxy.service hooks

jzxkkk

New Member
Sep 9, 2024
8
0
1
Hello, I performed clean installs using pve8 and pve9 respectively. However, on both pve9 ISOs, the newly installed machines experience errors every time they boot. The error message displayed by pvenode task list is:
│ UPID:pve:00000514:0000071C:6A1B0E8A:aptupdate::root@pam: │ aptupdate │ │ root@pam │ 2026-05-31 00:21:30 │ 2026-05-31 00:22:24 │ ERROR |


The root cause I found is that the line `ExecStartPost=-sh -c '[ ! -e /var/log/pveam.log ] && /usr/bin/pveupdate'` was added to pveproxy.service. I would like to understand why this line was added. Adding this line results in the system executing this command after booting and then consistently reporting an error. I didn't even have time to change the source or fill in the subscription information, and I'm already expected to receive this error?

Will this issue be fixed later, or will it remain a feature without modification?

The content of pveproxy.service in pve8 is:

[Unit]
Description=PVE API Proxy Server
ConditionPathExists=/usr/bin/pveproxy
Wants=pve-cluster.service
Wants=pvedaemon.service
Wants=ssh.service
Wants=pve-storage.target
After=pve-storage.target
After=pve-cluster.service
After=pvedaemon.service
After=ssh.service

[Service]
ExecStartPre=-/usr/bin/pvecm updatecerts --silent
ExecStart=/usr/bin/pveproxy start
ExecStop=/usr/bin/pveproxy stop
ExecReload=/usr/bin/pveproxy restart
PIDFile=/run/pveproxy/pveproxy.pid
Type=forking
Restart=on-failure

[Install]
WantedBy=multi-user.target
The content of pveproxy.service of pve9 is:
[Unit]
Description=PVE API Proxy Server
ConditionPathExists=/usr/bin/pveproxy
Wants=pve-cluster.service
Wants=pvedaemon.service
Wants=ssh.service
Wants=pve-storage.target
After=pve-storage.target
After=pve-cluster.service
After=pvedaemon.service
After=ssh.service

[Service]
ExecStartPre=-/usr/bin/pvecm updatecerts --silent
ExecStart=/usr/bin/pveproxy start
ExecStartPost=-sh -c '[ ! -e /var/log/pveam.log ] && /usr/bin/pveupdate'
ExecStop=/usr/bin/pveproxy stop
ExecReload=/usr/bin/pveproxy restart
PIDFile=/run/pveproxy/pveproxy.pid
Type=forking
Restart=on-failure

[Install]
WantedBy=multi-user.target
 
Last edited:
I believe that is supposed to update the available packages. PVE also does that on a periodic basis. What happens if you do "apt update" from the command line? What error do you get?
I know its purpose is to update software. However, I think the timing is terrible. A freshly installed system will automatically update the moment pveproxy.service starts, leaving no time to change software sources or enter subscription information. This will almost certainly trigger an error. I believe this negatively impacts the user experience.
 
I know its purpose is to update software.
No.

Its purpose is to update the APT package repository information, for reporting to the admin if there are updates available. The actual installation of the available upgrades is not part of the pveupdate (or apt update) step.
 
  • Like
Reactions: gfngfn256